@import url('https://fonts.googleapis.com/css2?family=Grand+Hotel&family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap');
@layer theme, base, clerk, components, utilities;
@font-face{font-family:Poppins;src:url('../fonts/Poppins-Regular.ttf') format('truetype');font-weight:400}
@font-face{font-family:Poppins;src:url('../fonts/Poppins-SemiBold.ttf') format('truetype');font-weight:600}
@font-face{font-family:Poppins;src:url('../fonts/Poppins-Bold.ttf') format('truetype');font-weight:700}

:root{
  --background: 228 24% 7%;
  --foreground: 0 0% 97%;
  --card: 228 21% 10%;
  --card-foreground: 0 0% 97%;
  --border: 225 14% 18%;
  --muted: 226 15% 14%;
  --muted-foreground: 224 9% 62%;
  --primary: 196 100% 69%;
  --primary-foreground: 228 24% 7%;
  --accent: 334 100% 68%;
  --accent-foreground: 0 0% 100%;
  --input: 225 16% 16%;
  --ring: 196 100% 69%;
  --destructive: 0 78% 60%;
  --sidebar: 228 23% 8%;
  --sidebar-foreground: 0 0% 95%;
  --app-font-sans: Poppins, ui-sans-serif, system-ui, sans-serif;
  --app-font-mono: "SFMono-Regular", Consolas, monospace;
  --radius: 14px;
}
.dark{--background:228 24% 7%;--foreground:0 0% 97%;--card:228 21% 10%;--card-foreground:0 0% 97%;--border:225 14% 18%;--muted:226 15% 14%;--muted-foreground:224 9% 62%;--primary:196 100% 69%;--primary-foreground:228 24% 7%;--accent:334 100% 68%;--accent-foreground:0 0% 100%;--input:225 16% 16%;--ring:196 100% 69%;--destructive:0 78% 60%;--sidebar:228 23% 8%;--sidebar-foreground:0 0% 95%}

@layer base{
  *{box-sizing:border-box;border-color:hsl(var(--border))}
  html{background:hsl(var(--background));scroll-behavior:smooth}
  body{margin:0;background:hsl(var(--background));color:hsl(var(--foreground));font-family:var(--app-font-sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
  button,input,textarea{font:inherit}
  button{cursor:pointer}
}

.app-shell{min-height:100dvh;background:hsl(var(--background))}
.rail{position:fixed;z-index:30;inset:0 auto 0 0;width:56px;border-right:1px solid hsl(var(--border));background:hsl(var(--sidebar));display:flex;flex-direction:column;align-items:center;padding:16px 8px 18px}
.brand-mark{font-size:23px;font-weight:700;letter-spacing:-1.6px;color:#fff;margin-bottom:29px;text-decoration:none;display:grid;place-items:center;min-height:32px}
.brand-mark .avatar{display:block}
.rail-word{display:none}
.rail-nav{display:flex;flex-direction:column;align-items:center;gap:10px;flex:1;width:100%}
.nav-item{width:40px;height:40px;color:hsl(var(--muted-foreground));display:flex;align-items:center;justify-content:center;gap:14px;border-radius:12px;transition:background .2s,color .2s,transform .2s;position:relative;text-decoration:none}
.nav-item:hover{background:hsl(var(--muted));color:#fff;transform:translateY(-1px)}
.nav-item.active{background:transparent;color:#fff}
.nav-item .nav-dot{position:absolute;right:7px;top:6px;width:7px;height:7px;background:hsl(var(--accent));border-radius:50%;border:2px solid hsl(var(--sidebar))}
.nav-label{display:none;font-size:13px;font-weight:500}
.rail-bottom{display:flex;flex-direction:column;gap:10px;width:100%;align-items:center}
.workspace{margin-left:56px;min-height:100dvh}
.top-mobile{display:none}
.page{max-width:1200px;margin:0 auto;padding:16px 34px 70px}
.feed-layout{display:grid;grid-template-columns:382px 280px;gap:126px;justify-content:center;max-width:788px;margin:0 auto}
.feed-column{min-width:0}
.context-column{padding-top:9px;width:240px;transform:translateX(22px)}
.context-user{display:flex;align-items:center;gap:12px;margin-bottom:26px}
.avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;display:block;background:hsl(var(--muted));border:1px solid hsl(var(--border))}
.avatar-ring{padding:2px;border-radius:50%;background:linear-gradient(135deg,#ffb24b,#ef287b,#765fff);display:inline-flex}
.avatar-ring .avatar{border:2px solid hsl(var(--background))}
.avatar.small{width:32px;height:32px}.avatar.xsmall{width:25px;height:25px}
.user-meta{display:flex;flex-direction:column;min-width:0}.user-meta strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-meta span{font-size:11px;color:hsl(var(--muted-foreground))}
.link-btn{border:0;background:none;color:hsl(var(--primary));font-size:11px;font-weight:600;padding:4px 0}.link-btn:hover{color:#fff}
.surface{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:18px}
.stories{display:flex;gap:16px;width:100%;overflow-x:auto;padding:0;margin:0;scrollbar-width:none;background:transparent;border:0}.stories::-webkit-scrollbar{display:none}
.story{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:52px;color:hsl(var(--muted-foreground));font-size:9px}.story strong{font-weight:400;max-width:56px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stories .avatar.small{width:52px;height:52px}
.story-add{position:relative}.story-add:after{content:'+';position:absolute;right:-1px;bottom:12px;width:17px;height:17px;border-radius:50%;display:grid;place-items:center;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:13px;font-weight:700;border:2px solid hsl(var(--card))}
.post{margin:0 0 26px 20px;overflow:hidden}.post.surface{background:transparent;border:0;border-radius:0}.post-head{display:flex;align-items:center;justify-content:space-between;padding:0 7px 2px}.post-author{display:flex;align-items:center;gap:10px}
.post-author strong{font-size:12px}.post-author span{font-size:10px;color:hsl(var(--muted-foreground))}
.more-btn,.icon-btn{display:grid;place-items:center;border:0;background:none;color:hsl(var(--muted-foreground));padding:7px;border-radius:9px;transition:background .2s,color .2s,transform .2s}.icon-btn:hover,.more-btn:hover{background:hsl(var(--muted));color:#fff}.icon-btn:active{transform:scale(.9)}
.post-image{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:hsl(var(--muted));border-radius:6px}
.post-actions{display:flex;align-items:center;padding:7px 0 1px}.post-actions .spacer{flex:1}
.post-copy{padding:0 15px 15px;font-size:12px;line-height:1.55}.post-copy .likes{font-weight:600;margin-bottom:5px}.post-copy p{margin:0}.post-copy .caption-user{font-weight:600;margin-right:5px}.muted{color:hsl(var(--muted-foreground))}
.comment-row{display:flex;gap:9px;align-items:center;border-top:1px solid hsl(var(--border));padding:10px 15px;color:hsl(var(--muted-foreground));font-size:12px}.comment-row input{border:0;background:none;color:#fff;outline:none;flex:1;font-size:12px}.comment-row input::placeholder{color:hsl(var(--muted-foreground))}
.floating-messages{position:fixed;z-index:35;right:24px;bottom:22px;width:204px;height:48px;padding:0 15px;display:flex;align-items:center;gap:9px;border:1px solid hsl(var(--border));border-radius:25px;background:#202126;color:#fff;text-decoration:none;box-shadow:0 12px 28px rgba(0,0,0,.24)}.floating-messages strong{font-size:12px;flex:1}.floating-messages>.avatar{width:22px;height:22px}.floating-message-icon{display:grid;place-items:center;position:relative;color:#fff}.floating-message-icon i{position:absolute;right:-5px;top:-5px;width:14px;height:14px;border-radius:50%;display:grid;place-items:center;background:#f0445e;color:#fff;font-size:9px;font-style:normal;border:2px solid #202126}
.floating-messages.compact{width:48px;padding:0;justify-content:center}
.more-popover{position:fixed;z-index:70;left:7px;bottom:106px;width:216px;padding:12px 0;border-radius:14px;background:#303136;border:1px solid rgba(255,255,255,.06);box-shadow:0 20px 48px rgba(0,0,0,.35)}.more-popover a,.more-popover button{width:100%;height:41px;padding:0 18px;border:0;background:none;display:flex;align-items:center;gap:12px;text-align:left;text-decoration:none;color:#fff;font-size:12px}.more-popover a:hover,.more-popover button:hover{background:rgba(255,255,255,.06)}.more-popover hr{height:4px;margin:7px 0;border:0;background:rgba(255,255,255,.07)}
.auth-nav .auth-dot{font-size:16px;color:hsl(var(--primary))}.auth-page{min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 20%,rgba(114,221,255,.12),transparent 38%),hsl(var(--background))}
.composer{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:14px 16px;margin:0 0 20px 20px}.composer strong{font-size:12px}.composer p{font-size:10px;margin:4px 0 0}.composer-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px}.composer-modes{display:flex;border:1px solid hsl(var(--border));border-radius:9px;overflow:hidden}.composer-modes button{border:0;background:transparent;color:hsl(var(--muted-foreground));font-size:10px;padding:7px 8px;text-transform:capitalize}.composer-modes button.active{background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-weight:700}.composer-file{position:relative;overflow:hidden;white-space:nowrap}.composer-file input{position:absolute;inset:0;opacity:0;cursor:pointer}.composer-filename{grid-column:1 / -1;font-size:10px;color:hsl(var(--primary));overflow:hidden;text-overflow:ellipsis}.composer-previews{grid-column:1 / -1;display:flex;gap:7px;overflow-x:auto;padding:2px}.composer-preview{width:70px;height:70px;flex:none;background:#090b12;border-radius:8px;position:relative;overflow:hidden}.composer-preview img,.composer-preview video{display:block;width:100%;height:100%;object-fit:contain}.composer-preview button{position:absolute;z-index:1;right:3px;top:3px;width:20px;height:20px;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(0,0,0,.7);color:#fff}.composer textarea{grid-column:1 / 2;resize:vertical;min-height:38px;background:hsl(var(--muted));border:0;border-radius:10px;color:#fff;padding:9px 11px;outline:0;font-size:11px}.composer-visibility{grid-column:1 / 2;display:flex;align-items:center;gap:8px;font-size:10px;color:hsl(var(--muted-foreground))}.composer-visibility select{background:hsl(var(--muted));border:1px solid hsl(var(--border));border-radius:8px;padding:6px 8px;color:#fff;font-size:10px}.composer .send-btn{padding:0 13px;width:auto;border-radius:9px;font-size:11px}.server-post video{background:#090b12}
.context-title{font-size:11px;color:hsl(var(--muted-foreground));font-weight:600;margin-bottom:15px}.context-list{display:flex;flex-direction:column;gap:15px}.suggestion{display:flex;align-items:center;gap:10px}.suggestion .user-meta{flex:1}.footnote{font-size:10px;color:hsl(var(--muted-foreground));line-height:1.9;margin-top:34px}
.stories-sign-in{min-height:54px;display:flex;align-items:center;gap:9px;color:hsl(var(--foreground));text-decoration:none;padding:0 8px;white-space:nowrap}.stories-sign-in svg{color:hsl(var(--primary))}.stories-sign-in strong{font-size:11px}
.media-video{position:relative;width:100%;height:100%;background:#090b12;overflow:hidden;isolation:isolate}.media-video video{display:block;width:100%;height:100%;object-fit:cover}.post-image.media-video{aspect-ratio:4/5;border-radius:6px}.reel-media{position:absolute;inset:0}.media-controls{position:absolute;z-index:4;left:8px;right:8px;bottom:8px;display:flex;align-items:center;gap:5px;padding:5px;background:rgba(8,10,16,.68);border-radius:10px;opacity:0;transition:opacity .18s}.media-video:hover .media-controls,.media-video:focus-within .media-controls,.media-video:focus .media-controls{opacity:1}.media-controls button{border:0;background:transparent;color:#fff;padding:5px;display:grid;place-items:center;border-radius:6px}.media-controls button:focus-visible,.media-video:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:2px}.media-controls button:disabled{opacity:.35}.media-controls input{accent-color:hsl(var(--primary));min-width:0;flex:1}.reel-card .media-controls{bottom:10px;left:10px;right:10px}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin:0 0 25px}.eyebrow{font-size:10px;color:hsl(var(--primary));text-transform:uppercase;letter-spacing:.16em;font-weight:600}.title{font-size:31px;line-height:1.1;letter-spacing:-1.3px;margin:6px 0 0}.subtitle{font-size:12px;color:hsl(var(--muted-foreground));margin:8px 0 0}.page-tools{display:flex;gap:9px;align-items:center}
.search-box{display:flex;align-items:center;gap:10px;background:hsl(var(--muted));border:1px solid transparent;border-radius:12px;padding:11px 13px;color:hsl(var(--muted-foreground));transition:border .2s,background .2s;width:240px}.search-box:focus-within{border-color:hsl(var(--primary));background:hsl(var(--card))}.search-box input{border:0;outline:0;background:none;color:#fff;min-width:0;width:100%;font-size:12px}.search-box input::placeholder{color:hsl(var(--muted-foreground))}
.filter-tabs{display:flex;gap:7px;margin-bottom:18px}.tab{border:1px solid hsl(var(--border));background:transparent;color:hsl(var(--muted-foreground));padding:8px 13px;border-radius:999px;font-size:11px}.tab.active{background:#fff;color:hsl(var(--background));border-color:#fff}
.explore-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.explore-tile{position:relative;aspect-ratio:1;overflow:hidden;background:hsl(var(--muted));cursor:pointer}.explore-tile:nth-child(5n){grid-column:span 2;grid-row:span 2}.explore-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.explore-tile:hover img{transform:scale(1.04)}.tile-overlay{position:absolute;inset:auto 0 0;padding:24px 8px 8px;background:linear-gradient(transparent,rgba(0,0,0,.75));font-size:10px;color:#fff}
.reels-page{max-width:980px}.reels-tabs{display:flex;gap:20px;border-bottom:1px solid hsl(var(--border));margin-bottom:20px}.reels-tabs button{border:0;background:none;color:hsl(var(--muted-foreground));padding:0 0 13px;font-size:12px}.reels-tabs button.active{color:#fff;border-bottom:2px solid hsl(var(--accent))}.reels-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;justify-items:center}.reel-card{width:100%;max-width:332px;aspect-ratio:9/16;border-radius:18px;position:relative;overflow:hidden;background:hsl(var(--muted));cursor:pointer}.reel-card img{width:100%;height:100%;object-fit:cover;display:block}.reel-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.42),transparent 25%,transparent 55%,rgba(0,0,0,.8));pointer-events:none}.reel-top,.reel-bottom,.reel-side{position:absolute;z-index:2}.reel-top{inset:15px 15px auto;display:flex;justify-content:space-between}.reel-chip{font-size:11px;padding:5px 9px;background:rgba(10,12,18,.6);border-radius:999px}.reel-bottom{inset:auto 17px 17px 17px}.reel-bottom p{font-size:12px;margin:7px 0 0}.reel-side{right:12px;bottom:94px;display:flex;flex-direction:column;gap:13px;align-items:center}.reel-side button{border:0;background:none;color:#fff;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10px}.reel-side button svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.reel-side button.liked{color:#ff6c9f}
.activity-list{max-width:680px}.activity-day{font-size:11px;color:hsl(var(--muted-foreground));font-weight:600;margin:23px 0 11px}.activity-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid hsl(var(--border));font-size:12px}.activity-row p{margin:0;flex:1;line-height:1.4}.activity-row time{font-size:10px;color:hsl(var(--muted-foreground))}.activity-row .follow-btn{padding:7px 13px;border:0;border-radius:8px;background:#fff;color:hsl(var(--background));font-weight:600;font-size:10px}.activity-row .follow-btn.following{background:hsl(var(--muted));color:#fff}
.nav-count{margin-left:auto;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#ff6c9f;color:#fff;font-size:9px;font-style:normal;font-weight:700;display:grid;place-items:center}.activity-row{text-decoration:none;color:inherit}.activity-row:hover{background:hsl(var(--muted));padding-left:8px;padding-right:8px;border-radius:8px}.activity-row.unread{background:rgba(114,221,255,.07)}.notification-preferences{max-width:680px;margin-top:28px;padding:20px}.notification-preferences h2{font-size:16px;margin:0}.notification-preferences>p{font-size:12px;margin:6px 0 14px}.notification-preference{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;border-top:1px solid hsl(var(--border));padding:12px 0}.notification-preference strong,.notification-preference small{display:block}.notification-preference strong{text-transform:capitalize;font-size:12px}.notification-preference small,.push-note small{color:hsl(var(--muted-foreground));font-size:10px;margin-top:3px}.notification-preference button,.push-note button{border:1px solid hsl(var(--border));background:transparent;color:hsl(var(--muted-foreground));border-radius:7px;padding:6px 9px;font-size:10px}.notification-preference button.active,.push-note button{border-color:hsl(var(--primary));color:hsl(var(--primary))}.notification-preference button:disabled{opacity:.45}.push-note{border-top:1px solid hsl(var(--border));padding-top:13px;display:flex;align-items:center;gap:12px}.push-note small{line-height:1.4}
@media(max-width:520px){.notification-preferences{margin-left:-2px;margin-right:-2px;padding:15px}.notification-preference{grid-template-columns:1fr auto;gap:7px}.notification-preference span{grid-column:1/-1}.push-note{align-items:flex-start;flex-direction:column;gap:7px}.nav-count{position:absolute;top:4px;right:5px}.rail .nav-item{position:relative}}
.messages-page{max-width:1180px;padding-top:18px}.messages-layout{display:grid;grid-template-columns:340px 1fr;min-height:675px;overflow:hidden}.inbox{border-right:1px solid hsl(var(--border));display:flex;flex-direction:column}.inbox-header{padding:22px 20px 16px;display:flex;justify-content:space-between;align-items:center}.inbox-header h2{font-size:17px;margin:0}.message-search{margin:0 15px 12px}.inbox-list{overflow:auto}.thread{display:flex;gap:11px;padding:13px 18px;cursor:pointer;transition:background .2s}.thread:hover,.thread.selected{background:hsl(var(--muted))}.thread .user-meta{flex:1}.thread p{margin:3px 0 0;font-size:10px;color:hsl(var(--muted-foreground));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.thread time{font-size:9px;color:hsl(var(--muted-foreground))}.conversation{display:flex;flex-direction:column;min-width:0}.conversation-head{display:flex;align-items:center;gap:11px;padding:18px 22px;border-bottom:1px solid hsl(var(--border))}.conversation-head .user-meta{flex:1}.conversation-body{flex:1;padding:22px;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;overflow:auto}.bubble{max-width:65%;padding:10px 13px;border-radius:16px;background:hsl(var(--muted));font-size:12px;line-height:1.45;align-self:flex-start}.bubble.mine{align-self:flex-end;background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-bottom-right-radius:4px}.bubble:not(.mine){border-bottom-left-radius:4px}.message-composer{display:flex;align-items:center;gap:8px;padding:14px 18px;border-top:1px solid hsl(var(--border))}.message-composer input{flex:1;min-width:0;background:hsl(var(--muted));border:0;border-radius:20px;padding:10px 14px;color:#fff;outline:0;font-size:12px}.send-btn{border:0;background:hsl(var(--primary));color:hsl(var(--primary-foreground));width:34px;height:34px;border-radius:50%;display:grid;place-items:center}
.profile-page{max-width:940px}.profile-header{display:grid;grid-template-columns:150px 1fr;gap:32px;padding:21px 0 30px;border-bottom:1px solid hsl(var(--border));align-items:start}.profile-avatar{width:126px;height:126px;border-radius:50%;object-fit:cover;border:3px solid hsl(var(--background));outline:2px solid hsl(var(--accent));outline-offset:3px}.profile-name-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.profile-name-row h1{font-size:19px;margin:0}.profile-actions{display:flex;gap:8px}.outline-btn{border:1px solid hsl(var(--border));background:hsl(var(--muted));color:#fff;border-radius:8px;padding:8px 13px;font-size:11px;font-weight:600}.outline-btn:hover{background:hsl(var(--card))}.profile-stats{display:flex;gap:30px;margin:21px 0}.profile-stats strong{font-size:15px}.profile-stats span{font-size:11px;color:hsl(var(--muted-foreground));margin-left:4px}.profile-bio{font-size:12px;line-height:1.5;margin:0}.profile-link{color:hsl(var(--primary));font-size:11px;margin-top:6px}.profile-tabs{display:flex;justify-content:center;gap:50px;border-bottom:1px solid hsl(var(--border));margin-top:4px}.profile-tabs button{background:none;border:0;color:hsl(var(--muted-foreground));padding:16px 6px 13px}.profile-tabs button.active{color:#fff;border-bottom:2px solid #fff}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:4px}.profile-tile{aspect-ratio:1;overflow:hidden;cursor:pointer}.profile-tile img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.profile-tile:hover img{transform:scale(1.04)}
.settings-layout{display:grid;grid-template-columns:240px 1fr;min-height:600px}.settings-nav{border-right:1px solid hsl(var(--border));padding:20px 12px}.settings-nav button{width:100%;text-align:left;border:0;background:none;color:hsl(var(--muted-foreground));padding:12px;border-radius:9px;font-size:12px}.settings-nav button.active,.settings-nav button:hover{background:hsl(var(--muted));color:#fff}.settings-content{padding:28px 36px;max-width:680px}.settings-content h2{font-size:19px;margin:0 0 6px}.setting-group{margin-top:30px}.setting-label{font-size:11px;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid hsl(var(--border));gap:20px}.setting-row strong{font-size:12px}.setting-row p{font-size:11px;color:hsl(var(--muted-foreground));margin:4px 0 0;line-height:1.4}.toggle{width:38px;height:22px;border:0;border-radius:99px;background:hsl(var(--border));padding:2px;transition:background .2s}.toggle:after{content:'';display:block;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s}.toggle.on{background:hsl(var(--primary))}.toggle.on:after{transform:translateX(16px)}
.story-viewer{position:fixed;inset:0;z-index:80;background:rgba(25,25,25,.98);display:grid;place-items:center;padding:24px}.story-overlay-brand{position:fixed;top:12px;left:9px;color:#fff;font-size:23px;letter-spacing:-1.5px;font-weight:600;z-index:82}.story-stage{display:flex;align-items:center;gap:60px;position:relative}.story-frame{height:min(calc(100dvh - 72px),644px);aspect-ratio:9/16;max-width:calc(100vw - 48px);position:relative;border-radius:6px;overflow:hidden;background:#171925;box-shadow:0 20px 90px rgba(0,0,0,.35);flex:none}.story-frame img,.story-frame video{width:100%;height:100%;object-fit:cover;display:block}.story-frame:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.4),transparent 22%,transparent 68%,rgba(0,0,0,.52));pointer-events:none}.story-progress{position:absolute;z-index:3;top:13px;left:13px;right:13px;display:flex;gap:3px}.story-progress-segment{height:2px;background:rgba(255,255,255,.45);flex:1;border-radius:2px;overflow:hidden}.story-progress-segment i{display:block;width:var(--story-progress,0%);height:100%;background:#fff;border-radius:inherit;transition:width .1s linear}.story-viewer-head{position:absolute;z-index:3;top:26px;left:15px;right:15px;display:flex;align-items:center;gap:9px}.story-viewer-head .user-meta{flex:1}.story-viewer-head strong,.story-viewer-head span{color:#fff}.story-viewer-close{position:fixed;right:16px;top:14px;color:#fff;z-index:82}.story-tap{position:absolute;inset:0;z-index:2;display:flex}.story-tap button{border:0;background:transparent;height:100%}.story-tap .back{width:34%}.story-tap .next{width:66%}.story-reply{position:absolute;z-index:4;left:14px;right:14px;bottom:13px;display:flex;align-items:center;gap:13px;color:#fff}.story-reply input{height:38px;flex:1;min-width:0;border:1px solid rgba(255,255,255,.72);border-radius:20px;background:rgba(0,0,0,.06);padding:0 14px;color:#fff;font-size:11px;outline:0}.story-reply input::placeholder{color:#fff}.story-stage-arrow{position:absolute;z-index:5;left:-33px;width:20px;height:20px;padding:0;border:0;border-radius:50%;display:grid;place-items:center;background:#3f4042;color:#111}.story-stage-arrow.right{left:auto;right:-33px;transform:rotate(180deg)}.story-neighbor{width:145px;height:257px;border-radius:6px;overflow:hidden;position:relative;flex:none;background:#2b2b2d}.story-neighbor img{width:100%;height:100%;object-fit:cover;opacity:.75}.story-neighbor:after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.2)}.story-neighbor span{position:absolute;z-index:2;bottom:55px;left:0;right:0;color:#fff;text-align:center;font-size:12px;font-weight:600}
.dashboard-page{max-width:1120px;margin:0 auto;padding:28px 38px 24px;min-height:100dvh}.dashboard-header{max-width:838px;border-bottom:1px solid hsl(var(--border));padding-bottom:25px}.dashboard-header h1{margin:0 0 16px;font-size:21px;letter-spacing:-.5px}.dashboard-tools{display:flex;align-items:center;gap:8px}.dashboard-pill{height:36px;border:1px solid hsl(var(--border));border-radius:20px;padding:0 12px;background:transparent;color:#fff;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600}.dashboard-pill.selected{background:#2c2c2f;border-color:transparent}.dashboard-date{margin-left:auto}.account-insights{width:610px;margin:28px 0 0 151px}.account-insights h2,.content-insights h2{font-size:16px;margin:0 0 32px}.insight-block{display:grid;grid-template-columns:215px 1fr;gap:29px;margin-bottom:52px}.insight-metrics{border-right:1px solid hsl(var(--border));padding-right:29px}.insight-metrics h3{font-size:15px;margin:0 0 23px}.insight-metrics h3 span{color:hsl(var(--muted-foreground));font-size:12px}.insight-value{font-size:25px;font-weight:700;line-height:1}.insight-metrics small{display:block;font-size:10px;color:hsl(var(--muted-foreground));margin:4px 0 16px}.insight-stat{display:flex;justify-content:space-between;font-size:11px;padding:7px 0}.insight-stat.last{border-top:1px solid hsl(var(--border));margin-top:12px;padding-top:17px}.insight-chart{font-size:11px;padding-top:36px}.insight-chart>strong{font-size:11px}.insight-tabs{display:flex;gap:7px;margin:15px 0 25px}.insight-tabs button{border:0;border-radius:8px;background:#2c2c2f;color:#fff;padding:7px 10px;font-size:10px;font-weight:600}.insight-tabs button.active{background:#5b6cff}.insight-bar-line{display:grid;grid-template-columns:29px 1fr 42px;align-items:center;gap:10px}.insight-bar-line>i{height:7px;border-radius:8px;display:flex;overflow:hidden;background:#f42bd8}.insight-bar-line b{display:block;width:60%;background:#f42bd8}.insight-bar-line em{display:block;flex:1;background:#7e42f2}.insight-bar-line.single b{width:100%}.insight-bar-line strong{font-size:10px}.bar-key{display:flex;gap:21px;margin:23px 0 0 64px;color:hsl(var(--muted-foreground));font-size:10px}.bar-key span:before{content:'â€¢';margin-right:5px;color:#ec38e7;font-size:16px;line-height:0}.bar-key span+span:before{color:#7e42f2}.content-insights{width:760px;margin:28px 0 0 73px}.content-filter-row{display:flex;gap:9px}.content-empty{text-align:center;margin:57px 0 0;color:hsl(var(--muted-foreground));font-size:10px}.content-empty svg{display:block;margin:0 auto 14px;color:#e4e4e8}.content-empty strong{display:block;color:#fff;font-size:12px;margin-bottom:12px}.content-empty p{margin:0}.dashboard-footer{position:fixed;z-index:10;left:72px;right:54px;bottom:39px;text-align:center;color:hsl(var(--muted-foreground));font-size:9px;line-height:3}.dashboard-footer span{font-size:10px}
.empty-state{text-align:center;padding:70px 20px;border:1px dashed hsl(var(--border));border-radius:16px;color:hsl(var(--muted-foreground))}.empty-state svg{margin:auto auto 12px;color:hsl(var(--primary))}.empty-state strong{display:block;color:#fff;font-size:13px}.empty-state p{font-size:11px}
@media(max-width:1100px){.dashboard-page{padding-left:24px;padding-right:24px}.account-insights,.content-insights{width:auto;max-width:760px;margin-left:0}.billing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-header{max-width:none}}
@media(max-width:1000px){.feed-layout{grid-template-columns:minmax(0,640px)}.context-column{display:none}.page{padding-left:28px;padding-right:28px}}
@media(max-width:720px){.rail{display:none}.workspace{margin-left:0;padding-bottom:65px}.top-mobile{height:58px;padding:0 17px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid hsl(var(--border));position:sticky;top:0;z-index:25;background:rgba(17,18,26,.94);backdrop-filter:blur(12px)}.top-mobile .brand-mark{margin:0;font-size:20px;display:block}.top-mobile .brand-mark .avatar{display:none}.top-mobile .rail-word{display:inline}.page{padding:18px 0 40px}.feed-column{width:100%}.stories{width:auto;gap:12px;border-radius:0;border-left:0;border-right:0;margin:0 0 10px;padding-left:16px}.surface{border-radius:0;border-left:0;border-right:0}.post{margin:0 0 10px}.post-image{aspect-ratio:4/5;border-radius:0}.section-head{padding:0 17px;margin-bottom:20px}.title{font-size:27px}.page-tools{max-width:52%}.search-box{width:100%}.explore-grid{gap:3px}.reels-page{padding:18px 12px}.reels-stack{grid-template-columns:1fr;gap:12px}.reel-card{width:min(100%,calc((100dvh - 158px)*9/16));max-width:none}.messages-page{padding:0}.messages-layout{border-radius:0;border-left:0;border-right:0;min-height:calc(100dvh - 123px);grid-template-columns:1fr}.inbox{border-right:0}.conversation{display:none}.messages-layout.conversation-open .inbox{display:none}.messages-layout.conversation-open .conversation{display:flex}.mobile-back{display:grid!important}.profile-page{padding:0}.profile-header{padding:24px 17px 22px;grid-template-columns:90px 1fr;gap:18px}.profile-avatar{width:82px;height:82px}.profile-name-row{gap:10px}.profile-name-row h1{font-size:16px}.profile-actions{width:100%;margin-top:2px}.outline-btn{flex:1;padding:7px 5px}.profile-stats{gap:13px;margin:14px 0 11px}.profile-stats strong{font-size:13px}.profile-stats span{display:block;margin:0;font-size:9px}.profile-bio{font-size:11px}.profile-tabs{gap:0;justify-content:space-around}.profile-grid{gap:2px}.settings-layout{display:block;border:0}.settings-nav{border:0;padding:6px 15px;display:flex;overflow:auto;gap:4px}.settings-nav button{white-space:nowrap;width:auto}.settings-content{padding:22px 18px}.story-viewer{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}.story-frame{height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-width:100vw;border-radius:0}.story-viewer-close{right:15px;top:calc(15px + env(safe-area-inset-top))}.bottom-nav{display:flex!important}.bottom-nav a{flex:1}.floating-messages{display:none}}
.bottom-nav{display:none;position:fixed;z-index:40;inset:auto 0 0;height:65px;background:rgba(17,18,26,.97);border-top:1px solid hsl(var(--border));align-items:center;justify-content:space-around;padding-bottom:env(safe-area-inset-bottom)}.bottom-nav a{height:58px;display:grid;place-items:center;color:hsl(var(--muted-foreground));text-decoration:none}.bottom-nav a.active{color:#fff}
.mobile-back{display:none}
.profile-avatar-placeholder{display:grid;place-items:center;background:linear-gradient(145deg,hsl(var(--muted)),hsl(var(--card)));color:hsl(var(--muted-foreground))}
.avatar-placeholder{display:inline-grid;place-items:center;background:linear-gradient(145deg,hsl(var(--muted)),hsl(var(--card)));color:hsl(var(--muted-foreground));font-weight:700}
.post-actions button.saved{color:hsl(var(--accent))}
.dashboard-data-notice{max-width:640px;margin:8px 0 34px}.dashboard-data-notice p{max-width:520px}.dashboard-data-notice .outline-btn{display:inline-flex;margin-top:6px;text-decoration:none}
@media(min-width:721px){.reels-stack{grid-template-columns:repeat(auto-fit,minmax(0,332px));justify-content:center}.reel-card{min-width:0;width:332px!important;max-width:100%!important;height:auto!important;aspect-ratio:9/16!important}}
@media(max-width:720px){.story-viewer{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}.story-frame{width:min(100vw,calc((100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom))*9/16));height:min(calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom)),calc(100vw*16/9));aspect-ratio:9/16;border-radius:0}}
.discover-list{padding:0 16px 14px}.discover-list>strong{display:block;font-size:11px;margin:8px 2px}.discover-list>button{width:100%;display:flex;align-items:center;gap:10px;border:0;background:none;color:#fff;text-align:left;padding:9px 2px}.discover-list>button:hover{background:hsl(var(--muted))}.discover-list>button span{display:flex;flex-direction:column;font-size:12px}.discover-list small{font-size:10px;color:hsl(var(--muted-foreground));margin-top:2px}.discover-list p,.empty-inbox{font-size:11px;line-height:1.5;padding:12px 4px}.empty-inbox{padding:24px;text-align:center}
@media(max-width:720px){.more-popover{display:none}.story-overlay-brand{display:none}.story-stage{width:100%;height:100%;display:block}.story-stage-arrow,.story-neighbor{display:none}.story-frame{height:100dvh;max-width:100vw;width:100%;border-radius:0}.story-viewer{padding:0}.dashboard-page{padding:22px 17px 90px}.dashboard-header{padding-bottom:18px}.dashboard-header h1{font-size:19px;margin-bottom:16px}.dashboard-date{display:none}.account-insights,.content-insights{width:auto;margin:28px 0}.account-insights h2,.content-insights h2{margin-bottom:24px}.insight-block{grid-template-columns:1fr;gap:24px;margin-bottom:34px}.insight-metrics{border-right:0;border-bottom:1px solid hsl(var(--border));padding:0 0 18px}.insight-chart{padding:0}.content-filter-row{overflow:auto}.dashboard-footer{position:static;margin-top:50px;font-size:8px;line-height:2;text-align:center}.dashboard-footer span{font-size:9px}}
@media(max-width:720px){body:has(.reels-page) .top-mobile{display:none}.workspace:has(.reels-page){padding-bottom:0}.reels-page{height:100dvh;padding:0;overflow:hidden;position:relative;max-width:none}.reels-page>.section-head{display:none}.reels-tabs{position:absolute;z-index:8;top:max(14px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);margin:0;border:0;padding:7px 12px;gap:18px;border-radius:999px;background:rgba(8,10,16,.58);backdrop-filter:blur(9px)}.reels-tabs button{padding:0 0 4px;color:rgba(255,255,255,.72)}.reels-stack{display:block;height:100dvh;overflow-y:auto;overscroll-behavior-y:contain;scroll-snap-type:y mandatory;scrollbar-width:none}.reels-stack::-webkit-scrollbar{display:none}.reel-card{width:100%!important;max-width:none!important;height:100dvh!important;aspect-ratio:auto!important;border-radius:0;scroll-snap-align:start;scroll-snap-stop:always}.reel-card .media-controls{opacity:0}.reel-bottom{bottom:calc(82px + env(safe-area-inset-bottom))}.reel-side{bottom:calc(150px + env(safe-area-inset-bottom))}.reels-page>.empty-state{margin:90px 16px 0}}
.post-media-stage{position:relative;width:100%;max-width:100%;overflow:hidden;touch-action:pan-y}.post-image.natural{height:auto;max-width:100%;max-height:78vh;object-fit:contain}.carousel-arrow{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:50%;background:rgba(0,0,0,.68);color:#fff;display:grid;place-items:center}.carousel-arrow.previous{left:10px}.carousel-arrow.next{right:10px;transform:translateY(-50%) rotate(180deg)}.carousel-arrow:disabled{opacity:0;pointer-events:none}.carousel-position{position:absolute;z-index:5;right:10px;top:10px;padding:4px 8px;border-radius:999px;background:rgba(0,0,0,.68);color:#fff;font-size:10px}.media-audio{min-height:190px;padding:28px 22px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;background:linear-gradient(135deg,#161b2b,#272038);border-radius:8px}.media-audio button{width:42px;height:42px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:rgba(0,0,0,.25);color:#fff;display:grid;place-items:center}.media-audio div{min-width:0}.media-audio strong,.media-audio span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-audio strong{font-size:13px}.media-audio span{font-size:10px;color:hsl(var(--muted-foreground));margin-top:5px}.media-audio input{grid-column:1/-1;width:100%;accent-color:hsl(var(--primary))}.composer-preview audio{width:100%;height:100%}.story-frame>video{width:100%;height:100%;object-fit:cover}
.post-actions button{border:0;background:none;color:#fff;padding:6px;display:grid;place-items:center}.post-actions button:last-child{margin-left:auto}.post-actions button.liked{color:#ff4365}.comment-row button{border:0;background:none;color:hsl(var(--primary));font-size:11px;font-weight:700}.comment-row button:disabled{opacity:.35}
.billing-catalog{padding:22px;border:1px solid hsl(var(--border));border-radius:18px;margin-top:8px}.billing-catalog h2{margin:5px 0}.billing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.billing-grid article{background:hsl(var(--secondary));border:1px solid hsl(var(--border));border-radius:14px;padding:16px}.billing-grid article p{font-size:12px;color:hsl(var(--muted-foreground));min-height:48px;margin:7px 0 16px}.billing-grid article div{display:flex;align-items:center;justify-content:space-between;gap:10px}.billing-grid article span{font-weight:700}.billing-grid .send-btn{width:auto;height:32px;border-radius:9px;padding:0 12px;font-size:11px}.activity-row.unread{background:rgba(114,221,255,.07)}
.locked-post-stage{min-height:340px;padding:48px 28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;background:radial-gradient(circle at 50% 20%,rgba(255,108,159,.18),transparent 48%),linear-gradient(145deg,hsl(var(--secondary)),hsl(var(--background)))}.locked-post-stage strong{font-size:22px}.locked-post-stage p{max-width:330px;color:hsl(var(--muted-foreground));font-size:13px;line-height:1.5}.locked-post-stage .send-btn{margin-top:8px;width:auto;padding:0 18px}.creator-support-row{display:flex;gap:8px;padding:0 16px 14px}.creator-support-row .outline-btn{height:32px;padding:0 12px;font-size:11px}
@media(max-width:720px){.billing-grid{grid-template-columns:1fr}.billing-catalog{padding:16px}.billing-grid article p{min-height:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.post-image.natural{aspect-ratio:auto}
@media(max-width:720px){.composer{grid-template-columns:minmax(0,1fr);margin-left:0}.composer-controls{grid-column:1/-1;min-width:0;flex-wrap:wrap;justify-content:flex-start}.composer-modes{max-width:100%}.composer-file{flex:0 1 auto}.composer textarea,.composer-visibility{grid-column:1/-1}}
.story-progress i{overflow:hidden}.story-progress i.complete{background:#fff}.story-progress i.active{background:rgba(255,255,255,.45)}.story-progress i.active:after{content:'';display:block;width:var(--story-progress,0%);height:100%;background:#fff}
.creator-studio{min-height:100dvh;display:grid;grid-template-columns:245px minmax(0,1fr);background:#10131b;color:#f7f8fb}.studio-sidebar{position:sticky;top:0;height:100dvh;padding:30px 16px 20px;border-right:1px solid hsl(var(--border));background:#121621;display:flex;flex-direction:column}.studio-brand{color:#fff;text-decoration:none;font-size:20px;font-weight:700;letter-spacing:-.8px;margin:0 12px 34px}.studio-brand span{color:hsl(var(--primary))}.studio-sidebar nav{display:grid;gap:4px}.studio-sidebar nav a{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:10px;color:hsl(var(--muted-foreground));font-size:12px;text-decoration:none}.studio-sidebar nav a:hover,.studio-sidebar nav a.active{background:#242b3b;color:#fff}.studio-sidebar nav a.active{box-shadow:inset 3px 0 0 hsl(var(--primary))}.studio-back{margin:auto 12px 0;color:hsl(var(--primary));font-size:11px;text-decoration:none;display:flex;align-items:center;gap:4px}.studio-main{width:min(1120px,100%);padding:42px clamp(22px,5vw,68px) 75px}.studio-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:32px}.studio-heading p{margin:0 0 7px;color:hsl(var(--primary));font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.15em}.studio-heading h1{font-size:32px;letter-spacing:-1.4px;line-height:1.1;margin:0}.studio-heading>div>span{display:block;margin-top:8px;color:hsl(var(--muted-foreground));font-size:12px}.studio-refresh{border:1px solid hsl(var(--border));border-radius:9px;padding:9px 11px;background:transparent;color:#fff;font-size:11px;display:flex;align-items:center;gap:7px}.studio-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.studio-kpis article,.studio-panel{border:1px solid hsl(var(--border));border-radius:14px;background:#161b27}.studio-kpis article{padding:18px}.studio-kpis span{display:block;color:hsl(var(--muted-foreground));font-size:10px}.studio-kpis strong{display:block;font-size:24px;letter-spacing:-.7px;margin:8px 0 4px}.studio-kpis small,.studio-caption{color:hsl(var(--muted-foreground));font-size:10px}.studio-panel{padding:22px}.studio-panel h2{font-size:15px;margin:0}.studio-panel-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:17px}.studio-panel-head a{display:flex;align-items:center;color:hsl(var(--primary));font-size:11px;text-decoration:none}.studio-notice{border:1px dashed hsl(var(--border));border-radius:10px;padding:24px;color:hsl(var(--muted-foreground));font-size:12px;display:flex;align-items:center;gap:9px}.studio-notice.error{color:#ff9aaa;border-color:rgba(255,100,120,.4)}.studio-spin{animation:studio-spin 1s linear infinite}.studio-content-list{display:grid}.studio-content-row{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:11px 0;border-top:1px solid hsl(var(--border))}.studio-content-row:first-child{border-top:0}.studio-thumb{width:44px;height:44px;border-radius:7px;background:hsl(var(--muted));overflow:hidden}.studio-thumb img{width:100%;height:100%;object-fit:cover}.studio-content-row strong,.studio-content-row span{display:block;font-size:11px}.studio-content-row>div:nth-child(2) span{margin-top:4px;color:hsl(var(--muted-foreground));font-size:10px}.studio-engagement{display:flex;gap:15px;color:hsl(var(--muted-foreground))}.studio-table{min-width:640px}.studio-table-head,.studio-table article{display:grid;grid-template-columns:1.1fr 1.6fr 1fr 1fr;gap:16px;align-items:center}.studio-table-head{padding:0 0 9px;color:hsl(var(--muted-foreground));font-size:9px;text-transform:uppercase;letter-spacing:.08em}.studio-table article{border-top:1px solid hsl(var(--border));padding:14px 0;font-size:11px}.finance-table .studio-table-head,.finance-table article{grid-template-columns:.7fr 1fr 1fr 1fr}.studio-table article strong{font-size:11px}.studio-panel:has(.studio-table){overflow-x:auto}.studio-analytics>p{color:hsl(var(--muted-foreground));font-size:12px;line-height:1.65;max-width:700px;margin:12px 0 22px}.studio-payout-warning{max-width:650px}.studio-payout-warning svg{color:#ffc36a}.studio-payout-warning h2{margin-top:13px}.studio-payout-warning p{font-size:12px;color:hsl(var(--muted-foreground));line-height:1.65}.studio-settings{max-width:680px}.studio-settings>div{border-top:1px solid hsl(var(--border));padding:15px 0;display:flex;justify-content:space-between;gap:20px;font-size:11px}.studio-settings>div:first-of-type{margin-top:16px}.studio-settings span{color:hsl(var(--muted-foreground))}.studio-settings strong{font-weight:500;text-align:right}@keyframes studio-spin{to{transform:rotate(360deg)}}@media(max-width:720px){.creator-studio{display:block}.studio-sidebar{position:static;height:auto;padding:18px 14px 0;border-right:0;border-bottom:1px solid hsl(var(--border))}.studio-brand{margin:0 4px 17px}.studio-sidebar nav{display:flex;overflow-x:auto;padding-bottom:14px}.studio-sidebar nav a{white-space:nowrap;padding:8px 10px}.studio-sidebar nav a.active{box-shadow:inset 0 -2px 0 hsl(var(--primary))}.studio-back{display:none}.studio-main{padding:27px 16px 88px}.studio-heading{margin-bottom:25px}.studio-heading h1{font-size:27px}.studio-refresh{flex:none}.studio-kpis{grid-template-columns:1fr;gap:9px}.studio-kpis article{padding:15px}.studio-panel{padding:16px}.studio-content-row{grid-template-columns:40px minmax(0,1fr)}.studio-engagement{grid-column:2;gap:11px}.studio-table{min-width:0;display:grid;gap:10px}.studio-table-head{display:none}.studio-table article,.finance-table article{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:1px solid hsl(var(--border));border-radius:10px;padding:12px}.studio-table article span,.studio-table article strong{display:flex;justify-content:space-between;gap:8px}.studio-table article [data-label]:before{content:attr(data-label);color:hsl(var(--muted-foreground));font-size:9px;text-transform:uppercase}.studio-panel:has(.studio-table){overflow:visible}.studio-settings>div{display:grid;gap:5px}.studio-settings strong{text-align:left}}
.reel-side button.saved{color:hsl(var(--accent))}.reel-comment{position:absolute;z-index:4;left:13px;right:13px;bottom:82px;display:flex;gap:6px;padding:6px;background:rgba(11,13,20,.86);border:1px solid rgba(255,255,255,.18);border-radius:10px;max-width:calc(100% - 26px)}.reel-comment input{min-width:0;flex:1;border:0;background:transparent;color:#fff;outline:0;font-size:11px;padding:5px}.reel-comment input::placeholder{color:rgba(255,255,255,.72)}.reel-comment button{border:0;border-radius:7px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:10px;font-weight:700;padding:0 9px}.reel-comment button:disabled{opacity:.45}
@media(max-width:720px){.story-viewer{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}.story-frame{height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:min(100vw,calc((100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom))*9/16));max-width:100vw;border-radius:0}.reel-comment{bottom:88px;right:58px}}

@charset "UTF-8";

/* ==========================================================================
   INSTAGRAM EXPERIENCE — DARK THEME MASTER STYLESHEET
   Tailwind CSS + Shadcn Design Tokens + Instagram UI Engine
   ========================================================================== */

:root {
  --background: #000000;
  --surface: #121212;
  --border: #262626;
  --primary: #ff6b00;
  --accent: #ff3040;
  --muted-text: #a8a8a8;
  --font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

body, html {
  background-color: #000000 !important;
  color: #ffffff !important;
  font-family: var(--font-family) !important;
}

/* Dark mode overrides */
.dark, .night-mode {
  background-color: #000000 !important;
  color: #ffffff !important;
}

/* Tailwind utility classes */
.hidden { display: none !important; }
.flex { display: flex !important; }
.flex-col { flex-direction: column !important; }
.flex-row { flex-direction: row !important; }
.flex-1 { flex: 1 1 0% !important; }
.flex-shrink-0, .shrink-0 { flex-shrink: 0 !important; }
.fixed { position: fixed !important; }
.relative { position: relative !important; }
.absolute { position: absolute !important; }
.sticky { position: sticky !important; }
.inset-0 { inset: 0 !important; }
.left-0 { left: 0 !important; }
.top-0 { top: 0 !important; }
.bottom-0 { bottom: 0 !important; }
.h-full { height: 100% !important; }
.h-6 { height: 1.5rem !important; }
.w-6 { width: 1.5rem !important; }
.h-8 { height: 2rem !important; }
.w-8 { width: 2rem !important; }
.h-11 { height: 2.75rem !important; }
.w-11 { width: 2.75rem !important; }
.h-12 { height: 3rem !important; }
.w-12 { width: 3rem !important; }
.h-14 { height: 3.5rem !important; }
.w-16 { width: 4rem !important; }
.h-16 { height: 4rem !important; }
.h-24 { height: 6rem !important; }
.w-24 { width: 6rem !important; }
.w-64 { width: 16rem !important; }
.w-80 { width: 20rem !important; }
.w-full { width: 100% !important; }
.min-h-screen { min-height: 100vh !important; }
.max-w-\[630px\] { max-width: 630px !important; }
.max-w-\[935px\] { max-width: 935px !important; }
.max-w-sm { max-width: 24rem !important; }
.max-h-\[600px\] { max-height: 600px !important; }
.max-h-\[700px\] { max-height: 700px !important; }
.aspect-square { aspect-ratio: 1 / 1 !important; }
.border { border: 1px solid #262626 !important; }
.border-2 { border: 2px solid #262626 !important; }
.border-0 { border: 0 !important; }
.border-r { border-right: 1px solid #262626 !important; }
.border-b { border-bottom: 1px solid #262626 !important; }
.border-t { border-top: 1px solid #262626 !important; }
.bg-black { background-color: #000000 !important; }
.bg-\[\#0a0a0a\] { background-color: #0a0a0a !important; }
.bg-\[\#121212\] { background-color: #121212 !important; }
.bg-\[\#262626\] { background-color: #262626 !important; }
.bg-\[\#ff6b00\] { background-color: #ff6b00 !important; }
.text-white { color: #ffffff !important; }
.text-neutral-200 { color: #e5e5e5 !important; }
.text-neutral-300 { color: #d4d4d4 !important; }
.text-neutral-400 { color: #a3a3a3 !important; }
.text-neutral-500 { color: #737373 !important; }
.text-blue-500 { color: #ff6b00 !important; }
.text-\[\#ff6b00\] { color: #ff6b00 !important; }
.text-\[\#ff3040\] { color: #ff3040 !important; }
.p-0 { padding: 0 !important; }
.p-2 { padding: 0.5rem !important; }
.p-3 { padding: 0.75rem !important; }
.p-4 { padding: 1rem !important; }
.p-8 { padding: 2rem !important; }
.px-2 { padding-left: 0.5rem !important; padding-right: 0.5rem !important; }
.px-3 { padding-left: 0.75rem !important; padding-right: 0.75rem !important; }
.px-4 { padding-left: 1rem !important; padding-right: 1rem !important; }
.px-6 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
.py-1 { padding-top: 0.25rem !important; padding-bottom: 0.25rem !important; }
.py-1\.5 { padding-top: 0.375rem !important; padding-bottom: 0.375rem !important; }
.py-6 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
.py-16 { padding-top: 4rem !important; padding-bottom: 4rem !important; }
.py-20 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
.pt-1 { padding-top: 0.25rem !important; }
.pt-4 { padding-top: 1rem !important; }
.pt-6 { padding-top: 1.5rem !important; }
.pt-8 { padding-top: 2rem !important; }
.pb-8 { padding-bottom: 2rem !important; }
.pb-20 { padding-bottom: 5rem !important; }
.pl-8 { padding-left: 2rem !important; }
.mx-auto { margin-left: auto !important; margin-right: auto !important; }
.mb-0 { margin-bottom: 0 !important; }
.mb-1 { margin-bottom: 0.25rem !important; }
.mb-4 { margin-bottom: 1rem !important; }
.mb-6 { margin-bottom: 1.5rem !important; }
.mr-2 { margin-right: 0.5rem !important; }
.mt-1 { margin-top: 0.25rem !important; }
.gap-1 { gap: 0.25rem !important; }
.gap-3 { gap: 0.75rem !important; }
.gap-4 { gap: 1rem !important; }
.gap-8 { gap: 2rem !important; }
.space-y-1 > :not([hidden]) ~ :not([hidden]) { margin-top: 0.25rem !important; }
.space-y-2 > :not([hidden]) ~ :not([hidden]) { margin-top: 0.5rem !important; }
.space-y-3 > :not([hidden]) ~ :not([hidden]) { margin-top: 0.75rem !important; }
.space-y-4 > :not([hidden]) ~ :not([hidden]) { margin-top: 1rem !important; }
.space-y-6 > :not([hidden]) ~ :not([hidden]) { margin-top: 1.5rem !important; }
.space-y-8 > :not([hidden]) ~ :not([hidden]) { margin-top: 2rem !important; }
.rounded-lg { border-radius: 0.5rem !important; }
.rounded-xl { border-radius: 0.75rem !important; }
.rounded-full { border-radius: 9999px !important; }
.justify-center { justify-content: center !important; }
.justify-between { justify-content: space-between !important; }
.justify-around { justify-content: space-around !important; }
.items-center { align-items: center !important; }
.items-start { align-items: flex-start !important; }
.overflow-hidden { overflow: hidden !important; }
.overflow-x-auto { overflow-x: auto !important; }
.overflow-y-auto { overflow-y: auto !important; }
.object-cover { object-fit: cover !important; }
.font-normal { font-weight: 400 !important; }
.font-medium { font-weight: 500 !important; }
.font-semibold { font-weight: 600 !important; }
.font-bold { font-weight: 700 !important; }
.text-\[10px\] { font-size: 10px !important; }
.text-\[11px\] { font-size: 11px !important; }
.text-\[15px\] { font-size: 15px !important; }
.text-xs { font-size: 0.75rem !important; }
.text-sm { font-size: 0.875rem !important; }
.text-base { font-size: 1rem !important; }
.text-lg { font-size: 1.125rem !important; }
.text-xl { font-size: 1.25rem !important; }
.text-2xl { font-size: 1.5rem !important; }
.tracking-tight { letter-spacing: -0.025em !important; }
.tracking-wide { letter-spacing: 0.025em !important; }
.tracking-wider { letter-spacing: 0.05em !important; }
.uppercase { text-transform: uppercase !important; }
.truncate { overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
.whitespace-pre-line { white-space: pre-line !important; }
.cursor-pointer { cursor: pointer !important; }
.select-none { user-select: none !important; }
.transition { transition: all 0.15s ease-in-out !important; }
.duration-150 { transition-duration: 150ms !important; }
.duration-200 { transition-duration: 200ms !important; }
.hover\:bg-neutral-900:hover { background-color: #171717 !important; }
.hover\:bg-neutral-700:hover { background-color: #404040 !important; }
.hover\:bg-\[\#363636\]:hover { background-color: #363636 !important; }
.hover\:bg-blue-600:hover, .hover\:bg-\[\#1877f2\]:hover { background-color: #1877f2 !important; }
.hover\:text-white:hover { color: #ffffff !important; }
.hover\:underline:hover { text-decoration: underline !important; }
.hover\:scale-105:hover { transform: scale(1.05) !important; }
.hover\:scale-110:hover { transform: scale(1.1) !important; }
.z-30 { z-index: 30 !important; }
.z-40 { z-index: 40 !important; }
.grid { display: grid !important; }
.grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.col-span-3 { grid-column: span 3 / span 3 !important; }
.shadow-sm { box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.5) !important; }
.ring-2 { box-shadow: 0 0 0 2px var(--tw-ring-color, #262626) !important; }
.ring-neutral-700 { --tw-ring-color: #404040 !important; }
.ring-pink-500, .ring-\[\#e1306c\] { --tw-ring-color: #e1306c !important; }

@media (min-width: 768px) {
  .md\:flex { display: flex !important; }
  .md\:hidden { display: none !important; }
  .md\:flex-row { flex-direction: row !important; }
  .md\:items-start { align-items: flex-start !important; }
  .md\:text-left { text-align: left !important; }
  .md\:justify-start { justify-content: flex-start !important; }
  .md\:ml-64 { margin-left: 16rem !important; }
  .md\:w-36 { width: 9rem !important; }
  .md\:h-36 { height: 9rem !important; }
  .md\:gap-4 { gap: 1rem !important; }
  .md\:gap-20 { gap: 5rem !important; }
}

@media (min-width: 1024px) {
  .lg\:block { display: block !important; }
}


/**
 * Index:
 *
 * 01. BASIC
 * 02. MAIN
 * 03. HEADER
 * 04. COMMON
 * 05. PUBLISHER
 * 06. POST
 * 07. COMMENT
 * 08. BLOG
 * 09. AUTO-COMPLETE
 * 10. LIGHTBOX
 * 11. STORIES
 * 12. CHAT
 * 13. EMOJI
 * 14. REACTIONS
 * 15. RATING
 * 16. PAGE = [BASIC]
 * 17. PAGE = [404]
 * 18. PAGE = [OAUTH]
 * 19. PAGE = [INDEX]
 * 20. PAGE = [FORUMS]
 * 21. PAGE = [DIRECTORY]
 * 22. PAGE = [MESSAGES]
 * 23. PAGE = [LIVE]
 * 24. PAGE = [PROFILE]
 * 25. PAGE = [ADMIN]
 * 26. PAGE = [MARKET]
 * 27. PAGE = [MOVIES]
 * 28. PAGE = [REELS]
 * 29. TRANSLATOR
 * 30. BIG ICON
 * 31. LOADER
 * 32. POST LOADER
 * 33. ON/OFF TOGGLE
 * 34. CUSTOM RADIO/CHECKBOX TEMPLATES
 * 35. PWA INSTALL PROMPT
 * 36. EXTRAS
 * 37. OFFCANVAS
 */

/* BASIC */
/* ------------------------------- */

:root {
  --body-font-family: Poppins, Helvetica, "sans-serif";
  --body-bg-color: #f0f2f5;
  --body-bg-color-dark: #1E252B;
  --body-color: #111;
  --body-color-dark: #c1d4e3;
  --link-color: #5e72e4;
  --header-bg-color: #fff;
  --header-bg-color-dark: #262D34;
  --card-dark-color: #262D34;
  --card-dark-divider: #2e3f4d;
  --card-dark-hover: #2b3843;
  --card-dark-input: #1e252b;
  --card-dark-input-color: #eaeaea;
  --plyr-color-main: #5e72e4;
}

body {
  font-family: var(--body-font-family);
  /* 70px for header */
  padding-top: 70px;
  font-size: 15px;
  color: var(--body-color);
  background-color: var(--body-bg-color);
  position: relative;
}

body.night-mode {
  color: var(--body-color-dark);
  background-color: var(--body-bg-color-dark);
}

body.n_activated,
body.n_live {
  /* 70px for header + 50px for top bar */
  padding-top: 120px;
}

ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

a {
  color: var(--link-color);
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

pre {
  padding: 15px;
  font-size: 13px;
  word-break: break-all;
  word-wrap: break-word;
  background-color: #f7f7f7;
  border: 1px solid #dbdbdb;
  border-radius: 4px;
}

body.night-mode pre {
  color: var(--body-color-dark);
  background-color: var(--card-dark-input);
  border-color: var(--card-dark-divider);
}

/* -- */

/* MAIN */
/* ------------------------------- */

/* == Icons == */

/* header-icons */
.header-icon,
.header-icon * {
  color: #111 ! important;
  fill: #111 ! important;
}

body.night-mode .header-icon,
body.night-mode .header-icon * {
  color: #c1d4e3 ! important;
  fill: #c1d4e3 ! important;
}

.header-icon.active,
.header-icon.active *,
body.night-mode .header-icon.active,
body.night-mode .header-icon.active * {
  color: var(--link-color) ! important;
  fill: var(--link-color) ! important;
}

/* == */

/* main-icons */
.main-icon,
.main-icon *,
.x-form-tools {
  color: #5e72e4 ! important;
  fill: #5e72e4 ! important;
}

body.night-mode .main-icon,
body.night-mode .main-icon *,
body.night-mode .x-form-tools {
  color: #5e72e4 ! important;
  fill: #5e72e4 ! important;
}

/* == */

/* action-icons */
.action-icon,
.action-icon * {
  color: #111 ! important;
  fill: #111 ! important;
}

body.night-mode .action-icon,
body.night-mode .action-icon * {
  color: #c1d4e3 ! important;
  fill: #c1d4e3 ! important;
}

/* == */

/* cutom-icons */
.white-icon,
.white-icon * {
  color: #fff ! important;
  fill: #fff ! important;
}

.danger-icon,
.danger-icon * {
  color: #cb2027 ! important;
  fill: #cb2027 ! important;
}

/* == */

/* == SVG == */
.svg-container {
  display: inline-block;
}

.svg-container svg {
  width: inherit !important;
  height: inherit !important;
}

/* == */

/* == Scrollbar == */
.custom-scrollbar ::-webkit-scrollbar {
  visibility: hidden;
  height: 8px;
  width: 8px;
}

.custom-scrollbar ::-webkit-scrollbar-thumb {
  visibility: hidden;
  border-radius: 4px;
  background: #808080;
}

.custom-scrollbar:hover ::-webkit-scrollbar,
.custom-scrollbar:hover ::-webkit-scrollbar-thumb {
  visibility: visible;
}

/* == */

/* == Tooltip == */
.tooltip-inner {
  font-family: var(--body-font-family);
  white-space: nowrap;
  max-width: none;
}

/* == */

/* == Text == */
body.night-mode .text-muted {
  color: #798ea4 !important;
}

/* == */

/* == Badge == */
.badge.badge-lg {
  font-size: 100%;
}

/* == */

/* == Img-thumbnail == */
body.night-mode .img-thumbnail {
  background: var(--card-dark-color);
  border-color: var(--card-dark-divider);
}

/* == */

/* == List-group == */
.packages-permissions .list-group-item {
  border-width: 0 0 1px 0;
}

body.night-mode .list-group-item {
  background: var(--card-dark-color);
  border-color: var(--card-dark-divider);
  color: var(--body-color-dark);
}

/* == */

/* == Nav-pills == */

.nav-link {
  color: var(--link-color);
}

/* -- Custom Nav */
.nav-pills.nav-search .nav-item,
.nav-pills.nav-started .nav-item {
  margin-right: 10px;
  margin-bottom: 10px;
}

.nav-pills.nav-search .nav-item:last-child,
.nav-pills.nav-started .nav-item:last-child {
  margin-right: 0;
}

.nav-pills.nav-search .nav-link:not(.active) {
  background: #fff;
}

.nav-pills.nav-started .nav-link {
  padding-top: 15px;
  padding-bottom: 15px;
}

.nav-pills.nav-started .nav-link:not(.active) {
  background: #f3f3f3;
}

body.night-mode .nav-pills.nav-search .nav-link:not(.active),
body.night-mode .nav-pills.nav-started .nav-link:not(.active) {
  background: var(--card-dark-color);
  color: #fff;
}

body.night-mode .nav-pills.nav-search .nav-link:not(.active):hover,
body.night-mode .nav-pills.nav-started .nav-link:not(.active):hover {
  background: var(--card-dark-hover);
}

/* == */

/* == Nav-tabs == */
body.night-mode .nav-tabs {
  border-bottom-color: var(--card-dark-divider);
}

body.night-mode .nav-tabs .nav-item.show .nav-link,
body.night-mode .nav-tabs .nav-link.active {
  color: var(--body-color-dark);
  border-color: var(--card-dark-divider);
  background-color: var(--card-dark-divider);
}

body.night-mode .nav-tabs .nav-link:not(.active):hover {
  border-color: var(--card-dark-divider);
}

/* == */

/* == Dropdown == */
.dropdown {
  outline: none;
}

.dropdown-item.active,
.dropdown-item:active {
  background-color: var(--link-color);
}

.dropdown-divider {
  border-color: #f4f4f4;
  margin-left: 20px;
  margin-right: 20px;
}

.dropdown-menu {
  min-width: 260px;
  border: 0;
  box-shadow: rgb(0 0 0 / 10%) 0px 10px 15px -3px,
    rgb(0 0 0 / 10%) 0px 4px 6px -4px;
}

body.night-mode .dropdown-menu {
  color: var(--body-color-dark);
  background: var(--header-bg-color-dark);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
}

.dropdown-menu .dropdown-item {
  font-size: 15px;
  padding: 12px 26px;
}

body.night-mode .dropdown-item {
  color: var(--body-color-dark);
}

body.night-mode .dropdown-item:focus,
body.night-mode .dropdown-item:hover {
  color: var(--body-color-dark);
  background-color: var(--card-dark-hover);
}

body.night-mode .dropdown-divider {
  border-top-color: var(--card-dark-divider);
}

/* == */

/* == Modal == */
.modal {
  z-index: 99999;
}

body.night-mode .modal-content {
  background-color: var(--card-dark-color);
}

body.night-mode .modal-header,
body.night-mode .modal-footer {
  border-color: var(--card-dark-divider);
}

.modal-header.with-nav {
  padding-bottom: 0;
  border-bottom: 0;
}

/* == */

/* == Alert == */
.alert {
  padding: 16px 24px;
  border-radius: 16px;
}

.alert-link:hover {
  text-decoration: underline;
}

.alert-dismissible {
  padding-right: 72px;
}

.alert-primary {
  color: #fff;
  border-color: #7889e8;
  background-color: #7889e8;
}

.alert-primary hr {
  border-top-color: #6276e4;
}

.alert-secondary {
  color: #212529;
  border-color: #f6f7f8;
  background-color: #f6f7f8;
}

.alert-secondary hr {
  border-top-color: #e8eaed;
}

.alert-success {
  color: #fff;
  border-color: #4fd69c;
  background-color: #4fd69c;
}

.alert-success hr {
  border-top-color: #3ad190;
}

.alert-info {
  color: #fff;
  border-color: #37d5f2;
  background-color: #37d5f2;
}

.alert-info hr {
  border-top-color: #1fd0f0;
}

.alert-warning {
  color: #fff;
  border-color: #fc7c5f;
  background-color: #fc7c5f;
}

.alert-warning hr {
  border-top-color: #fc6846;
}

.alert-danger {
  color: #fff;
  border-color: #f75676;
  background-color: #f75676;
}

.alert-danger hr {
  border-top-color: #f63e62;
}

.alert-light {
  color: #fff;
  border-color: #bac1c8;
  background-color: #bac1c8;
}

.alert-light hr {
  border-top-color: #acb4bd;
}

.alert-dark {
  color: #fff;
  border-color: #45484b;
  background-color: #45484b;
}

.alert-dark hr {
  border-top-color: #393b3e;
}

/* -- Custom Alerts */
.alert-post {
  background: #f8f9fa;
  color: var(--link-color);
  font-weight: 600;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

body.night-mode .alert-post {
  background: var(--card-dark-hover);
}

.alert-chat {
  background: #f4f4f4;
  width: 75%;
  padding: 15px 25px !important;
  margin: 0 auto !important;
  color: #555;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
}

body.night-mode .alert-chat {
  background: var(--card-dark-input);
}

.alert .title {
  padding-bottom: 8px;
  margin-bottom: 10px;
  font-weight: 600;
  border-bottom: 1px solid #00000012;
}

.alert .icon {
  display: table-cell;
  vertical-align: middle;
  padding-right: 10px;
}

.alert .text {
  display: table-cell;
  vertical-align: top;
  text-align: left;
}

/* == */

/* == Buttons == */
.btn {
  font-size: 13px;
  font-weight: 600;
  padding: 1rem 2.5rem;
  white-space: nowrap;
  box-shadow: none !important;
}

.btn.focus,
.btn:focus {
  outline: 0;
  box-shadow: none;
}

.btn.disabled,
.btn:disabled {
  box-shadow: none;
}

.btn-lg,
.btn-group-lg>.btn {
  font-size: 14px;
  padding: 16px 96px;
}

.btn-md,
.btn-group-md>.btn {
  font-size: 12px;
  padding: 0.75rem 1.85rem;
}

.btn-sm,
.btn-group-sm>.btn {
  font-size: 11px;
  padding: 8px 26px;
}

.btn-icon {
  padding: 12px 14px;
}

.btn-lg.btn-icon {
  padding: 19px 22px;
}

.btn-md.btn-icon {
  padding: 20px;
}

.btn-sm.btn-icon {
  padding: 5px 8px;
}

.btn-primary,
.btn-primary.disabled,
.btn-primary:disabled,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {
  color: #fff;
  border-color: #5e72e4;
  background-color: #5e72e4;
}

.btn-primary {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08);
}

.btn-primary:hover {
  color: #fff;
  border-color: #4d61cf;
  background-color: #4d61cf;
}

.btn-primary.focus,
.btn-primary:focus {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08),
    0 0 0 0 rgba(94, 114, 228, 0.5);
}

.btn-primary:not(:disabled):not(.disabled).active:focus,
.btn-primary:not(:disabled):not(.disabled):active:focus,
.show>.btn-primary.dropdown-toggle:focus {
  box-shadow: none;
}

.btn-secondary,
.btn-secondary.disabled,
.btn-secondary:disabled,
.btn-secondary:not(:disabled):not(.disabled).active,
.btn-secondary:not(:disabled):not(.disabled):active,
.show>.btn-secondary.dropdown-toggle {
  color: #212529;
  border-color: #f7fafc;
  background-color: #f7fafc;
}

.btn-secondary {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08);
}

.btn-secondary:hover {
  color: #212529;
  border-color: #f1f4f6;
  background-color: #f1f4f6;
}

.btn-secondary.focus,
.btn-secondary:focus {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08),
    0 0 0 0 rgba(247, 250, 252, 0.5);
}

.btn-secondary:not(:disabled):not(.disabled).active:focus,
.btn-secondary:not(:disabled):not(.disabled):active:focus,
.show>.btn-secondary.dropdown-toggle:focus {
  box-shadow: none;
}

body.night-mode .btn-secondary {
  color: #f1f1f1;
  border-color: #262d34;
  background-color: #262d34;
}

.btn-success,
.btn-success.disabled,
.btn-success:disabled,
.btn-success:not(:disabled):not(.disabled).active,
.btn-success:not(:disabled):not(.disabled):active,
.show>.btn-success.dropdown-toggle {
  color: #fff;
  border-color: #2dce89;
  background-color: #2dce89;
}

.btn-success {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08);
}

.btn-success:hover {
  color: #fff;
  border-color: #2bc080;
  background-color: #2bc080;
}

.btn-success.focus,
.btn-success:focus {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08),
    0 0 0 0 rgba(45, 206, 137, 0.5);
}

.btn-success:not(:disabled):not(.disabled).active:focus,
.btn-success:not(:disabled):not(.disabled):active:focus,
.show>.btn-success.dropdown-toggle:focus {
  box-shadow: none;
}

.btn-info,
.btn-info.disabled,
.btn-info:disabled,
.btn-info:not(:disabled):not(.disabled).active,
.btn-info:not(:disabled):not(.disabled):active,
.show>.btn-info.dropdown-toggle {
  color: #fff;
  border-color: #11cdef;
  background-color: #11cdef;
}

.btn-info {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08);
}

.btn-info:hover {
  color: #fff;
  border-color: #10bede;
  background-color: #10bede;
}

.btn-info.focus,
.btn-info:focus {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08),
    0 0 0 0 rgba(17, 205, 239, 0.5);
}

.btn-info:not(:disabled):not(.disabled).active:focus,
.btn-info:not(:disabled):not(.disabled):active:focus,
.show>.btn-info.dropdown-toggle:focus {
  box-shadow: none;
}

.btn-warning,
.btn-warning.disabled,
.btn-warning:disabled,
.btn-warning:not(:disabled):not(.disabled).active,
.btn-warning:not(:disabled):not(.disabled):active,
.show>.btn-warning.dropdown-toggle {
  color: #fff;
  border-color: #fb6340;
  background-color: #fb6340;
}

.btn-warning {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08);
}

.btn-warning:hover {
  color: #fff;
  border-color: #f0603f;
  background-color: #f0603f;
}

.btn-warning.focus,
.btn-warning:focus {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08),
    0 0 0 0 rgba(251, 99, 64, 0.5);
}

.btn-warning:not(:disabled):not(.disabled).active:focus,
.btn-warning:not(:disabled):not(.disabled):active:focus,
.show>.btn-warning.dropdown-toggle:focus {
  box-shadow: none;
}

.btn-danger,
.btn-danger.disabled,
.btn-danger:disabled,
.btn-danger:not(:disabled):not(.disabled).active,
.btn-danger:not(:disabled):not(.disabled):active,
.show>.btn-danger.dropdown-toggle {
  color: #fff;
  border-color: #f5365c;
  background-color: #f5365c;
}

.btn-danger {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08);
}

.btn-danger:hover {
  color: #fff;
  border-color: #eb3357;
  background-color: #eb3357;
}

.btn-danger.focus,
.btn-danger:focus {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08),
    0 0 0 0 rgba(245, 54, 92, 0.5);
}

.btn-danger:not(:disabled):not(.disabled).active:focus,
.btn-danger:not(:disabled):not(.disabled):active:focus,
.show>.btn-danger.dropdown-toggle:focus {
  box-shadow: none;
}

.btn-light,
.btn-light.disabled,
.btn-light:disabled,
.btn-light:not(:disabled):not(.disabled).active,
.btn-light:not(:disabled):not(.disabled):active,
.show>.btn-light.dropdown-toggle {
  color: #363853;
  border-color: #f2f2f2;
  background-color: #f2f2f2;
}

.btn-light {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08);
}

.btn-light:hover {
  color: #fff;
  border-color: #a5adb4;
  background-color: #a5adb4;
}

.btn-light.focus,
.btn-light:focus {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08),
    0 0 0 0 rgba(173, 181, 189, 0.5);
}

.btn-light:not(:disabled):not(.disabled).active:focus,
.btn-light:not(:disabled):not(.disabled):active:focus,
.show>.btn-light.dropdown-toggle:focus {
  box-shadow: none;
}

.btn-dark,
.btn-dark.disabled,
.btn-dark:disabled,
.btn-dark:not(:disabled):not(.disabled).active,
.btn-dark:not(:disabled):not(.disabled):active,
.show>.btn-dark.dropdown-toggle {
  color: #fff;
  border-color: #212529;
  background-color: #212529;
}

.btn-dark {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08);
}

.btn-dark:hover {
  color: #fff;
  border-color: #212529;
  background-color: #212529;
}

.btn-dark.focus,
.btn-dark:focus {
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08),
    0 0 0 0 rgba(33, 37, 41, 0.5);
}

.btn-dark:not(:disabled):not(.disabled).active:focus,
.btn-dark:not(:disabled):not(.disabled):active:focus,
.show>.btn-dark.dropdown-toggle:focus {
  box-shadow: none;
}

.btn-link {
  font-weight: 400;
  color: var(--link-color);
  background-color: transparent;
}

.btn-link:hover {
  text-decoration: none;
  color: #233dd2;
  border-color: transparent;
  background-color: transparent;
}

.btn-link.focus,
.btn-link:focus {
  text-decoration: none;
  border-color: transparent;
  box-shadow: none;
}

.btn-link.disabled,
.btn-link:disabled {
  pointer-events: none;
  color: #8898aa;
}

.btn-outline-primary {
  color: #5e72e4;
  border-color: #5e72e4;
  background-color: transparent;
  background-image: none;
}

.btn-outline-primary:hover {
  color: #fff;
  border-color: #5e72e4;
  background-color: #5e72e4;
}

.btn-outline-primary.focus,
.btn-outline-primary:focus {
  box-shadow: 0 0 0 0 rgba(94, 114, 228, 0.5);
}

.btn-outline-primary.disabled,
.btn-outline-primary:disabled {
  color: #5e72e4;
  background-color: transparent;
}

.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.show>.btn-outline-primary.dropdown-toggle {
  color: #fff;
  border-color: #5e72e4;
  background-color: #5e72e4;
}

.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(94, 114, 228, 0.5);
}

.btn-outline-secondary {
  color: #f7fafc;
  border-color: #f7fafc;
  background-color: transparent;
  background-image: none;
}

.btn-outline-secondary:hover {
  color: #212529;
  border-color: #f7fafc;
  background-color: #f7fafc;
}

.btn-outline-secondary.focus,
.btn-outline-secondary:focus {
  box-shadow: 0 0 0 0 rgba(247, 250, 252, 0.5);
}

.btn-outline-secondary.disabled,
.btn-outline-secondary:disabled {
  color: #f7fafc;
  background-color: transparent;
}

.btn-outline-secondary:not(:disabled):not(.disabled).active,
.btn-outline-secondary:not(:disabled):not(.disabled):active,
.show>.btn-outline-secondary.dropdown-toggle {
  color: #212529;
  border-color: #f7fafc;
  background-color: #f7fafc;
}

.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(247, 250, 252, 0.5);
}

.btn-outline-success {
  color: #2dce89;
  border-color: #2dce89;
  background-color: transparent;
  background-image: none;
}

.btn-outline-success:hover {
  color: #fff;
  border-color: #2dce89;
  background-color: #2dce89;
}

.btn-outline-success.focus,
.btn-outline-success:focus {
  box-shadow: 0 0 0 0 rgba(45, 206, 137, 0.5);
}

.btn-outline-success.disabled,
.btn-outline-success:disabled {
  color: #2dce89;
  background-color: transparent;
}

.btn-outline-success:not(:disabled):not(.disabled).active,
.btn-outline-success:not(:disabled):not(.disabled):active,
.show>.btn-outline-success.dropdown-toggle {
  color: #fff;
  border-color: #2dce89;
  background-color: #2dce89;
}

.btn-outline-success:not(:disabled):not(.disabled).active:focus,
.btn-outline-success:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(45, 206, 137, 0.5);
}

.btn-outline-info {
  color: #11cdef;
  border-color: #11cdef;
  background-color: transparent;
  background-image: none;
}

.btn-outline-info:hover {
  color: #fff;
  border-color: #11cdef;
  background-color: #11cdef;
}

.btn-outline-info.focus,
.btn-outline-info:focus {
  box-shadow: 0 0 0 0 rgba(17, 205, 239, 0.5);
}

.btn-outline-info.disabled,
.btn-outline-info:disabled {
  color: #11cdef;
  background-color: transparent;
}

.btn-outline-info:not(:disabled):not(.disabled).active,
.btn-outline-info:not(:disabled):not(.disabled):active,
.show>.btn-outline-info.dropdown-toggle {
  color: #fff;
  border-color: #11cdef;
  background-color: #11cdef;
}

.btn-outline-info:not(:disabled):not(.disabled).active:focus,
.btn-outline-info:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(17, 205, 239, 0.5);
}

.btn-outline-warning {
  color: #fb6340;
  border-color: #fb6340;
  background-color: transparent;
  background-image: none;
}

.btn-outline-warning:hover {
  color: #fff;
  border-color: #fb6340;
  background-color: #fb6340;
}

.btn-outline-warning.focus,
.btn-outline-warning:focus {
  box-shadow: 0 0 0 0 rgba(251, 99, 64, 0.5);
}

.btn-outline-warning.disabled,
.btn-outline-warning:disabled {
  color: #fb6340;
  background-color: transparent;
}

.btn-outline-warning:not(:disabled):not(.disabled).active,
.btn-outline-warning:not(:disabled):not(.disabled):active,
.show>.btn-outline-warning.dropdown-toggle {
  color: #fff;
  border-color: #fb6340;
  background-color: #fb6340;
}

.btn-outline-warning:not(:disabled):not(.disabled).active:focus,
.btn-outline-warning:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(251, 99, 64, 0.5);
}

.btn-outline-danger {
  color: #f5365c;
  border-color: #f5365c;
  background-color: transparent;
  background-image: none;
}

.btn-outline-danger:hover {
  color: #fff;
  border-color: #f5365c;
  background-color: #f5365c;
}

.btn-outline-danger.focus,
.btn-outline-danger:focus {
  box-shadow: 0 0 0 0 rgba(245, 54, 92, 0.5);
}

.btn-outline-danger.disabled,
.btn-outline-danger:disabled {
  color: #f5365c;
  background-color: transparent;
}

.btn-outline-danger:not(:disabled):not(.disabled).active,
.btn-outline-danger:not(:disabled):not(.disabled):active,
.show>.btn-outline-danger.dropdown-toggle {
  color: #fff;
  border-color: #f5365c;
  background-color: #f5365c;
}

.btn-outline-danger:not(:disabled):not(.disabled).active:focus,
.btn-outline-danger:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(245, 54, 92, 0.5);
}

.btn-outline-light {
  color: #adb5bd;
  border-color: #adb5bd;
  background-color: transparent;
  background-image: none;
}

.btn-outline-light:hover {
  color: #fff;
  border-color: #adb5bd;
  background-color: #adb5bd;
}

.btn-outline-light.focus,
.btn-outline-light:focus {
  box-shadow: 0 0 0 0 rgba(173, 181, 189, 0.5);
}

.btn-outline-light.disabled,
.btn-outline-light:disabled {
  color: #adb5bd;
  background-color: transparent;
}

.btn-outline-light:not(:disabled):not(.disabled).active,
.btn-outline-light:not(:disabled):not(.disabled):active,
.show>.btn-outline-light.dropdown-toggle {
  color: #fff;
  border-color: #adb5bd;
  background-color: #adb5bd;
}

.btn-outline-light:not(:disabled):not(.disabled).active:focus,
.btn-outline-light:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(173, 181, 189, 0.5);
}

.btn-outline-dark {
  color: #212529;
  border-color: #212529;
  background-color: transparent;
  background-image: none;
}

.btn-outline-dark:hover {
  color: #fff;
  border-color: #212529;
  background-color: #212529;
}

.btn-outline-dark.focus,
.btn-outline-dark:focus {
  box-shadow: 0 0 0 0 rgba(33, 37, 41, 0.5);
}

.btn-outline-dark.disabled,
.btn-outline-dark:disabled {
  color: #212529;
  background-color: transparent;
}

.btn-outline-dark:not(:disabled):not(.disabled).active,
.btn-outline-dark:not(:disabled):not(.disabled):active,
.show>.btn-outline-dark.dropdown-toggle {
  color: #fff;
  border-color: #212529;
  background-color: #212529;
}

.btn-outline-dark:not(:disabled):not(.disabled).active:focus,
.btn-outline-dark:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(33, 37, 41, 0.5);
}

/* -- Custom Buttons */
.btn-rounded {
  border: 0 !important;
  border-radius: 50%;
}

.btn-delete:hover {
  color: #fff;
  border-color: #eb3357;
  background-color: #eb3357;
}

.btn-delete:hover .fa:before {
  content: "\f1f8";
}

.btn-payment {
  background: #f7f7f7;
}

.btn-payment:hover {
  background: #f1f1f1;
}

body.night-mode .btn-payment {
  background: var(--card-dark-input);
}

body.night-mode .btn-payment:hover {
  background: var(--card-dark-hover);
}

.btn-voice-start,
.btn-voice-stop {
  display: inline-block;
  padding: 4px 14px;
  background: #007bff;
  color: #fff;
  cursor: pointer;
  border-radius: 18px;
}

.btn-voice-stop {
  background: red;
}

.btn-chat {
  background: #fff;
  padding: 15px;
}

body.night-mode .btn-chat {
  background: var(--card-dark-color);
}

.btn-chat:hover {
  background: #f7f7f7;
}

body.night-mode .btn-chat:hover {
  background: var(--card-dark-hover);
}

.btn-icon-social {
  display: inline-block;
  background: #fbfbfb;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  border-radius: 50%;
}

body.night-mode .btn-icon-social {
  background: var(--card-dark-hover);
}

.btn-icon-social:hover {
  background: #f7f7f7;
}

body.night-mode .btn-icon-social:hover {
  background: var(--card-dark-color);
}

.btn-social {
  border-radius: 14px;
  border: 2px solid #EFEFEF;
  padding: 10px 18px;
  gap: 14px;
  font-size: 14px;
  font-weight: 500;
  transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-social:hover {
  background-color: #EFEFEF;
}

body.night-mode .btn-social {
  border-color: #444a4c;
  color: #fff;
}

body.night-mode .btn-social:hover {
  background-color: #444a4c;
}

/* == */

/* == Inputs == */

body.night-mode .form-text {
  color: var(--body-color-dark);
}

.form-group {
  margin-bottom: 15px;
}

.form-control,
.form-select,
.input-group-text {
  padding: .85rem 1.5rem;
}

body.night-mode .form-control,
body.night-mode .form-select,
body.night-mode .input-group-text {
  background-color: var(--card-dark-input);
  border-color: var(--card-dark-divider);
  color: var(--card-dark-input-color);
}

body.night-mode .form-control::placeholder,
body.night-mode .form-select::placeholder {
  color: #72879a;
}

body.night-mode .form-control::-webkit-input-placeholder,
body.night-mode .form-select::-webkit-input-placeholder {
  color: #72879a;
}

body.night-mode .form-control::-moz-placeholder,
body.night-mode .form-select::-moz-placeholder {
  color: #72879a;
}

body.night-mode .input-group-text::placeholder {
  color: #72879a;
}

body.night-mode .input-group-text::-webkit-input-placeholder {
  color: #72879a;
}

body.night-mode .input-group-text::-moz-placeholder {
  color: #72879a;
}

.form-control:focus,
.form-select:focus {
  box-shadow: none;
}

.form-label {
  font-weight: 600;
  color: #525f7f;
}

body.night-mode .form-label {
  color: var(--body-color-dark);
}

body.night-mode .form-control-plaintext {
  color: var(--body-color-dark);
}

.input-group .btn {
  padding-top: 9px;
  padding-bottom: 9px;
}

.form-check-label {
  padding-top: 2px;
}

/* -- Custom Inputs */
.form-table-row {
  display: flex;
  margin-bottom: 30px;
}

.form-table-row.disabled {
  opacity: 0.5;
}

.form-table-row>div {
  flex: 1;
}

.form-table-row>div:last-child {
  flex-basis: auto;
  flex-grow: 0;
  margin-left: 10px;
}

.form-table-row>div.avatar {
  flex-basis: auto;
  flex-grow: 0;
  margin-right: 10px;
}

.input-money {
  position: relative;
}

.input-money span {
  font-size: 20px;
  position: absolute;
  top: 15px;
  left: 0;
  width: 45px;
  text-align: center;
}

.input-money.right span {
  left: auto;
  right: 0;
}

.input-money input {
  font-size: 40px;
  line-height: 40px;
  font-family: opensanslight;
  margin: 0;
  padding: 10px;
  padding-left: 45px;
  height: 60px;
  outline: 0;
}

.input-money.right input {
  padding-left: 10px;
  padding-right: 45px;
}

/* == */

/* == Card == */
.card {
  border: 0 none;
  border-radius: 16px;
  margin-bottom: 20px;
}

body.night-mode .card {
  background: var(--card-dark-color);
  color: var(--body-color-dark);
}

.card-header {
  border: 0 none;
  padding: 16px;
  border-radius: 16px 16px 0 0 !important;
}

.card-footer {
  border-radius: 0 0 16px 16px !important;
  border: 0 none;
}

/* -- Custom Cards */
.card-header.with-icon {
  padding: 30px;
}

.card-header.with-nav {
  padding-bottom: 0;
  border-bottom: 0;
}

@media (min-width: 768px) {
  .card-header.with-icon {
    font-size: 16px;
    font-weight: 600;
  }
}

.card-header.block-title {
  font-size: 9px;
  font-weight: 600;
  text-transform: uppercase;
  padding: 10px 35px;
  background: transparent;
}

.card-body.with-nav,
.card-body.with-list,
.card-body.with-form {
  padding: 10px;
}

.divider,
.card-body .divider,
.modal-body .divider {
  border-top: 1px solid #e6ecf5;
  margin: 25px 0;
}

.divider.dashed,
.card-body .divider.dashed,
.modal-body .divider.dashed {
  border-top-style: dashed;
}

body.night-mode .divider,
body.night-mode .card-body .divider,
body.night-mode .modal-body .divider {
  border-color: var(--card-dark-divider);
}

@media (min-width: 768px) {
  .card-body.page-content {
    padding: 30px;
  }

  .card-body.static-page-content {
    padding: 50px;
  }
}

.card-pricing {
  border: 1px solid #f4f4f4;
}

.card-pricing .icon {
  max-width: 42px;
  border: 1px solid #f4f4f4;
  padding: 4px;
  border-radius: 16px;
}

body.night-mode .card-pricing .icon {
  border-color: var(--card-dark-divider);
}

.card-pricing .price {
  font-weight: 700;
}

body.night-mode .card-pricing,
body.night-mode .card-pricing .list-group-item {
  border-color: var(--card-dark-divider);
}

.card-footer-fake {
  text-align: right;
  padding: 0.75rem 1rem;
  background-color: rgba(0, 0, 0, 0.03);
  margin: 1rem -1rem -1rem;
  border-radius: 0 0 16px 16px;
}

/* == */

/* == Bg-gradient == */
.bg-gradient-primary {
  color: #fff !important;
  background: linear-gradient(87deg, #5e72e4 0, #825ee4 100%) !important;
}

.bg-primary {
  color: #fff !important;
  background: #5e72e4 !important;
}

.bg-gradient-secondary {
  background: linear-gradient(87deg, #f7fafc 0, #f7f8fc 100%) !important;
}

.bg-gradient-success {
  color: #fff !important;
  background: linear-gradient(87deg, #2dce89 0, #2dcecc 100%) !important;
}

.bg-gradient-info {
  color: #fff !important;
  background: linear-gradient(87deg, #11cdef 0, #1171ef 100%) !important;
}

.bg-gradient-warning {
  color: #fff !important;
  background: linear-gradient(87deg, #fb6340 0, #fbb140 100%) !important;
}

.bg-gradient-danger {
  color: #fff !important;
  background: linear-gradient(87deg, #f5365c 0, #f56036 100%) !important;
}

.bg-gradient-light {
  background: linear-gradient(87deg, #adb5bd 0, #adaebd 100%) !important;
}

.bg-gradient-dark {
  color: #eee;
  background: linear-gradient(87deg, #212529 0, #212229 100%) !important;
}

.bg-gradient-default {
  color: #eee;
  background: linear-gradient(87deg, #172b4d 0, #1a174d 100%) !important;
}

.bg-gradient-white {
  background: linear-gradient(87deg, #fff 0, #fff 100%) !important;
}

.bg-gradient-neutral {
  background: linear-gradient(87deg, #fff 0, #fff 100%) !important;
}

.bg-gradient-darker {
  color: #eee;
  background: linear-gradient(87deg, #000 0, #000 100%) !important;
}

.bg-gradient-blue {
  color: #fff !important;
  background: linear-gradient(87deg, #5e72e4 0, #825ee4 100%) !important;
}

.bg-gradient-indigo {
  color: #fff !important;
  background: linear-gradient(87deg, #5603ad 0, #9d03ad 100%) !important;
}

.bg-indigo {
  color: #fff !important;
  background: #5603ad !important;
}

.bg-gradient-purple {
  color: #fff !important;
  background: linear-gradient(87deg, #8965e0 0, #bc65e0 100%) !important;
}

.bg-gradient-pink {
  color: #fff !important;
  background: linear-gradient(87deg, #f3a4b5 0, #f3b4a4 100%) !important;
}

.bg-gradient-red {
  color: #fff !important;
  background: linear-gradient(87deg, #f5365c 0, #aa2b07 100%) !important;
}

.bg-red {
  color: #fff !important;
  background: #f5365c !important;
}

.bg-gradient-orange {
  color: #fff !important;
  background: linear-gradient(87deg, #fb6340 0, #fbb140 100%) !important;
}

.bg-gradient-yellow {
  color: #666;
  background: linear-gradient(87deg, #ffd600 0, #beff00 100%) !important;
}

.bg-gradient-green {
  color: #fff !important;
  background: linear-gradient(87deg, #2dce89 0, #2dcecc 100%) !important;
}

.bg-gradient-teal {
  color: #fff !important;
  background: linear-gradient(87deg, #11cdef 0, #1171ef 100%) !important;
}

.bg-teal {
  color: #fff !important;
  background: #1171ef !important;
}

.bg-gradient-cyan {
  color: #fff !important;
  background: linear-gradient(87deg, #009688 0, #26b8ab 100%) !important
}

.bg-gradient-white {
  color: #000 !important;
  background: linear-gradient(87deg, #fff 0, #fff 100%) !important;
}

.bg-gradient-gray {
  color: #fff !important;
  background: linear-gradient(87deg, #8898aa 0, #888aaa 100%) !important;
}

.bg-gradient-gray-dark {
  color: #fff !important;
  background: linear-gradient(87deg, #32325d 0, #44325d 100%) !important;
}

.bg-gradient-light {
  color: #000 !important;
  background: linear-gradient(87deg, #ced4da 0, #cecfda 100%) !important;
}

.bg-gradient-lighter {
  color: #000 !important;
  background: linear-gradient(87deg, #e9ecef 0, #e9eaef 100%) !important;
}

/* == */

/* == Callout == */
.bs-callout {
  background: #fff;
  padding: 20px;
  margin: 20px 0;
  border-left: 5px solid #eee;
  border-radius: 3px;
}

body.night-mode .bs-callout {
  background: var(--card-dark-input);
}

.bs-callout h4 {
  margin-top: 0;
  margin-bottom: 5px;
}

.bs-callout p:last-child {
  margin-bottom: 0;
}

.bs-callout code {
  border-radius: 3px;
}

.bs-callout+.bs-callout {
  margin-top: -5px;
}

.bs-callout-default {
  border-left-color: #777;
}

.bs-callout-default h4 {
  color: #777;
}

.bs-callout-primary {
  border-left-color: #428bca;
}

.bs-callout-primary h4 {
  color: #428bca;
}

.bs-callout-success {
  border-left-color: #5cb85c;
}

.bs-callout-success h4 {
  color: #5cb85c;
}

.bs-callout-danger {
  border-left-color: #d9534f;
  background: #fff1f0;
}

.bs-callout-danger h4 {
  color: #d9534f;
}

.bs-callout-warning {
  border-left-color: #f0ad4e;
  background: #fdf5e9;
}

.bs-callout-warning h4 {
  color: #f0ad4e;
}

.bs-callout-info {
  border-left-color: #5bc0de;
}

.bs-callout-info h4 {
  color: #5bc0de;
}

/* == */

/* == [JS Plugin] Bootstrap-Select == */
.bootstrap-select:not(.input-group-btn) {
  height: 100%;
}

.bootstrap-select .dropdown-toggle .filter-option {
  display: inline-block !important;
  position: static !important;
  padding: 0 !important;
}

.bootstrap-select .btn-outline-light {
  color: #495057;
  border-color: #ddd;
}

.bootstrap-select .option .icon {
  display: table-cell;
  vertical-align: middle;
  padding-right: 10px;
}

.bootstrap-select .option .text {
  display: table-cell;
  vertical-align: top;
  text-align: left;
}

/* == */

/* == [JS Plugin] MCE Editor == */
div.mce-fullscreen {
  z-index: 99999;
}

/* == */

/* == [JS Plugin] jQuery-UI (autocomplete) == */
.ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default;
  z-index: 9999;
}

.ui-widget-content {
  background: #fff;
  color: #444;
  z-index: 99999;
  padding: 10px;
  border-radius: 0 0 3px 3px;
  box-shadow: 0 3px 4px rgba(0, 0, 0, 0.15);
}

body.night-mode .ui-widget-content {
  background: var(--header-bg-color-dark);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
}

.ui-menu-item {
  position: relative;
  margin: 0;
  padding: 5px 0;
  border-radius: 3px;
  cursor: pointer;
}

.ui-menu-item:hover {
  background: #efefef;
}

body.night-mode .ui-menu-item:hover {
  background: #424242;
}

.ui-menu-item a {
  color: #444;
}

body.night-mode .ui-menu-item a {
  color: #e5e5e5;
}

.ui-menu-item img {
  width: 30px;
  margin: 5px;
  border-radius: 50%;
}

.ui-menu-item span {
  font-size: 13px;
}

.ui-helper-hidden-accessible {
  display: none;
}

/* -- */

/* == [JS Plugin] Tagify == */
.tagify {
  width: 100%;
}

body.night-mode .tagify {
  border-color: var(--card-dark-divider);
  color: var(--body-color-dark);
}

body.night-mode .tagify__dropdown,
body.night-mode .tagify__dropdown__wrapper {
  background-color: var(--card-dark-input);
  border-color: var(--card-dark-divider);
}

body.night-mode .tagify__dropdown__item--active {
  background-color: var(--card-dark-input);
}

.tagify__dropdown {
  z-index: 99999 !important;
}

/* == */

/* == [JS Plugin] CookieConsent == */
.cc-window.cc-floating {
  border-radius: 10px;
}

/* == */

/* == [JS Plugin] DataTables == */
.table>:not(caption)>*>* {
  padding: .875rem .875rem;
}

/* == */

/* == [JS Plugin] Tagify == */
.tagify {
  border-radius: var(--bs-border-radius);
}

/* == */

/* == [JS Plugin] Plyr.JS == */
.plyr.fluid-video.non-fullscreen .plyr__video-wrapper {
  max-height: calc(100vh - 350px);
  width: auto;
  height: auto;
  max-width: 100%;
  overflow: hidden;
}

.plyr.fluid-video.non-fullscreen .plyr__video-wrapper video {
  max-height: calc(100vh - 350px);
}

.plyr.fluid-video.fullscreen .plyr__video-wrapper {
  max-height: 100%;
  height: 100%;
  width: 100%;
}

.plyr.fluid-video.fullscreen .plyr__video-wrapper video {
  max-height: 100%;
}

/* == */

/* == [JS Plugin] Quill.js == */
.ql-bubble .ql-tooltip {
  z-index: 99999 !important;
}

.ql-editor {
  font-size: 16px !important;
  line-height: 24px !important;
  padding: 4px 0px !important;
  direction: ltr !important;
  text-align: left !important;
}

.ql-editor.ql-blank::before {
  font-family: var(--body-font-family) !important;
  left: 0 !important;
  font-style: normal !important;
  font-size: 16px !important;
}

body.night-mode .ql-editor {
  color: #fff !important;
}

body.night-mode .ql-editor.ql-blank::before {
  color: #c0c0c0 !important;
}

.ql-mention-list-container {
  background: #fff;
  color: #333;
  z-index: 99999 !important;
  padding: 6px !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.06) !important;
  border: none !important;
  min-width: 240px;
  max-width: min(320px, calc(100vw - 24px)) !important;
  max-height: min(280px, 50vh) !important;
  overflow-x: hidden !important;
  -webkit-overflow-scrolling: touch !important;
}

body.night-mode .ql-mention-list-container {
  background: var(--header-bg-color-dark);
  color: #e8e8e8;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.ql-mention-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.ql-mention-list-item {
  position: relative;
  margin: 0;
  padding: 0 !important;
  border-radius: 8px;
  cursor: pointer;
  display: flex;
  align-items: stretch;
  color: inherit;
  font-size: 13px;
  line-height: 1.25;
  transition: background-color 0.12s ease;
}

body.night-mode .ql-mention-list-item {
  color: #e5e5e5;
}

.ql-mention-list-item.selected {
  background: rgba(0, 0, 0, 0.06);
  text-decoration: none;
}

body.night-mode .ql-mention-list-item.selected {
  background: rgba(255, 255, 255, 0.08);
}

body.night-mode .ql-editor .mention {
  background-color: #090b0d;
}

.publisher-mention-item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-width: 0;
  padding: 8px 10px;
  border-radius: 8px;
}

.publisher-mention-item__avatar {
  flex-shrink: 0;
}

.publisher-mention-item__img,
.ql-mention-list-item img {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.06);
}

body.night-mode .publisher-mention-item__img,
body.night-mode .ql-mention-list-item img {
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.1);
}

.publisher-mention-item__body {
  min-width: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
}

.mention-item-label,
.publisher-mention-item__name {
  font-weight: 600;
  font-size: 0.9375rem;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.publisher-hashtag-item {
  display: flex;
  align-items: center;
  width: 100%;
  min-width: 0;
  padding: 8px 10px;
  border-radius: 8px;
}

.publisher-hashtag-item__body {
  min-width: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* == [JS Plugin] CookieConsent == */
#cc-main {
  font-family: var(--body-font-family) !important;
}

/* == */

/* HEADER */
/* ------------------------------- */

/* main-wrapper */
.main-wrapper {
  width: 100%;
  min-width: 260px;
  /* to show scroll for small size browsers ;) */
}

/* -- */

/* top-bar */
.top-bar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 50px;
  font-size: 13px;
  line-height: 50px;
  background: #fff2cc;
  color: #333;
  z-index: 1001;
}

@media (min-width: 768px) {
  .top-bar .col-sm-5 {
    text-align: right;
  }
}

.top-bar.danger {
  background: #ce3426;
  color: #fff;
}

.top-bar.danger a {
  color: #fff200;
}

.top-bar.danger a:hover {
  text-decoration: underline;
}

/* -- */

/* bottom-bar */
.bottom-bar {
  position: fixed;
  bottom: 10px;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 1001;
}

.logged-as-container {
  background: rgb(93 114 228 / 100%);
  padding: 20px 40px;
  border-radius: 16px;
  color: #fff;
}

.logged-as-container a {
  color: #fff200;
}

/* -- */

/* main-header */
.main-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 70px;
  background: var(--header-bg-color);
  z-index: 1001;
}

body.night-mode .main-header {
  background: var(--header-bg-color-dark);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
}

/* ** fix bootstrap modal padding-right for hiding scroll */
body.modal-open .main-header,
body.modal-open .top-bar {
  padding-right: 17px !important;
}

@media (min-width: 768px) {

  body.modal-open:not(.n_chat) .main-header,
  body.modal-open:not(.n_chat) .top-bar {
    padding-right: 74px !important;
  }

}

/* -- */
@media (min-width: 1200px) {

  .main-wrapper,
  .top-bar,
  .main-header {
    padding-right: 75px;
  }

  body.n_chat .main-wrapper,
  body.n_chat .top-bar,
  body.n_chat .main-header {
    padding-right: 0;
  }
}

body.n_activated .main-header,
body.n_live .main-header {
  top: 50px;
  /* for top bar */
}

/* -- */

/* logo-wrapper */
.main-header .logo-wrapper {
  position: relative;
  padding-left: 48px;
  height: 70px;
  overflow: hidden;
  word-break: break-all;
}

@media (min-width: 768px) {
  .main-header .logo-wrapper {
    padding-left: 0;
  }
}

.main-header .logo {
  display: block;
  font-size: 32px;
  font-weight: 600;
  line-height: 70px;
  opacity: 1;
}

.main-header img.logo-light {
  display: inline-block;
}

body.night-mode .main-header img.logo-light {
  display: none;
}

.main-header img.logo-dark {
  display: none;
}

body.night-mode .main-header img.logo-dark {
  display: inline-block;
}

.main-header .logo:hover {
  opacity: 0.8;
  text-decoration: none;
}

.main-header .logo img {
  max-height: 50px;
}

.main-header .menu-icon {
  position: absolute;
  top: 10px;
  left: 0;
  display: block;
  text-align: center;
  color: #fff;
  height: 50px;
  padding: 15px 14px;
  line-height: 100%;
  border-radius: 4px;
}

.main-header .menu-icon:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

/* -- */

/* search-wrapper */
.main-header .search-wrapper {
  position: relative;
}

.main-header .search-input-icon {
  position: absolute;
  top: 10px;
  right: 12px;
}

.main-header .search-wrapper .form-control {
  height: 44px;
  margin-top: 13px;
  margin-bottom: 8px;
  padding-right: 34px;
  box-shadow: none;
  background: #f2f2f2;
  border: 0 none;
  border-radius: 8px;
  color: #222;
  font-size: 16px;
}

body.night-mode .main-header .search-wrapper .form-control {
  background: var(--body-bg-color-dark);
  color: var(--body-color-dark);
}

.main-header .search-wrapper .form-control::placeholder {
  color: #999999;
}

.main-header .search-wrapper .form-control::-webkit-input-placeholder {
  color: #999999;
}

.main-header .search-wrapper .form-control:-moz-placeholder {
  color: #999999;
  opacity: 1;
}

body.night-mode .main-header .search-wrapper .form-control::placeholder {
  color: #72879a;
}

body.night-mode .main-header .search-wrapper .form-control::-webkit-input-placeholder {
  color: #72879a;
}

body.night-mode .main-header .search-wrapper .form-control:-moz-placeholder {
  color: #72879a;
  opacity: 1;
}

/* -- */

/* navbar-wrapper */
.navbar-wrapper>ul {
  display: flex;
}

.navbar-wrapper>ul>li {
  flex: 1;
  text-align: center;
  margin: 0 2px;
}

.navbar-wrapper>ul>li.mini-search {
  flex: 4;
}

.navbar-wrapper>ul>li>a {
  position: relative;
  display: block;
  text-align: center;
  height: 50px;
  margin-top: 10px;
  padding: 0 10px;
  line-height: 50px;
  border-radius: 8px;
}

.navbar-wrapper>ul>li>a:hover {
  background-color: rgb(160 160 160 / 10%);
}

body.night-mode .navbar-wrapper>ul>li>a:hover {
  background-color: rgb(234 234 234 / 10%);
}

.navbar-wrapper>ul>li.dropdown.show>a {
  background-color: rgba(255, 255, 255, 0.1);
}

body.night-mode .navbar-wrapper>ul>li.dropdown.show>a {
  background-color: #494c62;
}

.navbar-wrapper .counter {
  position: absolute;
  top: 5px;
  right: 0;
  padding: 2px 4px;
  color: #fff;
  font-size: 10px;
  line-height: 14px;
  font-weight: 600;
  border-radius: 3px;
}

.navbar-wrapper .counter.red {
  background: #ff5e3a;
}

.navbar-wrapper .counter.blue {
  background: #38a9ff;
}

.navbar-wrapper .counter.purple {
  background: #7c5ac2;
}

/* -- user-menu */
.user-menu>img {
  display: inline-block;
  margin-top: -5px;
  height: 20px;
  width: 20px;
  border-radius: 50%;
}

@media (min-width: 768px) {
  .user-menu>img {
    height: 25px;
    width: 25px;
  }
}

.main-header .user-menu .title {
  display: none;
}

.footer-bottom-bar .user-menu.dropdown-toggle::after {
  content: none;
}

/* -- dropdown-menu */
.navbar-wrapper>ul>li.dropdown {
  position: static;
}

@media (min-width: 768px) {
  .navbar-wrapper>ul>li.dropdown {
    position: relative;
  }
}

/* -- dropdown-widget */
.dropdown-widget {
  width: 100%;
  padding-bottom: 0;
  padding-top: 0;
}

.dropdown-widget-header {
  padding: 12px;
  font-size: 11px;
  border-bottom: 1px solid #f4f4f4;
}

body.night-mode .dropdown-widget-header {
  border-color: var(--card-dark-divider);
}

.dropdown-widget-header .title {
  font-size: 16px;
  line-height: 22px;
  font-weight: 500;
}

.dropdown-widget-header a:hover {
  text-decoration: underline;
}

.dropdown-widget-body {
  padding: 0;
  font-size: 12px;
}

.dropdown-widget-body .title {
  border-top: 1px solid #e4e4e4;
  border-bottom: 1px solid #e4e4e4;
  color: #9a9fbf;
  padding: 8px;
  display: block;
  font-size: 11px;
  font-weight: 600;
  line-height: 16px;
}

body.night-mode .dropdown-widget-body .title {
  border-color: var(--card-dark-divider);
}

.dropdown-widget-footer {
  display: block;
  padding: 10px 0;
  border-top: 1px solid #f4f4f4;
  border-bottom: 0 none;
  text-align: center;
  font-size: 13px;
}

body.night-mode .dropdown-widget-footer {
  border-color: var(--card-dark-divider);
}

.dropdown-widget-footer:hover {
  text-decoration: underline;
}

@media (min-width: 768px) {
  .dropdown-widget {
    min-width: 380px !important;
  }

  .dropdown-widget.dropdown-search {
    border-radius: 0.375rem;
  }
}

/* -- */

/* COMMON */
/* ------------------------------- */

/* no-data */
.no-data {
  padding: 8px 20px;
  background: #f7f7f7;
  border-radius: 10px;
  font-weight: 500;
}

body.night-mode .no-data {
  background: var(--card-dark-input);
}

/* payments plans */
.payment-plans {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.payment-plan {
  flex-basis: 100%;
  background: #f9f9f9;
  padding: 15px 30px;
  border-radius: 16px;
}

@media (min-width: 1400px) {
  .payment-plan {
    flex-basis: 49%;
  }

  .payment-plan.full {
    flex-basis: 100%;
  }

}

body.night-mode .payment-plan {
  background: var(--card-dark-input);
}

.payment-plan.new {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--link-color);
  cursor: pointer;
  min-height: 150px;
}

.payment-plan.new.address {
  min-height: 220px;
}

/* -- */

/* shipping-address */
.shipping-address {
  padding: 20px;
  margin-bottom: 10px;
  border: 1px solid #f4f4f4;
  border-radius: 16px;
}

body.night-mode .shipping-address {
  border-color: var(--card-dark-divider);
}

/* -- */

/* section-title */
.section-title {
  background: #f5f5f5;
  padding: 14px;
  font-weight: 600;
  text-align: center;
  border-radius: 8px;
}

body.night-mode .section-title {
  background-color: var(--card-dark-hover);
}

/* -- */

/* heading */
.heading-small {
  font-size: 12px;
  padding: 4px 0;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

/* -- */

/* hr-heading */
.hr-heading {
  display: block;
  overflow: hidden;
  text-align: center;
  white-space: nowrap;
}

.hr-heading-text {
  position: relative;
  display: inline-block;
}

.hr-heading-text:before,
.hr-heading-text:after {
  position: absolute;
  top: 50%;
  width: 9999px;
  height: 1px;
  background: #f4f4f4;
  content: "";
}

body.night-mode .hr-heading-text:before,
body.night-mode .hr-heading-text:after {
  background: var(--card-dark-divider);
}

.hr-heading-text:before {
  right: 100%;
  margin-right: 15px;
}

.hr-heading-text:after {
  left: 100%;
  margin-left: 15px;
}

/* -- */

/* user-box */
.user-box {
  display: block;
  margin: 5px;
  text-align: center;
  text-decoration: none;
}

.circled-user-box {
  margin: 5px;
}

.circled-user-box .user-box {
  position: relative;
  padding-top: 100%;
  margin: 0;
  margin-bottom: 20px;
}

.pro-box-wrapper .user-box {
  width: 71px;
  float: left;
  opacity: 0.55;
}

.pro-box-wrapper.full-opacity .user-box {
  opacity: 1;
}

.pro-box-wrapper .user-box.slick-center {
  opacity: 1;
  transform: scale(1.1);
  font-weight: 600;
}

.user-box img {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  border-radius: 50%;
}

.circled-user-box .user-box img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  object-fit: cover;
}

.pro-box-wrapper .user-box img {
  width: 60px;
  height: 60px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.user-box .name {
  margin-top: 5px;
  font-size: 11px;
  word-break: break-word;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.circled-user-box .user-box .name {
  position: absolute;
  left: 0;
  right: 0;
}

/* -- */

/* ui-box */
.ui-box {
  position: relative;
  background: #fff;
  padding: 50px 15px 15px;
  margin-top: 50px;
  margin-bottom: 20px;
  text-align: center;
  border-radius: 16px;
}

.ui-box.darker {
  background: #f4f4f4;
}

body.night-mode .ui-box {
  background: var(--card-dark-input);
}

.ui-box .img {
  position: absolute;
  top: -50px;
  left: 50%;
  transform: translate(-50%);
  background: #fff;
  padding: 4px;
  margin: 0 auto;
  border-radius: 50%;
}

body.night-mode .ui-box .img {
  background: var(--card-dark-color);
}

.ui-box img {
  height: 92px;
  width: 92px;
  border-radius: 50%;
  object-fit: cover;
}

.ui-box .btn {
  box-shadow: none;
}

/* -- */

/* stat-panel */
.stat-panel {
  border-radius: 16px;
  margin-bottom: 20px;
  overflow: hidden;
}

.stat-panel.border {
  border: 1px solid #e6ecf5;
}

body.night-mode .stat-panel.border {
  border-color: var(--card-dark-divider) !important;
}

.stat-cell {
  position: relative;
  padding: 40px;
}

.stat-cell.narrow {
  padding: 25px;
}

.stat-cell .icon {
  position: absolute;
  top: 20px;
  right: 20px;
  background: #fff;
  font-size: 20px;
  width: 48px;
  height: 48px;
  padding: 14px;
  border-radius: 50%;
}

.stat-cell .bg-icon {
  position: absolute;
  bottom: -5px;
  right: -5px;
  font-size: 100px;
  opacity: 0.25;
}

.stat-cell a {
  font-size: 12px;
  color: #fff;
}

.stat-cell a:hover {
  text-decoration: underline;
}

/* -- */

/* main-side-nav */
.main-side-nav {
  z-index: 2;
}

.main-side-nav img {
  width: 24px;
  height: 24px;
  margin-right: 10px;
}

.main-side-nav a,
.main-side-nav .static {
  display: block;
  font-weight: 500;
  padding: 10px 16px;
  color: #5a5a5a;
}

body.night-mode .main-side-nav a,
body.night-mode .main-side-nav .static {
  color: var(--body-color-dark);
}

.main-side-nav a[data-bs-toggle="collapse"]:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 700;
  font-style: normal;
  font-variant: normal;
  float: right;
  content: "\f107";
  transition: all 0.15s ease;
  color: var(--link-color);
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}

.main-side-nav a[data-bs-toggle="collapse"][aria-expanded="true"]:after {
  content: "\f106";
}

.main-side-nav a:hover {
  color: var(--link-color);
}

.main-side-nav a.no-border {
  border-bottom: 0;
}

.main-side-nav>li.active>a {
  background-color: #e5eaef;
  color: var(--link-color);
  border-radius: 5px;
}

body.night-mode .main-side-nav a:hover,
body.night-mode .main-side-nav>li.active>a {
  background-color: var(--card-dark-hover);
  color: #fff;
  border-radius: 16px;
}

.main-side-nav ul>li.active>a {
  color: var(--link-color);
}

.main-side-nav ul a {
  margin-left: 32px;
  padding: 10px 20px;
  font-size: 13px;
  border-left: 1px solid #e4e4e4;
}

body.night-mode .main-side-nav ul a {
  color: var(--body-color-dark);
  border-left-color: var(--card-dark-divider);
}

/* side-nav */
.side-nav a,
.side-nav .static {
  display: block;
  font-weight: 500;
  padding: 15px 25px;
  color: #333;
}

body.night-mode .side-nav a,
body.night-mode .side-nav .static {
  color: var(--body-color-dark);
}

.side-nav a:hover {
  color: var(--link-color);
}

.side-nav a[data-bs-toggle="collapse"]:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 700;
  font-style: normal;
  font-variant: normal;
  display: inline-block;
  float: right;
  content: "\f105";
  transition: all 0.15s ease;
  color: #ced4da;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}

.side-nav a[data-bs-toggle="collapse"][aria-expanded="true"]:after {
  transform: rotate(90deg);
  color: var(--link-color);
}

.side-nav>li.active>a {
  background-color: #f6f9fc;
  color: var(--link-color);
  border-radius: 16px;
}

body.night-mode .side-nav>li.active>a {
  background-color: var(--card-dark-hover);
  color: #fff;
}

.side-nav ul>li.active>a {
  color: var(--link-color);
}

.side-nav ul a {
  margin-left: 32px;
  padding: 10px 20px;
  font-size: 11px;
  color: #888da8;
  border-left: 1px solid #eee;
}

body.night-mode .side-nav ul a {
  border-left-color: var(--card-dark-divider);
}

/* -- */

/* content-tabs */
.content-tabs {
  background: #fff;
  margin-bottom: 20px;
  padding: 0 5px;
  border-radius: 8px;
}

body.night-mode .content-tabs {
  background: var(--card-dark-color);
}

@media (min-width: 768px) {
  .content-tabs {
    padding: 0 10px;
  }
}

.content-tabs>ul>li {
  float: left;
}

.content-tabs>ul>li>a {
  display: block;
  padding: 12px 14px;
  font-size: 12px;
  line-height: 24px;
  color: #666;
  transition: all 0.2s ease;
}

body.night-mode .content-tabs>ul>li>a {
  color: var(--body-color-dark);
}

@media (min-width: 768px) {
  .content-tabs>ul>li>a {
    padding: 20px 28px;
    font-size: 15px;
  }
}

.content-tabs>ul>li.active>a {
  color: var(--link-color);
  font-weight: 600;
  border-bottom: 2px solid var(--link-color);
}

/* -- */

/* see-more */
.see-more {
  text-align: center;
  margin-top: 10px;
  margin-bottom: 20px;
  padding: 10px;
}

@media (max-width: 768px) {
  .see-more {
    margin-bottom: 90px;
  }
}

.see-more:hover {
  text-decoration: underline;
  cursor: pointer;
}

.see-more.loading:hover {
  text-decoration: none;
  cursor: default;
}

.see-more.done:hover {
  text-decoration: underline;
  cursor: text;
}

/* --*/

/* feeds-item */
.feeds-item {
  border-bottom: 1px solid #f4f4f4;
}

body.night-mode .feeds-item {
  border-color: var(--card-dark-divider);
}

.feeds-item.with-hover:hover {
  cursor: pointer;
}

.feeds-item:last-child {
  border-bottom: 0 none;
}

.feeds-item.unread {
  background: #e9eaed;
}

body.night-mode .feeds-item.unread {
  background: var(--card-dark-input);
}

/* -- */

/* feeds-action-item */

.feeds-action-item.unread,
.feeds-action-item:hover {
  cursor: pointer;
  background: #f4f4f4;
  border-radius: 16px;
}

body.night-mode .feeds-action-item.unread,
body.night-mode .feeds-action-item:hover {
  background: var(--card-dark-input);
}

/* -- */

/* data-container */
.data-container {
  display: block;
  width: 100%;
  padding: 8px;
  min-height: 56px;
  /* 40px avatar + 16px padding */
}

.data-container.small {
  min-height: 46px;
  /* 30px avatar + 16px padding */
}

a.data-container:hover,
.data-container.clickable:hover {
  background: #f6f7f8;
  text-decoration: none;
  cursor: pointer;
}

body.night-mode a.data-container:hover,
body.night-mode .data-container.clickable:hover {
  background: var(--card-dark-divider);
}

.data-avatar {
  display: block;
  position: relative;
  /* relative for .data-reaction to be absolute */
  float: left;
}

.data-avatar img {
  width: 30px;
  height: 30px;
  text-align: center;
  border-radius: 50%;
}

@media (min-width: 768px) {
  .data-avatar img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
  }

  .data-container.small .data-avatar img {
    width: 30px;
    /* override the previous */
    height: 30px;
  }
}

.data-avatar .left-avatar,
.data-avatar .right-avatar {
  background-size: cover;
  background-position: center center;
  float: left;
  overflow: hidden;
  width: 14px;
  height: 30px;
  margin-right: 1px;
  border-radius: 20px 0 0 20px;
}

.data-avatar .right-avatar {
  width: 15px;
  margin-right: 0;
  border-radius: 0 20px 20px 0;
}

@media (min-width: 768px) {

  .data-avatar .left-avatar,
  .data-avatar .right-avatar {
    width: 19px;
    height: 40px;
    border-radius: 20px 0 0 20px;
  }

  .data-avatar .right-avatar {
    width: 20px;
    border-radius: 0 20px 20px 0;
  }

  .data-container.small .data-avatar .left-avatar,
  .data-container.small .data-avatar .right-avatar {
    width: 14px;
    height: 30px;
  }

  .data-container.small .data-avatar .right-avatar {
    width: 15px;
  }
}

.data-reaction {
  position: absolute;
  bottom: -4px;
  right: -6px;
}

.data-content {
  padding-left: 38px;
  color: #555;
  font-size: 13px;
}

body.night-mode .data-content {
  color: var(--body-color-dark);
}

.toast-body .data-content {
  color: #fff;
}

@media (min-width: 768px) {
  .data-content {
    padding-left: 48px;
    word-wrap: break-word;
  }

  .data-container.small .data-content {
    padding-left: 38px;
    /* override the previous */
  }
}

.data-content .data-img {
  background-color: #fff;
  border: 1px solid #ddd;
  padding: 1px;
  width: 48px;
  height: 48px;
  object-fit: cover;
  border-radius: 14px;
}

.data-content .btn {
  padding: 2px 6px;
  font-size: 10px;
}

@media (min-width: 576px) {
  .data-content .btn {
    padding: 4px 12px;
    font-size: 12px;
  }
}

.data-content .name {
  font-weight: bold;
}

.data-content .time {
  font-size: 10px;
  color: #888;
}

.data-content .text {
  word-break: break-all;
}

/* -- */

/* x-form */
.x-form {
  position: relative;
  /* for x-form-tools */
}

.x-form-tools {
  position: absolute;
}

.x-form-tools>li {
  float: left;
  margin-left: 4px;
  padding: 4px 2px;
  border-radius: 50%;
}

.x-form-tools>li:first-child {
  margin-left: 0;
}

.x-form-tools>li:hover {
  background: #f3f3f3;
  cursor: pointer;
}

body.night-mode .x-form-tools>li:hover {
  background: var(--card-dark-hover);
}

.x-form-tools-post,
.x-form-tools-attach,
.x-form-tools-voice,
.x-form-tools-emoji {
  position: relative;
  /* for input & menus */
  overflow: hidden;
  display: inline-block;
  cursor: pointer;
}

@media (min-width: 992px) {
  .x-form-tools-post {
    display: none;
  }
}

.x-form-tools-attach input[type="file"] {
  position: absolute;
  top: 0;
  right: 0;
  min-width: 100%;
  min-height: 100%;
  font-size: 100px;
  text-align: right;
  filter: alpha(opacity=0);
  opacity: 0;
  outline: none;
  background: white;
  cursor: inherit;
  display: block;
}

/* -- */

/* attachments */
.attachments li {
  float: left;
  width: 64px;
  height: 64px;
  margin-right: 5px;
  margin-bottom: 5px;
  transition: padding 0.5s;
}

@media (min-width: 768px) {
  .attachments li {
    width: 96px;
    height: 96px;
  }
}

.attachments li.item {
  position: relative;
  cursor: pointer;
  border-radius: 10px;
}

.attachments li.item img {
  width: 64px;
  height: 64px;
  border-radius: 10px;
}

@media (min-width: 768px) {
  .attachments li.item img {
    width: 94px;
    height: 94px;
  }
}

.attachments li.item .name {
  background: #fafafa;
  height: 100%;
  width: 100%;
  padding: 10px;
  color: #999;
  font-size: 10px;
  word-break: break-all;
}

.attachments li.item button {
  position: absolute;
  top: 2px;
  right: 5px;
  color: #fff;
  text-shadow: 0 1px 0 #000;
}

.attachments li.loading {
  padding-top: 22px;
  /* 64px-20px(loader) / 2 */
  background: #f3f3f3;
  border: 1px solid #f4f4f4;
  display: none;
  border-radius: 10px;
}

@media (min-width: 768px) {
  .attachments li.loading {
    padding-top: 45px;
    /* 96px-5px(loader) / 2 */
  }
}

body.night-mode .attachments li.loading {
  background: var(--card-dark-color);
  border-color: var(--card-dark-divider);
}

.attachments li.add {
  position: relative;
  overflow: hidden;
  padding: 20px 0 0 25px;
  color: #ddd;
  font-size: 16px;
  cursor: pointer;
  border-radius: 16px;
  border: 2px dashed #cecece;
}

body.night-mode .attachments li.add {
  color: var(--body-color-dark);
  border-color: var(--card-dark-divider);
}

@media (min-width: 768px) {
  .attachments li.add {
    padding: 30px 0 0 35px;
    font-size: 24px;
  }
}

/* -- */

/* x-uploader */
.x-uploader {
  overflow: hidden;
}

.x-uploader input[type="file"] {
  position: absolute;
  top: 0;
  right: 0;
  min-width: 100%;
  min-height: 100%;
  font-size: 100px;
  text-align: right;
  opacity: 0;
  outline: none;
  background: white;
  cursor: pointer;
  display: block;
}

.x-uploader .fa {
  cursor: pointer;
}

/* -- */

/* x-image */
.x-image {
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #eee;
  border: 1px dashed #ccc;
  width: 96px;
  height: 96px;
  overflow: hidden;
  display: block;
  border-radius: 10px;
}

body.night-mode .x-image {
  background-color: var(--card-dark-input);
  border-color: var(--card-dark-divider);
}

.x-image.full {
  width: 100%;
}

.x-image.sm {
  width: 48px;
  height: 48px;
}

.x-image:before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: #000;
  content: "";
  opacity: 0;
}

.x-image:hover.x-image:before {
  opacity: 0.2;
}

.x-image-success {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.5;
  background: #000;
  width: 100%;
  height: 100%;
  padding-top: 30%;
  text-align: center;
  color: #fff;
  font-size: 12px;
  transition: all 0.5s;
}

.x-image-loader {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.5;
  background: #000;
  width: 100%;
  height: 100%;
  padding-top: 50%;
  transition: all 0.5s;
}

.x-image.full .x-image-loader {
  padding-top: 20%;
}

.x-image .x-uploader {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  text-align: center;
  padding: 37px;
}

.x-image.full .x-uploader {
  padding-top: 35px;
}

.x-image button {
  position: absolute;
  top: 0;
  right: 5px;
  z-index: 2;
}

/* -- */

/* x-progress (uploading progress) */
.x-progress {
  height: 5px;
  margin: 0 1.5rem;
  border-radius: 25px;
}

/* -- */

/* tbl-image */
.tbl-image {
  width: 24px;
  height: 24px;
  float: left;
  margin-right: 5px;
  border-radius: 50%;
}

.tbl-image.app-icon {
  width: 34px;
  height: 34px;
  border-radius: 4px;
}

/* -- */

/* badges */
.verified-badge {
  color: #55acee;
}

.pro-badge {
  color: #e13c4c;
}

.privacy-badge {
  color: #fff;
  font-size: 16px;
}

.verified-badge:hover,
.pro-badge:hover,
.privacy-badge:hover {
  cursor: pointer;
}

/* -- */

/* ads */
.ads-title {
  font-size: 14px;
  padding: 5px 0;
  margin: 0;
  word-break: break-all;
}

.ads-descrition {
  font-size: 12px;
  word-break: break-word;
}

.adblock-warning-message {
  display: none;
  padding: 20px;
  background: #d30000;
  text-align: center;
  color: #fff;
  border-radius: 16px;
  margin-bottom: 20px;
}

.adblock-detector {
  position: fixed;
  top: 70px;
  left: 0;
  right: 0;
  display: none;
  margin-bottom: 30px;
  padding: 40px 10px;
  background: #d30000;
  text-align: center;
  font-weight: bold;
  color: #fff;
}

/* -- */

/* user-popover */
@media (min-width: 768px) {
  .user-popover {
    position: relative;
  }

  .user-popover-wrapper {
    width: 400px;
    min-height: 180px;
    z-index: 99999;
  }

  .user-popover-content {
    width: 400px;
    position: absolute;
    top: 5px;
    left: 0;
    border-radius: 16px;
    background-color: #fff;
    box-shadow: 0 1px 12px rgba(0, 0, 0, 0.2);
    z-index: 999999;
  }

  body.night-mode .user-popover-content {
    background: var(--card-dark-color);
  }

  .user-card {
    position: relative;
  }

  .user-card-cover {
    width: 100%;
    height: 120px;
    background-color: #424242;
    background-size: cover;
    background-position: center center;
    border-radius: 16px 16px 0 0;
  }

  body.night-mode .user-card-cover {
    background-color: #151a1f;
  }

  .user-card-avatar {
    position: absolute;
    left: 15px;
    bottom: -15px;
    padding: 2px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3);
  }

  body.night-mode .user-card-avatar {
    background: var(--card-dark-color);
  }

  .user-card-avatar img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
  }

  .user-card-info {
    position: absolute;
    left: 96px;
    bottom: 10px;
    color: #fff;
  }

  .user-card-info a {
    color: #fff;
    text-shadow: 0 0 3px rgba(0, 0, 0, 0.9);
  }

  .user-card-info a:hover {
    text-decoration: underline;
  }

  .user-card-info a.name {
    font-size: 20px;
    font-weight: 600;
  }

  .user-card-info .info {
    font-size: 12px;
    line-height: 15px;
    text-shadow: 0 0 3px rgba(0, 0, 0, 0.9);
  }

  .user-card-meta {
    padding-left: 96px;
    padding-top: 10px;
    font-size: 14px;
    color: #000;
  }

  body.night-mode .user-card-meta {
    color: var(--body-color-dark);
  }

  .user-popover-content .popover-footer {
    padding: 8px;
    text-align: center;
    border-radius: 0 0 6px 6px;
  }

  .user-popover-content .popover-footer .btn {
    padding: 6px 12px;
    margin-right: 5px;
    margin-bottom: 5px;
  }

  /* -- */
}

/* -- */

/* trending */
.trending-item {
  word-break: break-word;
  display: block;
  padding: 5px 0;
  font-size: 13px;
}

.trending-item .hash {
  display: block;
  color: #ffffff;
  font-weight: bold;
  font-size: 14px;
}

.trending-item .frequency {
  font-size: 12px;
  color: #ffeb00;
}

.trending-item:hover .hash {
  text-decoration: underline;
}

/* -- */

/* sticker */
.sticker {
  max-height: 100px;
  display: block;
  margin: 0 auto;
}

/* -- */

/* collaborative users */
.collaborative-users {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: 0.75rem;
  row-gap: 0.5rem;
  margin-bottom: 1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.collaborative-users__label {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--bs-secondary-color, #6c757d);
  margin-bottom: 0.65rem;
}

.collaborative-users .collaborative-users__label {
  flex: 0 0 auto;
  margin-bottom: 0;
  align-self: center;
}

.collaborative-users .collaborative-users__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  flex: 1 1 0;
  min-width: 0;
  max-width: 100%;
  vertical-align: unset;
}

.collaborative-users__list {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  vertical-align: middle;
  max-width: 100%;
}

.collaborative-users__tag {
  display: inline-flex;
  max-width: 100%;
}

.collaborative-users__link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  max-width: 100%;
  padding: 0.25rem 0.65rem 0.25rem 0.35rem;
  border-radius: 999px;
  background-color: rgba(0, 0, 0, 0.04);
  border: 1px solid rgba(0, 0, 0, 0.06);
  color: inherit;
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.collaborative-users__link:hover {
  background-color: rgba(0, 0, 0, 0.07);
  border-color: rgba(0, 0, 0, 0.1);
  color: inherit;
  text-decoration: none;
}

.collaborative-users__avatar {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 1px solid rgba(0, 0, 0, 0.08);
}

.collaborative-users__name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 200px;
}

@media (prefers-color-scheme: dark) {
  .collaborative-users__link {
    background-color: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.1);
  }

  .collaborative-users__link:hover {
    background-color: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.14);
  }

  .collaborative-users__avatar {
    border-color: rgba(255, 255, 255, 0.12);
  }
}

/* -- */

/* card balance */

.card-balance {
  background-color: #f7f7f7;
  padding: 20px;
  border-radius: 12px;
}

body.night-mode .card-balance {
  background-color: #2e3f4d;
}

.card-balance p {
  margin-bottom: 0;
}

.card-balance-value {
  font-size: 34px;
  font-weight: 600;
  margin: 0;
}

/* -- */

/* PUBLISHER */
/* ------------------------------- */

.publisher-overlay {
  background: #000;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  z-index: 1002;
}

body.publisher-focus .publisher-overlay {
  bottom: 0;
  opacity: 0.6;
}

.publisher {
  margin-bottom: 20px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

body.night-mode .publisher {
  background: var(--card-dark-color);
}

body.publisher-focus .publisher {
  z-index: 1003;
}

.publisher.mini {
  margin-bottom: 0;
  border-radius: 0;
}

.publisher-loader {
  display: none;
  position: absolute;
  top: 5px;
  right: 10px;
  z-index: 1;
}

.publisher-close {
  position: absolute;
  top: 5px;
  right: 10px;
  z-index: 1;
}

.publisher-message {
  position: relative;
  padding: 15px 15px 20px 65px;
}

.publisher-message.no-avatar {
  padding-left: 15px;
}

.publisher-message.colored,
.post-colored,
.post-colored-preview {
  height: 300px;
  padding: 30px;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

.publisher-message.colored {
  border-radius: 2px 2px 0 0;
}

.post-colored-preview {
  border-radius: 2px;
}

.post-colored-preview.small {
  height: 180px;
}

.post-colored-preview h2 {
  text-align: center;
  padding-top: 100px;
}

.post-colored-preview h4 {
  text-align: center;
  padding-top: 50px;
}

.publisher-message.colored .colored-text-wrapper,
.post-colored-text-wrapper {
  height: 240px;
  display: flex;
  text-align: center;
}

.publisher-message.colored .colored-text-wrapper {
  overflow-x: auto;
  overflow-y: auto;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
}

.publisher .colored-text-wrapper .quill-editor {
  min-height: 32px;
  min-width: 100%;
}

.publisher-message.colored .colored-text-wrapper .quill-editor {
  height: auto;
  flex-shrink: 0;
}

/* publisher-avatar */
.publisher-avatar {
  position: absolute;
  left: 15px;
  top: 15px;
  width: 40px;
  height: 40px;
  padding: 2px;
  border: 1px solid #efefef;
  border-radius: 50%;
}

body.night-mode .publisher-avatar {
  border-color: var(--card-dark-divider);
}

.publisher-message.colored .publisher-avatar {
  display: none;
}

/* -- */

/* publisher textarea */
.publisher textarea:not(.form-control) {
  background: transparent;
  direction: ltr;
  resize: none;
  outline: none;
  width: 100%;
  margin-top: 5px;
  padding: 0;
  font-size: 16px;
  line-height: 24px;
  height: 24px;
  border: 0 none;
}

body.night-mode .publisher textarea:not(.form-control) {
  color: #fff;
}

.publisher textarea:not(.form-control)::placeholder {
  color: inherit;
  opacity: 0.65;
}

.publisher textarea:not(.form-control):-ms-input-placeholder {
  color: inherit;
  opacity: 0.65;
}

.publisher textarea:not(.form-control)::-ms-input-placeholder {
  color: inherit;
  opacity: 0.65;
}

.publisher-message.colored textarea,
.post-colored .post-text {
  text-align: center;
  font-size: 25px;
  line-height: 30px;
  font-weight: 600;
  margin: auto;
}

.publisher-message.colored .quill-editor * {
  text-align: center;
  margin: auto;
}

.publisher-message.colored .quill-editor {
  min-height: 60px;
}

.publisher-message.colored textarea {
  min-height: 60px;
}

.post-colored .post-text a {
  color: inherit !important;
  text-decoration: underline !important;
}

.post-colored .post-text a:hover {
  text-decoration: none !important;
}

/* -- */

/* publisher-emojis */
.publisher-emojis {
  display: none;
  position: absolute;
  bottom: 5px;
  right: 10px;
}

.publisher-emojis .far {
  cursor: pointer;
  color: #555;
}

body.night-mode .publisher-emojis .far {
  color: var(--body-color-dark);
}

/* -- */

/* publisher-slider */
.publisher-slider {
  display: none;
}

/* -- */

/* publisher-scraper */
.publisher-scraper {
  display: none;
  position: relative;
  padding: 10px;
}

.publisher-scraper video {
  width: 100%;
}

.publisher-scraper img {
  width: 100%;
  height: auto;
}

.publisher-scraper-remover {
  position: absolute;
  top: 15px;
  right: 20px;
  width: 26px;
  height: 26px;
  padding-right: 4px;
  background: #fbfbfb;
  border: 1px solid #eaeaea;
  border-radius: 50%;
  z-index: 1;
}

body.night-mode .publisher-scraper-remover {
  background: var(--card-dark-color);
  border-color: var(--card-dark-divider);
}

.publisher-scraper-remover:hover {
  background: #fff;
}

.publisher-scraper-remover button.close {
  opacity: 0.5;
}

/* -- */

/* publisher-attachments */
.publisher-attachments {
  padding: 10px 10px 5px;
}

/* -- */

/* publisher-meta */
.publisher-meta {
  position: relative;
  border-top: 1px dashed #eee;
  font-weight: 600;
  margin: 0 15px;
  padding: 8px 0;
  display: none;
}

body.night-mode .publisher-meta {
  border-color: var(--card-dark-divider);
}

.publisher-meta.top {
  border-top: 0;
  border-bottom: 1px dashed #eee;
}

.publisher-meta .svg-container {
  position: absolute;
  top: 18px;
  left: 14px;
}

.publisher-meta .svg-container.static {
  position: static;
}

.publisher-meta input {
  background: #f3f3f3;
  width: 100%;
  color: var(--link-color);
  font-weight: 600;
  font-size: 14px;
  line-height: 20px;
  padding: 12px 16px 12px 40px;
  outline: 0 none;
  border: 0 none;
  border-radius: 16px;
}

.publisher-meta input.no-icon {
  padding: 12px 16px;
}

body.night-mode .publisher-meta input {
  color: var(--body-color-dark);
  background: var(--card-dark-input);
}

.publisher-meta input::-webkit-input-placeholder {
  color: #9c9c9c;
}

.publisher-meta input:-moz-placeholder {
  color: #9c9c9c;
  opacity: 1;
}

.publisher-meta input:-ms-input-placeholder {
  color: #9c9c9c;
}

/* -- */

/* publisher-custom-thumbnail */
.publisher-custom-thumbnail {
  display: none;
  position: relative;
  margin: 10px 15px;
  padding: 8px 0;
  border-top: 1px dashed #eee;
  overflow: hidden;
}

body.night-mode .publisher-custom-thumbnail {
  border-color: var(--card-dark-divider);
}

.publisher-custom-thumbnail .x-image {
  width: 100%;
  height: 160px;
  margin-top: 5px;
}

.publisher-custom-thumbnail .x-image-loader {
  padding-top: 80px;
}

/* -- */

/* feelings */
#feelings-menu-toggle {
  white-space: nowrap;
  padding: 5px;
  cursor: pointer;
  padding: 8px 18px;
  background: #f3f3f3;
  color: #6f6f6f;
  font-weight: 600;
  border-radius: 18px;
}

body.night-mode #feelings-menu-toggle {
  background: var(--card-dark-input);
}

#feelings-menu-toggle.active {
  display: table-cell;
  background: #e2e8f6;
}

body.night-mode #feelings-menu-toggle.active {
  background: var(--card-dark-input);
  color: var(--body-color-dark);
}

#feelings-data {
  display: table-cell;
  width: 100%;
  padding-left: 5px;
}

#feelings-data span {
  white-space: nowrap;
  padding: 10px 14px;
  background: var(--link-color);
  color: #ffffff;
  font-weight: 600;
  border-radius: 18px;
  cursor: pointer;
}

#feelings-data span .twa {
  vertical-align: middle;
}

.feeling-item {
  padding: 5px;
  cursor: pointer;
  color: #666;
  margin-bottom: 5px;
}

body.night-mode .feeling-item {
  color: var(--body-color-dark);
}

.feeling-item:hover {
  background: #fff;
  color: var(--link-color) !important;
}

body.night-mode .feeling-item:hover {
  background: var(--card-dark-input);
}

.feeling-item .icon {
  display: table-cell;
  vertical-align: top;
  padding-right: 10px;
}

.feeling-item .data {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  font-size: 1.2em;
  font-weight: 600;
}

/* -- */

/* colored-pattern-item */
.colored-pattern-item {
  display: inline-block;
  height: 36px;
  width: 36px;
  padding: 0;
  border: 2px solid #fff;
  border-radius: 50%;
  background-size: cover;
  cursor: pointer;
}

body.night-mode .colored-pattern-item {
  border-color: var(--card-dark-input);
}

.colored-pattern-item.active {
  box-shadow: 0px 0px 0px 2px rgba(51, 103, 214, 0.65);
}

/* -- */

/* gif-search */
.dropdown-menu.gif-search {
  display: none;
}

.gif-search .item {
  width: 33%;
  float: left;
  margin-right: 1px;
  margin-bottom: 1px;
}

.gif-search .item>img {
  width: 100%;
  height: fit-content;
  cursor: pointer;
}

/* -- */

/* publisher-tools-tabs */
.publisher-tools-tabs {
  margin: 0 15px;
  padding-top: 15px;
  border-top: 1px solid #f4f4f4;
  border-bottom: 1px solid #f4f4f4;
}

body.night-mode .publisher-tools-tabs {
  border-color: var(--card-dark-divider);
}

.publisher-tools-tabs .divider {
  border-top: 1px solid #f4f4f4;
  margin-bottom: 15px;
}

body.night-mode .publisher-tools-tabs .divider {
  border-top-color: var(--card-dark-divider);
}

.publisher-tools-tab {
  display: block;
  background: #f7f7f7;
  padding: 10px 14px;
  color: #555;
  font-size: 13px;
  font-weight: 700;
  border-radius: 16px;
  margin-bottom: 15px;
}

body.night-mode .publisher-tools-tab {
  background: var(--card-dark-hover);
  color: var(--body-color-dark);
}

.publisher-tools-tab:hover {
  background: #f3f3f3;
  color: var(--link-color);
  cursor: pointer;
}

body.night-mode .publisher-tools-tab:hover {
  background: var(--card-dark-input);
}

.publisher-tools-tab.active,
body.night-mode .publisher-tools-tab.active {
  color: var(--link-color);
}

.publisher-tools-tab.activated {
  background: #d2e0ff;
}

body.night-mode .publisher-tools-tab.activated {
  background: var(--card-dark-input);
}

.publisher-tools-tab[data-tab="video"].activated:after,
.publisher-tools-tab[data-tab="audio"].activated:after,
.publisher-tools-tab[data-tab="file"].activated:after {
  content: "";
  background: transparent;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  cursor: initial;
}

.publisher-tools-tab.disabled {
  position: relative;
}

.publisher-tools-tab.disabled:hover {
  background: #f7f7f7;
  color: #7f838a;
  cursor: initial;
}

body.night-mode .publisher-tools-tab.disabled:hover {
  background: var(--card-dark-input);
  color: var(--body-color-dark);
}

.publisher-tools-tab.disabled:after {
  content: "";
  background: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0.6;
  border-radius: 16px;
}

body.night-mode .publisher-tools-tab.disabled:after {
  background: #000;
}

.publisher-tools-tab.attach {
  position: relative;
  /* for input file */
  overflow: hidden;
}

.publisher-tools-tab.attach form {
  display: initial;
}

.publisher-tools-tab img {
  width: 24px;
  height: 24px;
  margin-right: 5px;
}

/* -- */

/* publisher-footer */
.publisher-footer {
  text-align: right;
  padding: 15px;
}

.publisher-footer-options {
  text-align: left;
  border-bottom: 1px solid #f4f4f4;
  margin-bottom: 20px;
}

body.night-mode .publisher-footer-options {
  border-color: var(--card-dark-divider);
}

.publisher-footer-buttons {
  display: flex;
  justify-content: space-between;
}

/* -- */

/* posts-filter */
.posts-filter {
  margin-bottom: 20px;
  padding-bottom: 5px;
  border-bottom: 1px solid #dfdfdf;
  line-height: 34px;
  font-weight: 600;
}

body.night-mode .posts-filter {
  border-bottom-color: var(--card-dark-divider);
}

.posts-filter .btn-group .btn,
.posts-filter .btn-group .open .btn.dropdown-toggle,
.posts-filter .btn-group .btn-default.active,
.posts-filter .btn-group .btn-default:active,
.posts-filter .btn-group .open .btn-default.dropdown-toggle {
  background: #fff;
  box-shadow: none !important;
  border: 0 none !important;
  padding: 6px 10px !important;
  border-radius: 10px;
  font-size: 13px;
}

body.night-mode .posts-filter .btn-group .btn,
body.night-mode .posts-filter .btn-group .open .btn.dropdown-toggle,
body.night-mode .posts-filter .btn-group .btn-default.active,
body.night-mode .posts-filter .btn-group .btn-default:active,
body.night-mode .posts-filter .btn-group .open .btn-default.dropdown-toggle {
  background: var(--card-dark-color);
  color: var(--body-color-dark);
}

.posts-filter .countries-filter {
  background: #ffff;
  padding: 7px 10px;
  border-radius: 10px;
  font-size: 13px;
  color: #212529;
}

body.night-mode .posts-filter .countries-filter {
  background: var(--card-dark-color);
  color: var(--body-color-dark);
}

.posts-filter .dropdown-menu:not(.countries-dropdown) {
  min-width: 160px;
}

.posts-filter .dropdown-menu .dropdown-item {
  padding: 2px 16px;
}

/* -- */

/* jobs publisher */
.add-job-question {
  background: #f7f7f7;
  margin: 10px 0;
  padding: 10px;
  font-weight: 600;
  text-align: center;
  border: 1px solid #ddd;
  border-radius: 4px;
  cursor: pointer;
}

.add-job-question:hover {
  background: #f3f3f3;
}

body.night-mode .add-job-question {
  background: var(--card-dark-input);
  border-color: var(--card-dark-divider);
}

body.night-mode .add-job-question:hover {
  background: var(--card-dark-color);
}

.job-question {
  background: #f7f7f7;
  margin: 10px 0;
  padding: 20px;
  border-radius: 16px;
}

body.night-mode .job-question {
  background: var(--card-dark-input);
}

.job-question .question {
  font-size: 16px;
  font-weight: bold;
}

.job-question .answer {
  font-size: 14px;
}

.job-candidate-wrapper {
  padding: 15px;
  border: 1px solid #f4f4f4;
  border-radius: 16px;
  margin-bottom: 20px;
}

body.night-mode .job-candidate-wrapper {
  border-color: var(--card-dark-divider);
}

.job-candidate-avatar {
  position: relative;
  display: table-cell;
  vertical-align: top;
  padding-right: 10px;
}

.job-candidate-info {
  display: table-cell;
  vertical-align: top;
  width: 100%;
  font-size: 14px;
  word-break: break-word;
}

.job-candidate-info .name {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 10px;
}

/* -- */

/* posts-staging */
.posts-staging-btn {
  display: none;
  position: fixed;
  top: 150px;
  left: 50%;
  transition: all 0.2s ease;
  transform: translate(-50%, -50%);
  z-index: 99;
}

/* -- */

/* POST */
/* ------------------------------- */

.post {
  position: relative;
  margin-bottom: 20px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0px 0px 30px 0px rgb(82 63 105 / 5%);
}

body.night-mode .post {
  background: var(--card-dark-color);
}

.post.flagged {
  padding: 15px;
  background: #f6f7f8;
}

.post .pin-icon {
  position: absolute;
  right: 18px;
  top: -10px;
  width: auto;
  font-size: 25px;
  color: #f9b340;
}

.post.boosted,
body.night-mode .post.boosted {
  border: 2px solid #ffa412;
}

.post .boosted-icon {
  position: absolute;
  left: -5px;
  top: -15px;
  width: auto;
  padding: 3px 6px;
  font-size: 16px;
  background: #ffa412;
  color: #ffffff;
  border-radius: 50%;
  -ms-transform: rotate(-20deg);
  /* IE 9 */
  -webkit-transform: rotate(-20deg);
  /* Safari */
  transform: rotate(-20deg);
  /* Standard syntax */
}

.post.pending,
body.night-mode .post.pending,
.blog.pending,
body.night-mode .blog.pending {
  border: 1px dashed #9b9b9b;
}

.post .pending-icon,
.blog .pending-icon {
  position: absolute;
  right: 18px;
  top: -18px;
  width: auto;
  font-size: 25px;
  color: #f9b340;
}

.post.highlighted {
  border: 1px solid #4083a9;
  box-shadow: inset 0 0 0 1px #4083a9;
}

.post.is_hidden {
  border: 2px dashed #aeaeae;
  border-radius: 8px;
  z-index: 1;
}

.post a:not(.dropdown-item):hover {
  text-decoration: underline;
}

.post-memory-header {
  padding: 10px 20px;
  border-bottom: 1px solid #f4f4f4;
  font-size: 14px;
  font-weight: 600;
  text-transform: capitalize;
}

body.night-mode .post-memory-header {
  border-color: var(--card-dark-divider);
}

.post-body.with-loader {
  padding: 16px;
}

.post-top-alert {
  padding: 10px 0;
  background: repeating-linear-gradient(45deg,
      #606dbc,
      #606dbc 10px,
      #465298 10px,
      #465298 20px);
  border-radius: 8px 8px 0 0;
  color: #fff;
  font-weight: 500;
  text-align: center;
  filter: grayscale(1);
}

.post-collaborative-alert {
  padding: 12px 0;
  background: #f7f7f7;
  border-radius: 8px 8px 0 0;
  color: #212529;
  font-size: 12px;
  text-align: center;
}

body.night-mode .post-collaborative-alert {
  background: #27333f;
  color: var(--body-color-dark);
}

.post-header {
  padding: 16px 16px 0;
  margin-bottom: 10px;
}

.post-avatar {
  position: relative;
  display: table-cell;
  vertical-align: top;
  padding-right: 10px;
}

.post-avatar-anonymous {
  padding: 5px;
  border-radius: 50%;
  overflow: hidden;
}

.post-avatar-picture {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #eee;
  width: 100%;
  height: 100%;
  padding-top: 100%;
  overflow: hidden;
  min-width: 60px;
  min-height: 60px;
  display: block;
  border-radius: 20px;
}

.post-avatar-picture.small {
  min-width: 25px;
  min-height: 25px;
}

.post-avatar-picture.large {
  min-width: 60px;
  min-height: 60px;
}

.post-avatar-picture.rounded {
  border-radius: 50%;
}

.post-avatar .online-dot {
  font-size: 10px;
  margin-right: 3px;
  position: absolute;
  top: 50px;
  right: 4px;
  border: 3px solid #fff;
  border-radius: 50%;
  color: #65a830;
}

body.night-mode .post-avatar .online-dot {
  border-color: var(--card-dark-color);
}

/* -- */

.post-meta {
  display: table-cell;
  vertical-align: top;
  width: 100%;
  word-break: break-word;
  word-wrap: break-word;
}

.post-meta .dropdown .dropdown-toggle {
  color: #888;
  padding: 6px 8px;
  border-radius: 10px;
}

.post-meta .dropdown .dropdown-toggle.show,
.post-meta .dropdown .dropdown-toggle:hover {
  color: #666;
  cursor: pointer;
  background: #f4f4f4;
}

body.night-mode .post-meta .dropdown .dropdown-toggle.show,
body.night-mode .post-meta .dropdown .dropdown-toggle:hover {
  background: var(--card-dark-divider);
  color: var(--body-color-dark);
}

.post-meta .dropdown-toggle:after {
  display: none !important;
}

.post-author {
  font-size: 14px;
  line-height: 20px;
  font-weight: bold;
}

.post-time {
  color: #999;
  font-size: 11px;
  line-height: 16px;
}

.post-time a {
  color: #999;
}

.post-time .fa:not(.fa-star):hover {
  cursor: pointer;
}


.post-time .btn-group {}

.post-time .btn-group,
.post-time .btn-group .btn {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 none !important;
  padding: 2px 4px !important;
  color: #999 !important;
}

.post-time .btn-group .btn:hover {
  background: #f3f3f3 !important;
}

.post-text {
  padding: 0 16px;
  text-align: initial;
  word-break: initial;
  word-wrap: break-word;
  overflow: hidden;
  margin-bottom: 10px;
  transition: height 0.2s;
}

.post-text blockquote {
  border-left: 2px solid #e9eaee;
  padding-left: 10px;
  margin-top: 10px;
}

body.night-mode .post-text blockquote {
  border-left-color: var(--card-dark-divider);
}

.post-product-container .post-text,
.post-media-meta .post-text {
  padding: 0;
}

.post-replace {
  font-size: 15px;
  line-height: 22px;
}

.post-replace>a[data-readmore-toggle] {
  margin-left: 16px;
}

.post-product-container .post-replace>a[data-readmore-toggle] {
  margin-left: 0;
}

.post-text-translation {
  border-left: 2px solid #e9eaee;
  padding-left: 10px;
  margin-top: 10px;
}

.post-text .twa {
  height: 1.6em !important;
  width: 1.6em !important;
  margin: 0 0.0665em 0 0.15em !important;
  vertical-align: -0.15em !important;
  background-size: 1.6em 1.6em !important;
}

.post-paid-description {
  margin-top: 20px;
  padding: 20px;
  background: #f7f7f7;
}

body.night-mode .post-paid-description {
  background: var(--card-dark-color);
}

.post-snippet {
  margin: 16px;
  border: 1px solid #f4f4f4;
  border-radius: 16px;
}

body.night-mode .post-snippet {
  border-color: var(--card-dark-divider);
}

.post-snippet-toggle {
  padding: 6px;
  border-radius: 4px;
  text-align: center;
}

.post-edit {
  padding: 0 16px;
}

.post-stats {
  margin-top: 15px;
  margin-bottom: 10px;
  padding: 0 16px;
  font-size: 11px;
  color: #999;
}

.post-actions {
  display: flex;
  margin-top: 10px;
  padding: 6px 16px 6px 16px;
  border-top: 1px solid #f4f4f4;
}

body.night-mode .post-actions {
  border-color: var(--card-dark-divider);
}

.post-actions .action-btn {
  flex: 1;
  padding: 10px;
  color: #555;
  font-size: 13px;
  font-weight: 700;
  line-height: 14px;
  text-align: center;
  border-radius: 14px;
  transition: all 0.1s ease-in-out;
}

body.night-mode .post-actions .action-btn {
  color: var(--body-color-dark);
}

.post-actions .action-btn:hover {
  background: #f7f7f7;
  cursor: pointer;
}

body.night-mode .post-actions .action-btn:hover {
  background: var(--card-dark-hover);
}

.post-tips {
  display: flex;
  gap: 10px;
  margin-top: 10px;
  padding: 6px 16px 6px 16px;
  border-top: 1px solid #f4f4f4;
}

body.night-mode .post-tips {
  border-color: var(--card-dark-divider);
}

.post-tips .btn {
  flex: 1;
  font-weight: 700;
  text-align: center;
  border-radius: 14px;
  transition: all 0.1s ease-in-out;
}

.post-footer {
  background: #f9f9f9;
  border-top: 1px solid #eee;
  border-radius: 0 0 14px 14px;
  padding: 0 15px;
}

body.night-mode .post-footer {
  background: var(--card-dark-color);
  border-top-color: var(--card-dark-divider);
}

.post-approval {
  background: #f9f9f9;
  border-top: 1px solid #eee;
  padding: 15px;
  text-align: right;
  border-radius: 0 0 16px 16px;
}

body.night-mode .post-approval {
  background: var(--card-dark-color);
  border-top-color: var(--card-dark-divider);
}

.post-social-share {
  padding-bottom: 15px;
  margin-bottom: 20px;
  text-align: center;
  border-bottom: 1px solid #f4f4f4;
}

body.night-mode .post-social-share {
  border-color: var(--card-dark-divider);
}

.post-comments {
  padding-top: 10px;
}

/* comments-filter */
.comments-filter {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e6ecf5;
}

body.night-mode .comments-filter {
  border-bottom-color: var(--card-dark-divider);
}

.comments-filter .btn-group .btn,
.comments-filter .btn-group .open .btn.dropdown-toggle,
.comments-filter .btn-group .btn-default.active,
.comments-filter .btn-group .btn-default:active,
.comments-filter .btn-group .open .btn-default.dropdown-toggle {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  color: var(--link-color) !important;
}

.comments-filter .dropdown-menu {
  min-width: 100%;
}

.comments-filter .dropdown-menu .dropdown-item {
  padding: 4px 16px;
}

/* -- */

/* post images */
.pg_wrapper a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  background-color: #f5f5f5;
}

body.night-mode .pg_wrapper a {
  background-color: var(--card-dark-hover);
}

.pg_wrapper .more {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  color: #fff;
  font-size: 2em;
  font-weight: 600;
  line-height: 100%;
  text-align: center;
  padding-top: 40%;
}

.pg_1x {
  text-align: center;
}

.pg_1x img {
  max-width: 100%;
  max-height: 680px;
}

.pg_2x {
  width: 50%;
  float: left;
  padding-right: 1px;
}

.pg_2x>a {
  padding-bottom: 100%;
}

.pg_2o3,
.pg_1o3 {
  float: left;
  margin-right: 1px;
}

.pg_1o3 {
  margin-right: -1px;
}

.pg_2o3 .pg_2o3_in {
  margin-bottom: 1px;
}

.pg_2o3 .pg_2o3_in:last-child {
  margin-bottom: 0;
}

.pg_1o3 .pg_1o3_in {
  margin-bottom: 1px;
}

.pg_1o3 .pg_1o3_in:last-child {
  margin-bottom: 0;
}

/* -- */

/* post media */
.post-media {
  background: #f3f3f3;
  border-radius: 16px;
}

.post-media.module {
  background: transparent;
  border: 1px solid #f3f3f3;
}

body.night-mode .post-media.module {
  background: transparent;
  border-color: var(--card-dark-divider);
}

.post-snippet .post-media {
  border-radius: 4px;
}

body.night-mode .post-media {
  background: var(--card-dark-input);
}

.post-media.list {
  background: #fff;
  box-shadow: none;
  margin-bottom: 15px;
  border: 0;
}

body.night-mode .post-media.list {
  background: var(--card-dark-color);
}

.post-media img.img-fluid {
  width: 100%;
  max-height: 350px;
}

.post-media-image-wrapper {
  position: relative;
}

.post-media-image-meta {
  position: absolute;
  bottom: 15px;
  left: 15px;
}

.post-media-image {
  display: block;
  position: relative;
}

.post-media-image>div {
  border-radius: 16px;
}

.post-media-image img,
.post-media-image .image {
  width: 100%;
  height: 100%;
  overflow: hidden;
  min-width: 100px;
  min-height: 100px;
  border-radius: 16px;
}

.post-media-image .image {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #eee;
  padding-top: 50%;
}

body.night-mode .post-media-image .image {
  background-color: transparent;
}

.post-media-image .source {
  position: absolute;
  bottom: 10px;
  left: 10px;
  padding: 8px 12px;
  background: rgba(0, 0, 0, 0.65);
  color: #fff;
  font-size: 13px;
  border-radius: 10px;
  text-transform: uppercase;
}

.post-media-image .date {
  position: absolute;
  top: 20px;
  left: 20px;
  padding: 0;
  background: #fff;
  color: #000;
  font-size: 20px;
  line-height: 24px;
  font-weight: bold;
  border-radius: 10px;
  text-transform: uppercase;
  text-align: center;
}

body.night-mode .post-media-image .date {
  background: var(--card-dark-input);
  color: var(--body-color-dark);
}

.post-media-image .date .month {
  background: red;
  color: #fff;
  padding: 5px 20px;
  border-radius: 0 0 10px 10px;
}

.post-media-image .date .day {
  padding: 5px 20px;
}

.post-media-image .icon {
  position: absolute;
  bottom: -31px;
  left: 50%;
  margin-left: -31px;
  padding: 15px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

body.night-mode .post-media-image .icon {
  background: var(--card-dark-input);
}

.embed-facebook-wrapper iframe {
  display: none;
}

.embed-iframe-wrapper {
  padding: 0 16px;
}

.embed-iframe-wrapper * {
  width: 100% !important;
}

.embed-iframe-wrapper iframe {
  min-height: 100%;
}

.post-media-meta {
  padding: 15px;
  width: 100%;
  transition: all 0.2s;
}

.post-media-meta .title {
  display: block;
  font-size: 16px;
  font-weight: 600;
  line-height: 22px;
  word-break: break-word;
}

.post-media-meta .title:hover {
  text-decoration: none;
}

.post-media-meta .text {
  max-height: 135px;
  overflow: hidden;
}

.post-media-meta .info {
  color: #999;
  font-size: 11px;
}

.post-funding-meta,
.post-job-meta,
.post-course-meta,
.post-merit-meta {
  padding: 15px;
  padding-bottom: 0;
  text-align: center;
}

.post-funding-meta .funding-title,
.post-job-meta .job-title,
.post-course-meta .course-title {
  font-size: 18px;
  font-weight: 600;
  line-height: 26px;
  word-break: break-word;
}

.post-funding-meta .funding-completion {
  background: #f7f7f7;
  padding: 10px;
  border: 1px solid #e5e5e5;
  margin-top: 10px;
  border-radius: 6px;
  text-align: left;
}

.post-funding-meta .funding-description,
.post-job-meta .job-description,
.post-course-meta .course-description,
.post-merit-meta .merit-description {
  background: #f7f7f7;
  padding: 10px;
  border: 1px solid #e5e5e5;
  margin-top: 10px;
  border-radius: 16px;
}

body.night-mode .funding-completion,
body.night-mode .funding-description,
body.night-mode .job-description,
body.night-mode .course-description,
body.night-mode .merit-description {
  border-color: var(--card-dark-divider);
  background: var(--card-dark-input);
}

/* -- */

/* post-downloader */
.post-downloader {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  padding: 10px 16px;
  margin-top: 10px;
}

body.night-mode .post-downloader {
  border-color: var(--card-dark-divider);
}

.post-downloader .icon {
  display: table-cell;
  vertical-align: middle;
  background-color: #f9f9f9;
  padding: 10px 20px;
  border-radius: 16px;
}

body.night-mode .post-downloader .icon {
  background-color: var(--card-dark-input);
}

.post-downloader .info {
  display: table-cell;
  vertical-align: top;
  padding-left: 10px;
  width: 100%;
}

/* -- */

/* post product */
.post-product-container {
  padding: 0 16px;
}

.post-product-wrapper {
  display: flex;
  background: #f7f7f7;
  padding: 10px 5px;
  border: 1px solid #e5e5e5;
  font-size: 14px;
  border-radius: 16px;
}

body.night-mode .post-product-wrapper {
  border-color: var(--card-dark-divider);
  background: var(--card-dark-input);
}

.post-product-details {
  flex: 1;
  border-right: 1px solid #e5e5e5;
  text-align: center;
  vertical-align: middle;
}

body.night-mode .post-product-details {
  border-color: var(--card-dark-divider);
}

.post-product-details:last-child {
  border-right: 0;
}

.post-product-details .title {
  font-weight: 600;
  margin-bottom: 3px;
}

.post-product-details .description {
  color: #555;
}

.post-product-details .description .badge {
  font-size: 13px;
  padding: 4px 12px;
}

body.night-mode .post-product-details .description {
  color: var(--body-color-dark);
}

/* -- */

/* action-dropdown-menu */
.action-dropdown-menu .fa {
  margin-right: 10px;
  color: #8b8b8b;
}

.action-dropdown-menu .action {
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
}

.action-dropdown-menu .action.no-icon {
  padding-left: 22px;
  font-weight: normal;
}

.action-dropdown-menu .action.no-desc {
  font-weight: normal;
}

.action-dropdown-menu .action-desc {
  padding-left: 30px;
  color: #555;
  font-size: 11px;
  line-height: 16px;
}

body.night-mode .action-dropdown-menu .action-desc {
  color: #a2acb7;
}

/* -- */

/* polls */
.poll-options {
  padding: 0 16px;
}

.poll-option {
  display: table-cell;
  vertical-align: top;
  position: relative;
  width: 100%;
  padding: 8px 12px;
  background-color: #ebebeb;
  font-weight: 600;
  border-radius: 16px;
}

body.night-mode .poll-option {
  background-color: var(--card-dark-input);
}

.poll-option:hover {
  cursor: pointer;
  background: #d4d4d4;
}

.poll-option .percentage-bg {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background-color: #89a8e8;
  border-radius: 12px;
  opacity: 0.5;
}

body.night-mode .poll-option .percentage-bg {
  background-color: var(--link-color);
}

.poll-voters {
  display: table-cell;
  vertical-align: top;
  padding-left: 5px;
}

.poll-voters .more {
  width: 35px;
  height: 35px;
  background-color: #ebebeb;
  padding: 8px 0;
  border-radius: 50%;
  font-size: 13px;
  font-weight: 600;
  text-align: center;
  cursor: pointer;
}

body.night-mode .poll-voters .more {
  background-color: var(--card-dark-input);
}

/* -- */

/* youtube-player */
.youtube-player {
  position: relative;
  padding-top: 56%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  background: #000;
  border-radius: 16px;
}

.youtube-player iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: transparent;
}

.youtube-player img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: block;
  margin: auto;
  max-width: 100%;
  width: 100%;
  height: auto;
  cursor: pointer;
  transition: 0.4s all;
}

.youtube-player img:hover {
  filter: brightness(75%);
}

.youtube-player .play {
  width: 72px;
  height: 72px;
  left: 50%;
  top: 50%;
  margin-left: -36px;
  margin-top: -36px;
  position: absolute;
  background-image: url(/content/themes/default/images/icons/youtube.png);
  background-size: contain;
  cursor: pointer;
}

.youtube-player.with-live .play {
  width: 52px;
  height: 52px;
  left: 50%;
  top: 50%;
  margin-left: -26px;
  margin-top: -26px;
  position: absolute;
  background-image: url(/content/themes/default/images/play-button.png);
  background-size: contain;
  cursor: pointer;
}

/* -- */

/* who-shares */
.who-shares {
  background: #f3f3f3;
}

body.night-mode .who-shares {
  background: var(--body-bg-color-dark);
}

/* -- */

/* post-custom-fileds-wrapper  */
.post-custom-fileds-wrapper {
  background: #f7f7f7;
  padding: 10px 20px;
  border: 1px solid #e5e5e5;
  font-size: 14px;
  border-radius: 6px;
  text-align: left;
}

body.night-mode .post-custom-fileds-wrapper {
  background: var(--card-dark-color);
  border-color: var(--card-dark-divider);
}

.post-custom-fileds-wrapper div:not(:last-child) {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e7e7e7;
}

body.night-mode .post-custom-fileds-wrapper div:not(:last-child) {
  border-color: var(--card-dark-divider);
}

/* -- */

/* COMMENT */
/* ------------------------------- */

.comment {
  padding-bottom: 10px;
}

.comment-avatar {
  float: left;
}

.comment-avatar-picture {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #eee;
  width: 100%;
  height: 100%;
  padding-top: 100%;
  overflow: hidden;
  min-width: 46px;
  min-height: 46px;
  display: block;
  border-radius: 50%;
}

.comment-data,
.comment-edit {
  margin-left: 56px;
}

.comment-data .img-fluid {
  max-width: 30%;
  max-height: 100px;
  margin: 5px 0;
}

.comment-inner-wrapper {
  display: flex;
  margin-bottom: 5px;
}

.comment-inner {
  position: relative;
  /* :before */
  padding: 8px 12px;
  background-color: #fff;
  border-radius: 18px;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.1);
}

body.night-mode .comment-inner {
  background-color: var(--card-dark-input);
}

.comment-inner:before {
  content: "";
  display: block;
  position: absolute;
  left: -6px;
  top: 9px;
  width: 0;
  height: 0;
  border: 8px solid transparent;
  border-left-width: 0;
  border-right-color: #ffffff;
  cursor: default;
  z-index: 1;
  filter: drop-shadow(-1px 1px 0px rgba(0, 0, 0, 0.02));
}

body.night-mode .comment-inner:before {
  border-right-color: var(--card-dark-input);
}

.comment-author {
  font-weight: 500;
}

.comment-text {
  text-align: initial;
  word-break: break-word;
  word-wrap: break-word;
  overflow: hidden;
  margin-bottom: 5px;
}

.comment-text .twa {
  font-size: 1.4em;
}

.comment-actions>li {
  float: left;
  margin-right: 8px;
}

.comment-replies {
  padding-top: 10px;
}

.comment-replies>ul {
  width: 100%;
}

/* comment-form */
.post-form textarea,
.comment-form textarea {
  background: #fff;
  direction: ltr;
  display: block;
  border: 0;
  resize: none;
  outline: none;
  width: 100%;
  padding: 8px 16px;
  padding-right: 136px;
  margin: 0;
  font-size: 16px;
  line-height: 26px;
  height: 46px;
  border-radius: 12px;
}

.post-form textarea {
  padding-right: 44px;
}

.post-edit .post-form textarea,
.post-edit .comment-form textarea {
  background: #f7f7f7;
}

body.night-mode .post-form textarea,
body.night-mode .comment-form textarea {
  color: var(--card-dark-input-color);
  background: var(--card-dark-input);
}

@media (min-width: 992px) {
  .comment-form textarea {
    padding-right: 106px;
  }
}

.post-form .x-form-tools,
.comment-form .x-form-tools {
  bottom: 8px;
  right: 14px;
}

/* -- */

.comment-voice-notes,
.comment-attachments {
  background: #fff;
  padding: 10px 14px 4px 14px;
  margin-top: 5px;
  border: 1px solid #eee;
  border-radius: 18px;
}

.comment-voice-notes {
  display: none;
  padding: 10px;
}

body.night-mode .comment-voice-notes,
body.night-mode .comment-attachments {
  background: transparent;
  border-color: var(--card-dark-divider);
}

.comment .comment-btn {
  display: none;
  float: right;
}

.comment:hover .comment-btn {
  display: block;
}

.live-comments .comment:hover .comment-btn {
  display: none;
}

.comment-btn button.close {
  font-size: 1.4em;
}

.comment .dropdown-toggle-icon {
  color: #999;
  padding: 5px;
  border-radius: 50%;
}

.comment .dropdown-toggle-icon:hover {
  background: #e9eaee;
  cursor: pointer;
}

body.night-mode .comment .dropdown-toggle-icon:hover {
  background: var(--card-dark-divider);
}

/* BLOG */
/* ------------------------------- */

/* blog-container */
.blog-container {
  background: #ffffff;
  border-radius: 16px;
  overflow: hidden;
  margin-bottom: 20px;
  display: block;
  color: inherit;
  text-decoration: none;
  position: relative;
}

body.night-mode .blog-container {
  background: var(--card-dark-color);
}

@media (min-width: 768px) {
  .blog-container {
    height: 410px;
  }

  .blog-container.primary {
    background: var(--link-color);
  }
}

.blog-image {
  min-height: 150px;
}

@media (min-width: 576px) {
  .blog-image {
    overflow: hidden;
    height: 150px;
  }
}

.blog-image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

@media (min-width: 768px) {
  .blog-container.primary .blog-image {
    display: inline-block;
    width: 50%;
    height: 100%;
    max-height: 100%;
  }

  .blog-container.primary .blog-image img {
    width: auto;
    max-width: inherit;
  }
}

.blog-source {
  position: absolute;
  top: 110px;
  left: 10px;
  padding: 6px;
  background: rgba(0, 0, 0, 0.65);
  color: #fff;
  font-size: 13px;
  border-radius: 3px;
  text-transform: uppercase;
}

.blog-container.primary .blog-source {
  bottom: 10px;
  top: auto;
}

.blog-content {
  padding: 10px;
}

@media (min-width: 768px) {
  .blog-container.primary .blog-content {
    color: #fff;
    display: inline-block;
    vertical-align: top;
    width: 49%;
  }
}

.blog-content h3 {
  margin: 0;
  font-weight: 900;
  font-size: 20px;
  text-transform: uppercase;
}

@media (min-width: 576px) {
  .blog-container .blog-content h3 {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    line-height: 24px;
    max-height: 72px;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
}

@media (min-width: 768px) {
  .blog-container.primary .blog-content h3 {
    font-size: 26px;
    line-height: 30px;
    max-height: 180px;
    -webkit-line-clamp: 6;
  }
}

.blog-content .text {
  margin: 12px 0;
  font-size: 13px;
}

@media (min-width: 576px) {
  .blog-container .blog-content .text {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    line-height: 18px;
    max-height: 108px;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
  }
}

@media (min-width: 768px) {
  .blog-container.primary .blog-content .text {
    margin: 13px 0;
    font-size: 16px;
    font-weight: 300;
    line-height: 20px;
    max-height: 140px;
    -webkit-line-clamp: 7;
  }
}

@media (min-width: 768px) {
  .blog-container.primary .text-link {
    color: #eee;
  }
}

.blog-content .post-avatar {
  padding-right: 5px;
  padding-top: 3px;
}

.blog-more {
  width: 0%;
  height: 100%;
  color: #aaa;
  background-color: var(--link-color);
  position: absolute;
  top: 0;
  opacity: 0;
  text-align: center;
  -o-transition: all 0.4s ease-out 0s;
  transition: all 0.4s ease-out 0s;
}

.blog-more span {
  position: absolute;
  top: calc(50% - 22px);
  left: calc(50% - 45px);
  border: 1px solid #fff;
  display: inline-block;
  padding: 10px 30px;
  border-radius: 16px;
  color: #fff;
  font-size: 16px;
}

.blog-container:hover .blog-more {
  width: 100%;
  opacity: 0.95;
}

/* -- */

/* blog */
.blog {
  position: relative;
  border-radius: 16px;
}

.blog-wrapper {
  background: #fff;
  padding: 30px;
  border-radius: 16px 16px 0 0;
}

.blog-wrapper.no-footer {
  border-radius: 16px;
}

body.night-mode .blog-wrapper {
  background: var(--card-dark-color);
}

.blog-wrapper h3 {
  margin-top: 0;
  margin-bottom: 20px;
}

.blog-meta-counter {
  display: inline-block;
  padding: 6px 14px;
  margin-bottom: 5px;
  font-size: 13px;
  line-height: 24px;
  color: #515eab;
  background: #f5f5f5;
  border-radius: 12px;
}

.blog-meta-counter:hover {
  color: #999;
  background: #e1e1e1;
  cursor: pointer;
}

.blog-text {
  font-size: 1.2em;
  line-height: 1.6em;
  word-break: initial;
  word-wrap: break-word;
}

.blog-text img {
  max-width: 100% !important;
  height: auto !important;
}

.blog-text iframe {
  width: 100% !important;
}

.blog-text blockquote {
  border-left: 2px solid #ccc;
  margin-left: 1.5rem;
  padding-left: 1rem;
}

body.night-mode .blog-text blockquote {
  border-left-color: var(--card-dark-divider);
}

.blog-tags {
  margin-top: 20px;
}

.blog-tags ul>li {
  display: inline-block;
  margin-right: 4px;
  margin-top: 4px;
}

.blog-tags ul>li>a {
  border-radius: 12px;
  background: #f5f5f5;
  padding: 4px 18px;
  line-height: 24px;
  color: #555;
  font-weight: 600;
  font-size: 13px;
  text-transform: uppercase;
  text-align: center;
  word-break: break-all;
  word-wrap: break-word;
  display: inline-block;
}

.blog-tags ul>li>a:hover {
  background: #b9b9b9;
  color: #fff;
}

/* -- */

/* blogs-widget */
.blogs-widget-header {
  margin-bottom: 20px;
  border-bottom: 1px solid #e1e1e1;
}

body.night-mode .blogs-widget-header {
  border-color: var(--card-dark-divider);
}

.blogs-widget-title {
  display: inline-block;
  margin: 0;
  margin-bottom: -1px;
  text-transform: uppercase;
  white-space: nowrap;
  font-weight: 500;
  font-size: 18px;
  line-height: 40px;
  color: var(--link-color);
  border-bottom: 1px solid var(--link-color);
}

.blogs-widget-title.lg {
  line-height: 60px;
}

/* -- */

/* .blog-categories */
.blog-categories {
  margin-bottom: 15px;
}

.blog-categories li {
  float: left;
  margin-right: 5px;
  margin-bottom: 5px;
}

.blog-category {
  border-radius: 12px;
  background: #d8daf2;
  padding: 4px 14px;
  line-height: 24px;
  color: #515eab;
  font-weight: 600;
  font-size: 13px;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
  display: inline-block;
}

body.night-mode .blog-category {
  background: #3f4851;
  color: var(--body-color-dark);
}

.blog-category.small {
  font-size: 9px;
}

.blog-category:hover,
body.night-mode .blog-category:hover {
  background: var(--link-color);
  color: #fff;
}

/* -- */


/* blog references */

.blog-references-section {
  margin-top: 1.25rem;
  padding: 1.25rem 1.35rem;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.02);
}

.blog-references-heading {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0 0 1rem 0;
  padding-bottom: 0.65rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.55);
}

.blog-references-heading i {
  font-size: 0.95rem;
  opacity: 0.85;
}

.blog-references-list {
  margin: 0;
  padding-left: 1.35rem;
  list-style-position: outside;
}

.blog-references-item {
  margin-bottom: 0.65rem;
  padding-left: 0.35rem;
  line-height: 1.55;
  color: inherit;
}

.blog-references-item:last-child {
  margin-bottom: 0;
}

.blog-references-link {
  display: inline;
  text-decoration: none;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  transition: color 0.15s ease, border-color 0.15s ease;
}

.blog-references-link:hover {
  border-bottom-color: rgba(0, 0, 0, 0.35);
}

.blog-references-external {
  display: inline-block;
  margin-inline-start: 0.35rem;
  font-size: 0.7em;
  vertical-align: super;
  opacity: 0.45;
}

html[dir="RTL"] .blog-references-list {
  padding-right: 1.35rem;
  padding-left: 0;
}

body.night-mode .blog-references-section {
  border-color: var(--card-dark-divider, #2e3f4d);
  background: rgba(0, 0, 0, 0.2);
}

body.night-mode .blog-references-heading {
  border-bottom-color: var(--card-dark-divider, #2e3f4d);
  color: rgba(193, 212, 227, 0.65);
}

body.night-mode .blog-references-link {
  border-bottom-color: rgba(193, 212, 227, 0.25);
}

body.night-mode .blog-references-link:hover {
  border-bottom-color: rgba(193, 212, 227, 0.5);
}

/* -- */

/* AUTO-COMPLETE */
/* ------------------------------- */

.dropdown-menu.auto-complete {
  display: none;
}

.typeahead {
  position: relative;
  /* for dropdown-menu */
  float: left;
}

.typeahead input {
  background: transparent;
  width: 100%;
  color: #4e5665;
  font-size: 16px;
  line-height: 30px;
  outline: 0 none;
  border: 0 none;
}

body.night-mode .typeahead input {
  color: #fff;
}

.tags li {
  float: left;
  padding: 8px 12px;
  margin: 0 3px 3px 0;
  background: #f4f4f4;
  font-size: 12px;
  line-height: 16px;
  border-radius: 16px;
}

body.night-mode .tags li {
  background: var(--card-dark-color);
}

.tags button {
  font-size: 8px;
  margin-left: 4px;
}

/* Google Geo-Autocomplete */
.pac-container {
  z-index: 999999;
}

/* -- */

/* LIGHTBOX */
/* ------------------------------- */

.lightbox-open {
  overflow: hidden;
  /* hide the page scroll */
}

.lightbox {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.75);
  z-index: 9999;
  overflow-y: scroll;
}

@media (min-width: 992px) {
  .lightbox {
    overflow-y: none;
  }
}

.lightbox-container {
  display: table;
  width: 100%;
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.6);
  padding-right: 0;
  padding-left: 0;
}

@media (min-width: 992px) {
  .lightbox-container {
    height: 100%;
  }
}

.lightbox-preview {
  position: relative;
  display: block;
  width: 100%;
  vertical-align: middle;
  background: #000;
  text-align: center;
}

@media (min-width: 992px) {
  .lightbox-preview {
    display: table-cell;
    width: 60%;
    max-width: 800px;
  }
}

@media (min-width: 1200px) {
  .lightbox-preview {
    width: 70%;
  }
}

.lightbox-preview.nodata {
  width: 100%;
}

.lightbox-preview.with-live {
  padding: 25px;
}

.lightbox-preview.with-live video {
  top: 0 !important;
  left: 0 !important;
}

.lightbox-exit {
  position: absolute;
  top: 4%;
  right: 2%;
  opacity: 0.5;
  color: #fff;
}

.lightbox-exit:hover {
  opacity: 1;
  cursor: pointer;
}

.lightbox-next,
.lightbox-prev {
  position: absolute;
  top: 50%;
  opacity: 0.5;
}

.lightbox-next {
  right: 2%;
}

.lightbox-prev {
  left: 2%;
}

.lightbox-next:hover,
.lightbox-prev:hover {
  opacity: 1;
  cursor: pointer;
}

.lightbox-next .fa,
.lightbox-prev .fa {
  color: #fff;
  text-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
}

.lightbox-download {
  position: absolute;
  bottom: 4%;
  left: 2%;
}

.lightbox-download a {
  color: #fff;
  opacity: 0.5;
}

.lightbox-download a:hover {
  opacity: 0.75;
}

.lightbox-preview img {
  margin: 0 auto;
  max-width: 100%;
  max-height: calc(100vh - 92px);
  /* 92px = 46*2 (header) */
}

.lightbox-data {
  display: block;
  width: 100%;
  vertical-align: top;
  background: #fff;
}

@media (min-width: 992px) {
  .lightbox-data {
    display: table-cell;
    width: 40%;
  }
}

@media (min-width: 1200px) {
  .lightbox-data {
    width: 30%;
  }
}

body.night-mode .lightbox-data {
  background: var(--card-dark-color);
}

.lightbox-post {
  padding: 0 8px;
  height: calc(100vh - 113px);
  /* 113px = 46*2 (header) + 21px (close btn) */
}

/* -- */

/* STORIES */
/* ------------------------------- */

.stories-wrapper {
  overflow: auto;
  padding-bottom: 0;
  margin-bottom: 5px;
}

.stories.carousel {
  overflow: unset !important;
}

.add-story {
  position: relative;
  display: inline-block;
  width: 110px;
  height: 160px;
  margin-bottom: 25px;
  cursor: pointer;
}

.add-story .img {
  display: block;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  border-radius: 16px;
}

.add-story .add {
  position: absolute;
  bottom: -16px;
  left: 50%;
  transform: translateX(-50%);
  padding: 6px;
  border-radius: 16px;
  background: #fff;
  font-size: 14px;
  color: var(--link-color);
  fill: var(--link-color);
}

body.night-mode .add-story .add {
  background: var(--card-dark-color);
}

.stories.sngine.carousel .story {
  width: 110px;
  max-width: 100%;
}

.stories.sngine.carousel .story>.item-link>.item-preview {
  max-height: 100%;
  height: 160px;
}

.stories.sngine .story>a>.item-preview>img {
  border-radius: 16px;
  padding: 2px;
  border: 2px solid var(--link-color);
}

.stories.sngine .story.seen {
  opacity: 0.5;
}

.stories.carousel .story>.item-link>.info {
  font-size: 13px;
}

#zuck-modal-content .story-viewer.muted .tip.muted {
  display: none !important;
}

/* -- */

/* CHAT */
/* ------------------------------- */

/* chat-sidebar */
.chat-sidebar {
  display: none;
  position: fixed;
  right: 10px;
  top: 80px;
  bottom: 10px;
  width: 65px;
}

body.n_activated .chat-sidebar,
body.n_live .chat-sidebar {
  top: 130px;
}

@media (min-width: 1200px) {
  .chat-sidebar {
    display: block;
  }
}

/* chat-sidebar-content */
.chat-sidebar-content {
  position: absolute;
  top: 0;
  bottom: 120px;
  width: 100%;
}

.chat-avatar-wrapper {
  margin-bottom: 5px;
  cursor: pointer;
}

.chat-avatar-wrapper:hover .last-seen {
  opacity: 1;
}

.chat-avatar {
  position: relative;
  width: 50px;
  height: 50px;
  margin-bottom: 5px;
  margin-left: auto;
  margin-right: auto;
}

.chat-avatar img {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #eee;
  width: 100%;
  height: 100%;
  border-radius: 50%;
}

.chat-avatar .online-status {
  position: absolute;
  bottom: 0;
  right: 4px;
  border: 3px solid var(--body-bg-color);
  border-radius: 50%;
  font-size: 8px;
  color: #999;
}

body.night-mode .chat-avatar .online-status {
  border-color: var(--body-bg-color-dark);
}

.chat-avatar .online-status.online {
  color: #65a830;
}

.chat-avatar-wrapper .last-seen {
  opacity: 0;
  background: #e7eaee;
  color: #666;
  font-size: 8px;
  padding: 2px;
  border-radius: 2px;
  text-align: center;
  transition: all 0.3s ease;
}

body.night-mode .chat-avatar-wrapper .last-seen {
  background: var(--card-dark-color);
  color: #999;
}

.chat-sidebar.disabled .chat-sidebar-content {
  opacity: 0.3;
}

.chat-sidebar.disabled .chat-sidebar-content .online,
.chat-sidebar.disabled .chat-sidebar-content .offline {
  display: none;
}

/* -- */

/* chat-sidebar-footer */
.chat-sidebar-footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: right;
}

/* -- */

/* chat-widget */
.chat-widget {
  display: none;
  position: fixed;
  bottom: 0;
  right: 10px;
  width: 340px;
  z-index: 1000;
  box-shadow: 0 12px 28px 0 rgb(0 0 0 / 5%), 0 2px 10px 0 rgb(0 0 0 / 4%);
}

@media (min-width: 992px) {
  .chat-widget {
    display: block;
  }
}

/* -- */

/* chat-head-title */
.chat-widget-head {
  background: var(--header-bg-color);
  width: 100%;
  padding: 10px 16px;
  border-radius: 16px 16px 0 0;
  min-height: 60px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #f4f4f4;
  cursor: pointer;
}

body.night-mode .chat-widget-head {
  background: var(--card-dark-color);
  border-color: var(--card-dark-divider);
}

.chat-head-label {
  display: none;
  position: absolute;
  top: -15px;
  right: 5px;
}

.chat-widget.chat-box.new .chat-head-label {
  display: block;
}

.chat-user-card {
  display: flex;
  align-items: center;
  min-width: 0;
}

.chat-user-card .avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  margin-right: 10px;
  position: relative;
}

.chat-user-card .avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}

.chat-user-card .name {
  font-size: 14px;
  font-weight: 600;
  color: #555;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

body.night-mode .chat-user-card .name {
  color: var(--body-color-dark);
}

.chat-user-card .name>span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
  line-height: normal;
}

.chat-user-card .online-status {
  position: absolute;
  bottom: 0;
  right: 0;
  border: 2px solid #fff;
  border-radius: 50%;
  font-size: 9px;
  color: #65a830;
}

.chat-user-card .online-status.offline {
  color: #999;
}

.chat-head-btns {
  flex: 0 0 auto;
}

.chat-head-btn {
  margin-right: 4px;
  background: #fff;
  padding: 4px;
  border-radius: 10px;
}

body.night-mode .chat-head-btn {
  background: var(--card-dark-color);
}

.chat-head-btn:last-child {
  margin-right: 0;
}

.chat-head-btn:hover {
  background: #f4f4f4;
  cursor: pointer;
}

body.night-mode .chat-head-btn:hover {
  background: var(--card-dark-divider);
}

/* -- */

/* chat-widget-content */
.chat-widget-content {
  position: relative;
  /* for chat-to */
  display: none;
  background: #fff;
  padding: 0;
}

body.night-mode .chat-widget-content {
  background: var(--card-dark-color);
}

/* -- */

/* chat-to */
.chat-to {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background: #fff;
  border-bottom: 1px solid #f4f4f4;
  padding: 10px 10px 10px 40px;
}

body.night-mode .chat-to {
  background: var(--card-dark-input);
  border-color: var(--card-dark-divider);
}

.chat-to .to {
  position: absolute;
  top: 10px;
  left: 10px;
}

.panel-messages .chat-to {
  padding-top: 10px;
  padding-bottom: 10px;
}

.panel-messages .chat-to .to {
  top: 10px;
}

/* -- */

/* chat-conversations */
.chat-conversations {
  padding: 0 7px;
}

/* -- */

/* chat-typing */
.chat-typing {
  display: none;
  padding: 10px;
}

.loading-dots:after {
  content: " .";
  animation: dots 1s steps(5, end) infinite;
}

@keyframes dots {

  0%,
  20% {
    color: rgba(0, 0, 0, 0);
    text-shadow: 0.25em 0 0 rgba(0, 0, 0, 0), 0.5em 0 0 rgba(0, 0, 0, 0);
  }

  40% {
    color: var(--body-color);
    text-shadow: 0.25em 0 0 rgba(0, 0, 0, 0), 0.5em 0 0 rgba(0, 0, 0, 0);
  }

  60% {
    text-shadow: 0.25em 0 0 var(--body-color), 0.5em 0 0 rgba(0, 0, 0, 0);
  }

  80%,
  100% {
    text-shadow: 0.25em 0 0 var(--body-color), 0.5em 0 0 var(--body-color);
  }
}

/* -- */

/* chat-voice-notes & chat-attachments */
.chat-voice-notes {
  display: none;
}

.chat-voice-notes,
.chat-attachments {
  background: #fff;
  padding: 10px;
  border-top: 1px solid #f4f4f4;
}

body.night-mode .chat-voice-notes,
body.night-mode .chat-attachments {
  background: var(--card-dark-color);
  border-color: var(--card-dark-divider);
}

/* -- */

/* chat-form */
.chat-form {
  background: #fff;
  padding: 10px;
  border-top: 1px solid #f4f4f4;
  border-radius: 0 0 16px 16px;
}

body.night-mode .chat-form {
  background: var(--card-dark-color);
  border-color: var(--card-dark-divider);
}

.chat-form-message {
  background: #f7f7f7;
  padding: 14px;
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 69px;
  border-radius: 16px;
}

body.night-mode .chat-form-message {
  background-color: var(--card-dark-input);
}

.chat-form-message textarea,
.chat-form-message input[type="text"] {
  background: transparent;
  direction: ltr;
  display: block;
  border: 0 none;
  resize: none;
  outline: none;
  box-shadow: none;
  width: 100%;
  padding: 0;
  margin: 0;
  font-size: 16px;
  line-height: 26px;
  height: 26px;
  overflow: hidden;
}

body.night-mode .chat-form-message textarea,
body.night-mode .chat-form-message input[type="text"] {
  color: #fff;
}

.chat-form .x-form-tools {
  position: static;
  padding-top: 5px;
}

.chat-form ul.x-form-tools>li.x-form-tools-colors {
  color: var(--link-color);
}

.chat-form .emoji-menu {
  bottom: 40px;
  right: 100%;
  left: 2px;
}

.chat-form .emoji-menu:before {
  right: auto;
  left: 38px;
}

.chat-form .emoji-menu:after {
  right: auto;
  left: 39px;
}

/* -- */

/* chat-colors-menu */
.chat-colors-menu {
  display: none;
  position: absolute;
  bottom: 40px;
  left: 28px;
  width: 189px;
  margin: 0;
  padding: 6px;
  font-size: 13px;
  line-height: 100%;
  background-color: #fff;
  border: 1px solid #f4f4f4;
  border-radius: 16px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  z-index: 99999;
}

body.night-mode .chat-colors-menu {
  background-color: var(--card-dark-color);
  border-color: var(--card-dark-divider);
}

.chat-colors-menu .item {
  float: left;
  padding: 4px;
  margin-right: 1px;
  margin-bottom: 1px;
}

.chat-colors-menu .item:hover {
  cursor: pointer;
  background: #f3f3f3;
  border-radius: 4px;
}

body.night-mode .chat-colors-menu .item:hover {
  background: var(--card-dark-hover);
}

/* -- */

/* conversation */
.conversation {
  padding-top: 10px;
  margin-bottom: 20px;
}

.conversation-user {
  width: 30px;
  height: 30px;
  float: left;
  border-radius: 50%;
  overflow: hidden;
  margin-right: 10px;
}

.conversation-user img {
  width: 30px;
  height: 30px;
}

.conversation-body {
  position: relative;
  /* for arrow */
  float: left;
  max-width: -moz-calc(100% - 40px);
  /* 40px = (30px+10px) (avatar + margin) */
  max-width: -webkit-calc(100% - 40px);
  max-width: -o-calc(100% - 40px);
  max-width: calc(100% - 40px);
}

.conversation.right .conversation-user,
.conversation.right .conversation-body {
  float: right;
}

.conversation-body .text {
  float: left;
  background: #f0f2f5;
  padding: 6px 8px;
  border-radius: 12px;
  border-bottom-left-radius: 0;
  word-break: initial;
  word-wrap: break-word;
  max-width: 100%;
}

body.night-mode .conversation-body .text {
  background: var(--card-dark-input);
}

.conversation.right .conversation-body .text {
  float: right;
  background: var(--link-color);
  color: #fff;
  border-radius: 12px;
  border-bottom-right-radius: 0;
}

.conversation.right .conversation-body .text a {
  color: #fff;
}

.conversation-body .text a {
  text-decoration: underline;
}

.conversation-body .text a:hover {
  text-decoration: none;
}

.conversation-body .text .twa {
  font-size: 2em;
}

.conversation-body .img-wrapper {
  max-width: 180px;
  border-radius: 16px;
}

.conversation-body .video-wrapper {
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
  border-radius: 16px;
}

.chat-product {
  display: block;
  background: #f7f7f7;
  border-radius: 17px;
  height: auto;
  max-width: 240px;
  min-width: 240px;
}

body.night-mode .chat-product {
  background: var(--card-dark-input);
}

.chat-product-image {
  width: 240px;
  height: auto;
  border-radius: 16px 16px 0 0;
  overflow: hidden;
}

.chat-product-image img {
  display: block;
  width: 100%;
  height: auto;
}

.chat-product-info {
  padding: 10px;
}

.chat-product-title {
  font-size: 16px;
  font-weight: bold;
  display: block;
  overflow: hidden;
  word-break: break-all;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.chat-product-price {
  font-size: 16px;
  font-weight: 500;
  color: red;
}

/* -- */

/* attachments */
.conversation-body .attachments li {
  float: left;
  width: 64px;
  height: 64px;
  margin-right: 5px;
  margin-bottom: 5px;
}

.conversation-body .attachments li.item {
  border: 1px solid #eee;
  cursor: pointer;
}

.conversation-body .attachments li.item img {
  width: 64px;
  height: 64px;
}

.conversation-body .attachments li.loading {
  padding-top: 22px;
  /* 64px-20px(loader) / 2 */
  background: #f3f3f3;
  border: 1px solid #eee;
}

/* -- */

/* time */
.conversation-body .time {
  position: absolute;
  top: 100%;
  left: 0px;
  width: 204px;
  margin-top: 2px;
  color: #605f5f;
  font-size: 10px;
}

body.night-mode .conversation-body .time {
  color: #999;
}

.conversation.right .conversation-body .time {
  right: 0;
  left: auto;
  text-align: right;
}

.conversation-body .time:before {
  content: "\f017";
  font-family: "Font Awesome\ 5 Free";
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  margin-top: 4px;
  padding-right: 2px;
  font-size: 0.875em;
}

/* -- */

/* translations */
.conversation-body .translate {
  /* position: absolute;
  /* bottom: 0; */
  /* left: 110%; */
  color: #605f5f;
  font-size: 10px;
  margin-top: 2px;
}

body.night-mode .conversation-body .translate {
  color: #999;
}

.conversation.right .conversation-body .translate {
  right: 0;
  left: auto;
  text-align: right;
}

/* -- */

/* seen */
.conversation-body .seen {
  position: absolute;
  top: 100%;
  right: 0px;
  width: 204px;
  margin-top: 18px;
  margin-bottom: 4px;
  font-size: 10px;
  text-align: right;
}

.conversation-body .seen:before {
  content: "\f00c";
  font-family: "Font Awesome\ 5 Free";
  font-style: normal;
  font-weight: 900;
  text-decoration: inherit;
  margin-top: 4px;
  padding-right: 4px;
  font-size: 0.875em;
}

/* -- */

/* video-call-stream (video/audio chat) */
.video-call-stream-wrapper {
  position: relative;
  border-radius: 8px;
}

.video-call-stream,
.video-call-stream-local {
  border-radius: 8px;
}

.video-call-stream div,
.video-call-stream video {
  width: 100%;
  border-radius: 8px;
}

.video-call-stream video {
  height: 100%;
}

.video-call-stream-local {
  display: none;
  height: 420px;
}

@media (min-width: 992px) {
  .video-call-stream-local {
    height: 240px;
  }
}


.video-call-stream-local div,
.video-call-stream-local video {
  width: 100%;
  border-radius: 8px;
}

.video-call-stream-local video {
  height: 100%;
}

@media (min-width: 992px) {
  .video-call-stream-local {
    background: #000;
    position: absolute;
    width: 180px;
    height: 240px;
    top: 20px;
    right: 20px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
    border: 1px solid #fff;
  }

  .video-call-stream-local div {
    width: 180px;
    height: 240px;
  }
}

/* -- */

/* EMOJI */
/* ------------------------------- */

.emoji-menu {
  display: none;
  position: absolute;
  bottom: 30px;
  right: 0;
  min-width: 252px;
  margin: 0;
  padding: 6px 2px 0 6px;
  font-size: 13px;
  line-height: 100%;
  background-color: #fff;
  border: 1px solid #f5f5f5;
  border-radius: 16px;
  box-shadow: rgb(0 0 0 / 10%) 0px 10px 15px -3px, rgb(0 0 0 / 10%) 0px 4px 6px -4px;
  z-index: 99999;
}

body.night-mode .emoji-menu {
  background-color: var(--card-dark-color);
  border-color: var(--card-dark-divider);
}

.publisher .emoji-menu {
  bottom: auto;
  top: 25px;
  right: -4px;
}

.lightbox .emoji-menu {
  bottom: auto;
  top: 27px;
  right: -7px;
}

.emoji-menu .item {
  float: left;
  padding: 3px;
  margin-right: 3px;
  margin-bottom: 3px;
}

.emoji-menu .item:hover {
  cursor: pointer;
  background: #f3f3f3;
  border-radius: 4px;
}

body.night-mode .emoji-menu .item:hover {
  background: var(--card-dark-divider);
}

.emoji-menu .item>img {
  width: 65px;
  height: 65px;
}

.emoji-menu .nav-tabs {
  border-top: 1px #f3f3f3 solid;
  border-bottom: 0;
  margin: 0px -2px 0px -6px;
  padding: 0 20px;
}

body.night-mode .emoji-menu .nav-tabs {
  border-color: var(--card-dark-divider);
}

.emoji-menu .nav-tabs>li>.nav-link {
  color: #555;
  padding: 14px 18px;
  margin: 0;
  border: 0;
  border-radius: 0;
  border-top: 2px solid transparent;
}

body.night-mode .emoji-menu .nav-tabs>li>.nav-link {
  color: var(--body-color-dark);
}

.emoji-menu .nav-tabs>li>.nav-link:hover {
  background: transparent;
  color: var(--link-color);
  border-color: transparent;
  border-bottom: 0;
}

.emoji-menu .nav-tabs>li>.nav-link.active,
.emoji-menu .nav-tabs>li>.nav-link.active:hover,
.emoji-menu .nav-tabs>li>.nav-link.active:focus {
  border: 0;
  color: var(--link-color);
  background: transparent;
  border-top: 2px solid var(--link-color);
  margin-top: -1px;
}

/* -- */

/* REACTIONS */
/* ------------------------------- */

/* reactions-stats */
.reactions-stats {
  cursor: pointer;
  line-height: 24px;
}

.reactions-stats>.reactions-stats-item {
  float: left;
  background: #fff;
  margin: 0 0 0 -6px;
  padding: 3px;
  border-radius: 50%;
}

body.night-mode .reactions-stats>.reactions-stats-item {
  background: var(--card-dark-color);
}

.reactions-stats>.reactions-stats-item:nth-child(1) {
  z-index: 3;
}

.reactions-stats>.reactions-stats-item:nth-child(2) {
  z-index: 2;
}

.reactions-stats>.reactions-stats-item:nth-child(3) {
  z-index: 1;
}

/* -- */

.reactions-wrapper {
  position: relative;
}

/* reaction-btn */
.reaction-btn {
  display: flex;
  align-items: center;
  justify-content: center;
}

.reaction-btn .reaction-btn-icon {
  display: inline-block;
}

.reaction-btn .reaction-btn-icon .far {
  font-size: 20px;
  color: #000
}

.reaction-btn .reaction-btn-name {
  text-transform: capitalize;
  margin-left: 5px;
}

/* -- */

.reactions-container {
  display: none;
  position: fixed;
  background: #fff;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.2);
  border-radius: 40px;
  z-index: 4;
}

body.night-mode .reactions-container {
  background: var(--card-dark-input);
}

@media (max-width: 480px) {
  .reactions-container {
    width: 144px;
    border-radius: 20px;
  }
}

.reactions_item {
  width: 48px;
  height: 48px;
  float: left;
  transform: scale(1);
  transition: transform 0.25s ease;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation: slideUp cubic-bezier(0.49, 0, 0.46, 1);
  animation: slideUp cubic-bezier(0.49, 0, 0.46, 1);
}

.reactions_item.duration-1 {
  -webkit-animation-duration: 0.1s;
  animation-duration: 0.1s;
}

.reactions_item.duration-2 {
  -webkit-animation-duration: 0.2s;
  animation-duration: 0.2s;
}

.reactions_item.duration-3 {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
}

.reactions_item.duration-4 {
  -webkit-animation-duration: 0.4s;
  animation-duration: 0.4s;
}

.reactions_item.duration-5 {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
}

.reactions_item.duration-6 {
  -webkit-animation-duration: 0.6s;
  animation-duration: 0.6s;
}

.reactions_item.duration-7 {
  -webkit-animation-duration: 0.7s;
  animation-duration: 0.7s;
}

.reactions_item:hover {
  transform: scale(1.25) translate(0, -3px);
}

.reactions_item:after {
  content: attr(data-title);
  position: absolute;
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 16px;
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-size: 10px;
  font-weight: bold;
  font-style: normal;
  line-height: 16px;
  opacity: 0;
  overflow: hidden;
  padding: 0 8px;
  text-decoration: none;
  text-overflow: ellipsis;
  transition: opacity 50ms ease;
  -webkit-user-select: none;
  text-transform: capitalize;
  visibility: hidden;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -100%);
  transform: translate(-50%, -100%);
}

.reactions_item:hover:after {
  opacity: 1;
  visibility: visible;
}

@-webkit-keyframes slideUp {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }

  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}

@keyframes slideUp {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }

  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}

/* -- Reaction Emoji */
.inline-emoji {
  width: 18px;
  height: 18px;
}

.inline-emoji .emoji {
  transform: scale(0.15);
  top: -285%;
  right: 285%;
}

.no_animation *,
.no_animation *:after,
.no_animation *:before {
  animation: none !important;
}

.emoji {
  width: 120px;
  height: 120px;
  display: inline-block;
  border-radius: 50%;
  position: relative;
  transform: scale(0.325);
  top: -76%;
  right: 76%;
}

.emoji img {
  width: 120px;
  height: 120px;
}

.reaction img {
  animation-fill-mode: both;
  animation-duration: 1.3s;
  animation-iteration-count: infinite;
}


.reaction.reaction-1 img {
  animation-name: bounce;
  transform-origin: center bottom;
}

.reaction.reaction-2 img {
  animation-name: heartBeat;
  animation-timing-function: ease-in-out;
}

.reaction.reaction-3 img {
  animation-name: swing;
  transform-origin: top center;
}

.reaction.reaction-4 img {
  animation-name: pulse;
  animation-timing-function: ease-in-out;
}

.reaction.reaction-5 img {
  animation-name: fadeInDown;
}

.reaction.reaction-6 img {
  animation-name: swing;
  animation-timing-function: ease-in-out;
}

.reaction.reaction-7 img {
  animation-name: headShake;
  animation-timing-function: ease-in-out;
}


@keyframes bounce {

  from,
  20%,
  53%,
  to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -2px, 0) scaleY(1.1);
  }

  70% {
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -1px, 0) scaleY(1.05);
  }

  80% {
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 0, 0) scaleY(0.95);
  }

  90% {
    transform: translate3d(0, -1px, 0) scaleY(1.02);
  }
}

@keyframes heartBeat {
  0% {
    transform: scale(1);
  }

  14% {
    transform: scale(1.05);
  }

  28% {
    transform: scale(1);
  }

  42% {
    transform: scale(1.05);
  }

  70% {
    transform: scale(1);
  }
}

@keyframes swing {
  20% {
    transform: rotate3d(0, 0, 1, 2deg);
  }

  40% {
    transform: rotate3d(0, 0, 1, -2deg);
  }

  60% {
    transform: rotate3d(0, 0, 1, 0deg);
  }

  80% {
    transform: rotate3d(0, 0, 1, -2deg);
  }

  to {
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

@keyframes pulse {
  from {
    transform: scale3d(1, 1, 1);
  }

  50% {
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    transform: scale3d(1, 1, 1);
  }
}

@keyframes fadeInDown {
  from {
    opacity: 1;
    transform: translate3d(0, -5%, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes headShake {
  0% {
    transform: translateX(0);
  }

  6.5% {
    transform: translateX(-2px) rotateY(-9deg);
  }

  18.5% {
    transform: translateX(1px) rotateY(7deg);
  }

  31.5% {
    transform: translateX(-1px) rotateY(-5deg);
  }

  43.5% {
    transform: translateX(1px) rotateY(3deg);
  }

  50% {
    transform: translateX(0);
  }
}

/* -- */

/* RATING */
/* ------------------------------- */

/* star-rating */
.star-rating {
  display: flex;
  justify-content: flex-end;
  flex-direction: row-reverse;
  font-size: 28px;
  color: #999;
}

.star-rating input {
  display: none;
}

.star-rating label {
  margin-left: 5px;
  cursor: pointer;
}

.star-rating label:last-child {
  margin-left: 0;
}

.star-rating>label:hover i {
  color: #FF9800;
}

.star-rating>label:hover~label i {
  color: #FF9800;
}

.star-rating>input:checked~label i {
  color: #FF9800;
}

/* -- */

/* review-stars */
.review-stars {
  font-size: 22px;
  color: #999;
}

.review-stars.small {
  font-size: 13px;
}

.review-stars i.checked {
  color: #FF9800;
}

.review-review {
  font-size: 14px;
}

.review-photos img {
  width: 100px;
  height: 100px;
  border-radius: 16px;
  margin-right: 5px;
  margin-bottom: 5px;
  border: 1px solid #d5d5d5;
  padding: 2px;
}

.review-reply {
  background: #ededed;
  border-radius: 16px;
  width: 80%;
  margin: 0 auto;
  padding: 10px;
}

body.night-mode .review-reply {
  background: var(--card-dark-color);
}

/* -- */


/* PAGE = [BASIC] */
/* ------------------------------- */

/* page-header */
.page-header {
  background: linear-gradient(to right, #667db6, #0082c8, #0082c8, #667db6);
  position: relative;
  text-align: center;
  padding: 70px 15px;
  overflow: hidden;
  color: #fff;
  z-index: auto;
}

.page-header.mini {
  padding: 35px 15px;
}

@media (min-width: 768px) {
  .page-header {
    padding: 90px 15px;
  }

  .page-header.mini {
    padding: 45px 15px;
  }
}

.page-header.bank-transfer {
  z-index: 1;
  padding: 20px;
  background-color: #2196f3;
  background: linear-gradient(90deg, #03a9f4 0%, #2196f3 35%, #3f51b5 100%);
}

.page-header .floating-img {
  position: absolute;
  bottom: 10px;
  left: 10%;
  width: 300px;
  opacity: 0.5;
  /*z-index: -997;*/
}

.page-header .circle-1 {
  position: absolute;
  top: 60px;
  left: -180px;
  width: 290px;
  height: 290px;
  background-image: radial-gradient(circle 800px at 75% -25%,
      #000000 0,
      rgba(255, 255, 255, 0) 100%);
  border-radius: 50%;
  opacity: 0.05;
}

.page-header .circle-2 {
  position: absolute;
  top: 17px;
  right: -242px;
  width: 500px;
  height: 500px;
  background-image: radial-gradient(circle 800px at 10% -25%,
      #000000 0,
      rgba(255, 255, 255, 0) 100%);
  border-radius: 50%;
  opacity: 0.03;
}

.page-header .circle-3 {
  position: absolute;
  top: -73px;
  right: 78px;
  width: 200px;
  height: 200px;
  background-image: radial-gradient(circle 800px at 10% -25%,
      #000000 0,
      rgba(255, 255, 255, 0) 100%);
  border-radius: 50%;
  opacity: 0.04;
}

.page-header .inner {
  z-index: 999;
}

.page-header.bank-transfer .inner {
  border: 6px solid rgba(255, 255, 255, 0.3);
  padding: 20px;
  border-radius: 5px;
}

.page-header.bank-transfer .bank-info-meta {
  font-size: 18px;
}

.page-header.bank-transfer .bank-info-help {
  font-size: 12px;
  color: #eee;
  text-transform: uppercase;
}

/* -- */

/* footer */
.footer {
  border-top: 1px solid #e6ecf5;
  padding-top: 10px;
  padding-bottom: 10px;
  margin-top: 25px;
  margin-bottom: 25px;
}

@media (max-width: 768px) {
  .footer {
    margin-bottom: 85px;
  }
}

body.night-mode .footer {
  border-top: 1px solid var(--card-dark-divider);
}

@media (min-width: 768px) {
  .footer .links {
    text-align: right;
  }
}

/* -- */

/* mini-footer */
.mini-footer {
  font-size: 12px;
  margin-top: 25px;
  margin-bottom: 25px;
}

@media (max-width: 768px) {
  .mini-footer {
    margin-bottom: 85px !important;
  }
}

.mini-footer .copyrights {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 5px;
  margin-bottom: 5px;
  color: #858585;
  font-weight: 500;
  border-bottom: 1px solid #e9e9e9;
}

body.night-mode .mini-footer .copyrights {
  border-bottom-color: var(--card-dark-divider);
}

.mini-footer .links {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 -5px 0;
}

.mini-footer .links li {
  display: inline-block;
  padding-right: 5px;
  padding-left: 5px;
}

/* -- */

/* footer bottom bar */
.footer-bottom-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background: #fff;
  border-top: 1px solid #e6ecf5;
  height: 70px;
}

body.night-mode .footer-bottom-bar {
  background: #1c1e21;
  border-top: 1px solid #2c2f33;
}

@media (min-width: 768px) {
  .footer-bottom-bar {
    display: none;
  }
}

/* bottom bar links */
.footer-bottom-bar-links {
  display: flex;
  gap: 10px;
}

.footer-bottom-bar-links>.link {
  flex: 1;
  text-align: center;
  height: 70px;
}

.footer-bottom-bar-links>.link>a {
  position: relative;
  display: block;
  text-align: center;
  padding: 8px 10px 8px 10px;
  margin: 2px 0;
  border-radius: 10px;
  color: #000;
}

.footer-bottom-bar-links>.link>a:hover {
  background-color: rgb(160 160 160 / 10%);
}

body.night-mode .footer-bottom-bar-links>.link>a:hover {
  background-color: rgb(234 234 234 / 10%);
}

.footer-bottom-bar-links .link>a>.title {
  font-size: 12px;
  line-height: 26px;
}

body.night-mode .footer-bottom-bar-links .link>a>.title {
  color: #c1d4e3;
}

.footer-bottom-bar-links>.link.active>a>.title,
body.night-mode .footer-bottom-bar-links>.link.active>a>.title {
  color: var(--link-color);
  font-weight: bold;
}

.footer-bottom-bar-links .dropdown-widget {
  box-shadow: none;
  border-radius: 8px 8px 0 0;
}

.footer-quick-adds {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 20px;
}

.footer-quick-adds .add-quick-item {
  flex: 1;
  text-align: center;
  background: #f7f7f7;
  padding: 10px;
  border-radius: 12px;
  min-width: 150px;
  color: #000;
  cursor: pointer;
  font-size: 13px;
}

.footer-quick-adds .add-quick-item.full {
  flex-basis: 100%;
}

.footer-quick-adds .add-quick-item:hover {
  background: #f3f6f9;
}

body.night-mode .footer-quick-adds .add-quick-item {
  background: var(--card-dark-hover);
  color: #c1d4e3;
}

body.night-mode .footer-quick-adds .add-quick-item:hover {
  background: var(--card-dark-input);
}

.quick-menu-items {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 15px;
}

.quick-menu-item,
.quick-menu-item-mini {
  flex: 1;
  display: block;
  background: #f7f7f7;
  padding: 20px 15px;
  border-radius: 12px;
  color: #000;
}

body.night-mode .quick-menu-item,
body.night-mode .quick-menu-item-mini {
  background: var(--card-dark-hover);
  color: #c1d4e3;
}

.quick-menu-item-mini {
  min-width: 150px;
  font-size: 13px;
}

/* -- */

/* language-dropdown */
.language-dropdown {
  padding: 8px 12px;
  border-radius: 4px;
}

.language-dropdown:hover {
  background: #f3f6f9;
}

/* -- */

/* PAGE = [404] */
/* ------------------------------- */

.notfound-wrapper {
  position: relative;
  min-height: 560px;
}

.notfound {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width: 560px;
  width: 100%;
  padding-left: 160px;
  line-height: 1.1;
}

.notfound .notfound-circle {
  position: absolute;
  left: 0;
  top: 0;
  width: 140px;
  height: 140px;
  font-size: 140px;
}

.notfound .notfound-circle:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(2.4);
  -ms-transform: scale(2.4);
  transform: scale(2.4);
  border-radius: 50%;
  background-color: #f2f5f8;
  z-index: -1;
}

body.night-mode .notfound .notfound-circle:before {
  background-color: var(--card-dark-color);
}

@media only screen and (max-width: 767px) {
  .notfound {
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 110px;
  }

  .notfound .notfound-circle {
    width: 110px;
    height: 110px;
    font-size: 110px;
  }
}

.notfound h1 {
  font-family: "Nunito", sans-serif;
  font-size: 65px;
  font-weight: 700;
  margin-top: 0px;
  margin-bottom: 10px;
  color: #151723;
  text-transform: uppercase;
}

.notfound h2 {
  font-family: "Nunito", sans-serif;
  font-size: 21px;
  font-weight: 400;
  margin: 0;
  text-transform: uppercase;
  color: #151723;
}

body.night-mode .notfound h1,
body.night-mode .notfound h2 {
  color: #fff;
}

/* -- */

/* PAGE = [OAUTH] */
/* ------------------------------- */

/* ouath-card */
.card-ouath-overlay {
  background: #000;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0.6;
  transition: opacity 0.5s;
  z-index: 1002;
}

.card-ouath {
  background: #fff;
  border: 0;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  z-index: 1003;
}

/* -- */

/* PAGE = [INDEX] */
/* ------------------------------- */

/* index-body */
body.index-body {
  padding-top: 0;
}

/* -- */

/* landing-page */
.landing-row {
  height: calc(100vh);
}

@media (max-width: 576px) {
  .landing-row {
    margin-right: -15px;
    margin-left: -15px;
  }
}

.landing-left {
  position: relative;
  background: #2b354c;
  color: #fff;
  box-shadow: 2px 0 10px rgb(0 0 0 / 30%);
}

.landing-left:before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  background-size: cover;
  background-repeat: no-repeat;
  left: 0;
  right: 0;
  background-position: center;
  opacity: 0.1;
}

.landing-intro {
  padding: 60px 20px;
  margin: 0 auto;
  max-width: 550px;
}

@media (min-width: 992px) {
  .landing-intro {
    padding: 110px 50px;
  }
}

.landing-slider {
  margin-top: 50px;
}

.landing-slides {
  padding: 0;
  width: 100%;
  height: 420px;
  display: block;
  margin: 0 auto;
  position: relative;
}

.landing-slides * {
  user-select: none;
}

.landing-slides input {
  display: none;
}

.landing-slide-container {
  display: block;
}

.landing-slide {
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  max-width: 420px;
  height: 420px;
  display: block;
  position: absolute;
  margin: 0 auto;
  transition: all .7s ease-in-out;
}

.landing-slide img {
  width: 100%;
  height: auto;
}

.nav label {
  width: 40px;
  height: 100%;
  display: none;
  position: absolute;
  opacity: 0.1;
  z-index: 9;
  cursor: pointer;
  transition: opacity .2s;
  color: #FFF;
  font-size: 40pt;
  text-align: center;
  line-height: 380px;
  background-color: rgba(255, 255, 255, 0);
  text-shadow: 0px 0px 15px rgb(119, 119, 119);
}

.slide:hover+.nav label {
  opacity: 0.5;
}

.nav label:hover {
  opacity: 1;
}

.nav .next {
  right: 0;
}

input:checked+.landing-slide-container .landing-slide {
  opacity: 1;
  transition: opacity 1s ease-in-out;
}

input:checked+.landing-slide-container .nav label {
  display: block;
}

.nav-dots {
  width: 100%;
  bottom: -20px;
  height: 11px;
  display: block;
  position: absolute;
  text-align: center;
}

.nav-dots .nav-dot {
  top: -5px;
  width: 7px;
  height: 7px;
  margin: 0 2px;
  position: relative;
  border-radius: 10px;
  display: inline-block;
  background-color: rgb(101 101 101);
}

.nav-dots .nav-dot:hover {
  cursor: pointer;
  background: rgb(255 255 255);
}

input#img-1:checked~.nav-dots label#img-dot-1,
input#img-2:checked~.nav-dots label#img-dot-2,
input#img-3:checked~.nav-dots label#img-dot-3 {
  background: rgb(255 255 255);
  width: 18px;
}

.landing-form {
  padding-top: 50px;
  max-width: 550px;
  margin: 0 auto;
}

@media (min-width: 992px) {
  .landing-form {
    padding-top: 120px;
  }
}

/* -- */

/* card-register */
.card-register {
  background: #fff;
  border: 0;
  font-size: 16px;
  padding: 20px;
}

@media (min-width: 992px) {
  .card-register {
    padding: 40px;
  }
}

.card-register .card-header {
  border: 0;
  background: transparent;
}

.card-register .card-header .card-title {
  font-size: 1.8em;
  font-weight: 900;
  margin-bottom: 15px;
}

.card-register .card-header .card-subtitle {
  font-size: 13px;
  color: #666;
}

body.night-mode .card-register .card-header .card-subtitle {
  font-size: 13px;
  color: #8f9ba5;
}

.card-register .form-control,
.card-register .form-select {
  border-radius: 16px;
  height: 60px;
}

.card-register .input-group>.input-group-text {
  border-radius: 16px 0 0 16px;
}

/* -- */

/* daytime_message */
.daytime_message {
  display: none;
  padding: 15px;
  margin-bottom: 20px;
  border-left: 2px solid #fba540 !important;
}

.daytime_message button {
  margin-top: 4px;
  font-size: 18px;
}

/* -- */

/* PAGE = [FORUMS] */
/* ------------------------------- */

/* forum-breadcrumb */
.forum-breadcrumb {
  padding: 16px 20px;
  margin-top: 20px;
  margin-bottom: 0;
  word-wrap: break-word;
  word-break: break-all;
}

/* -- */

/* forum-title */
.forum-title {
  margin-top: 20px;
  margin-bottom: 20px;
  word-wrap: break-word;
}

.forum-title h1 {
  font-size: 18px;
  margin-top: 0;
  margin-bottom: 5px;
}

.forum-title p {
  margin-bottom: 0;
}

/* -- */

/* forum-category */
.forum-category {
  padding: 15px 20px;
  margin-top: 20px;
  background-color: var(--link-color);
  color: #fff;
  font-weight: 600;
  font-size: 13px;
  border-radius: 16px 16px 0 0;
}

.forum-category a {
  color: #fff;
}

.forum-category a:hover {
  text-decoration: underline;
}

/* -- */

/* forum-head */
.forum-head {
  margin-right: 0;
  margin-left: 0;
}

.forum-head>.column {
  padding: 20px;
  background-color: #16232d;
  color: #fff;
  font-weight: 300;
  font-size: 12px;
  text-align: center;
  border-right: 1px solid #192534;
  border-left: 1px solid #161e27;
}

body.night-mode .forum-head>.column {
  background: var(--card-dark-input);
  border-right-color: var(--card-dark-divider);
  border-left-color: #121212;
}

.forum-head.threads>.column {
  background-color: #576c7c;
  border-right: 1px solid #374855;
  border-left: 1px solid #6d8292;
}

body.night-mode .forum-head.threads>.column {
  background: var(--card-dark-input);
}

.forum-head>.column:first-child {
  text-align: left;
  border-left: none;
}

.forum-head>.column:last-child {
  border-right: none;
}

/* -- */

/* forum-row */
.forum-row {
  display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  flex-wrap: wrap;
  margin-right: 0;
  margin-left: 0;
}

.forum-row>.column {
  display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  flex-direction: column;
  padding: 20px;
  background-color: #ffffff;
  border-bottom: 1px solid #e6e6e6;
  color: #808080;
  font-size: 12px;
  word-wrap: break-word;
}

body.night-mode .forum-row>.column {
  background: var(--card-dark-color);
  border-color: var(--card-dark-divider);
}

.forum-row>.column.icon {
  color: #999999;
  text-align: center;
}

.forum-row .sub-forums li {
  float: left;
  margin-right: 10px;
}

/* -- */

/* forum-meta */
.forum-meta-head {
  padding: 15px 20px 15px 20px;
  background-color: #16232d;
  color: #fff;
  font-size: 12px;
  font-weight: 300;
}

body.night-mode .forum-meta-head {
  background: var(--card-dark-input);
}

.forum-meta-conent {
  padding: 15px 20px 15px 20px;
  background-color: #fff;
  color: #808080;
  font-size: 12px;
}

.forum-meta-conent:last-child {
  border-radius: 0 0 16px 16px;
}

body.night-mode .forum-meta-conent {
  background-color: var(--card-dark-color);
}

/* -- */

/* forum-thread */
.forum-thread {
  padding: 20px 10px;
  margin-top: 10px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

body.night-mode .forum-thread {
  background: var(--card-dark-color);
}

.forum-thread .row {
  margin-left: 0;
  margin-right: 0;
}

.forum-thread .avatar {
  width: 80px;
  height: 80px;
  border-radius: 50%;
}

.forum-thread .time {
  padding-bottom: 5px;
  margin-bottom: 10px;
  border-bottom: 1px solid #f4f4f4;
}

body.night-mode .forum-thread .time {
  border-color: var(--card-dark-divider);
}

.forum-thread .text {
  word-wrap: break-word;
}

.forum-thread .text img,
.forum-thread .text iframe {
  max-width: 100%;
}

.forum-thread ul {
  margin: initial;
  padding-inline-start: 40px;
  list-style: initial;
}

/* -- */

/* forum-result */
.forum-result {
  margin-top: 20px;
}

.forum-result .head {
  padding: 10px 20px;
  background-color: #576c7c;
  color: #fff;
  border-radius: 16px 16px 0 0;
}

body.night-mode .forum-result .head {
  background-color: var(--card-dark-divider);
}

.forum-result .head a {
  color: #fff;
}

.forum-result .head a:hover {
  text-decoration: underline;
}

.forum-result .content {
  padding: 10px 20px;
  background-color: #ffffff;
  border-radius: 0 0 16px 16px;
}

body.night-mode .forum-result .content {
  background-color: var(--card-dark-color);
}

.forum-result .title {
  font-size: 14px;
}

.forum-result .snippet {
  background: #f4f4f4;
  padding: 8px 10px;
  word-wrap: break-word;
  border-radius: 16px;
}

body.night-mode .forum-result .snippet {
  background: var(--card-dark-input);
}

/* -- */

/* PAGE = [DIRECTORY] */
/* ------------------------------- */

.directory-card {
  display: block;
  width: 100%;
  height: 100%;
  background: #f6f7f9;
  padding: 25px;
  text-align: center;
  color: #555;
  border-radius: 16px;
}

body.night-mode .directory-card {
  background: var(--card-dark-input);
  color: var(--body-color-dark);
}

.directory-card:hover {
  background: #eee;
  color: #898f9c;
}

body.night-mode .directory-card:hover {
  background: var(--card-dark-hover);
}

.directory-card .title {
  margin-top: 15px;
  color: #4b4f56;
}

body.night-mode .directory-card .title {
  color: var(--link-color);
}

.directory-card p {
  margin-bottom: 0;
}

/* -- */

/* PAGE = [MESSAGES] */
/* ------------------------------- */

/* panel-messages */
.panel-messages .card-header .fa-circle {
  color: #65a830;
  font-size: 9px;
}

.panel-messages .card-body {
  padding: 0;
}

.panel-messages.fresh .card-body {
  position: relative;
}

.panel-messages .conversation-user {
  width: 50px;
  height: 50px;
}

.panel-messages .conversation-user img {
  width: 50px;
  height: 50px;
}

.panel-messages .conversation-body {
  /* 60px = (50px+10px) (avatars + margins) */
  max-width: calc(100% - 60px);
}

.panel-messages .conversation-body .text {
  background: #e9eaee;
}

/* -- */

/* PAGE = [LIVE] */
/* ------------------------------- */

.live-stream-wrapper {
  background: #323232;
  padding: 20px;
  border-radius: 16px;
}

body.night-mode .live-stream-wrapper {
  background: var(--card-dark-color);
}

@media (min-width: 992px) {
  .live-stream-wrapper {
    padding: 50px;
  }
}

.live-stream-title {
  color: #fff;
  font-size: 34px;
  line-height: 50px;
  margin-bottom: 10px;
}

.live-stream-video {
  position: relative;
  height: 500px;
}

.live-stream-video .live-counter {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 2;
}

.live-stream-video .live-counter .status {
  background: #dc3545;
  padding: 5px 15px;
  color: #fff;
  text-transform: uppercase;
  border-radius: 4px;
  font-weight: 600;
}

.live-stream-video .live-counter .status.offline {
  background: #383838;
}

.live-stream-video .live-counter .number {
  background: #383838;
  padding: 5px 10px;
  margin-left: 4px;
  color: #fff;
  text-transform: uppercase;
  border-radius: 4px;
}

.live-stream-video .live-status {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  padding: 10px 25px;
  background: #383838;
  color: #fff;
  text-align: center;
  border-radius: 16px;
  z-index: 4;
}

.live-stream-video .live-status.info {
  background: #1171ef;
}

.live-stream-video .live-status.success {
  background: #28a745;
}

.live-stream-video .live-status.error {
  background: #dc3545;
}

.live-stream-video .live-recording {
  display: none;
  position: absolute;
  top: 20px;
  right: 20px;
  color: #ff0000;
  font-weight: 600;
  background: #383838;
  padding: 5px 10px;
  border-radius: 4px;
  z-index: 2;
}

.live-stream-video .live-comments {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 20px;
  height: 200px;
  z-index: 3;
  background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
  border-radius: 0 0 16px 16px;
}

.live-stream-video .live-video-player {
  width: 100%;
  height: 100%;
  background: #000;
  border-radius: 16px;
}

.live-stream-video .live-video-player div {
  border-radius: 16px;
}

.live-stream-video .live-video-player video {
  border-radius: 16px;
  background: #000;
  height: auto !important;
  transform: none !important;
}

.live-stream-buttons {
  display: none;
  text-align: center;
  margin-top: 20px;
}

.live-stream-tips-wrapper {
  background: #111111;
  padding: 10px 15px;
  border-radius: 20px;
  margin-top: 8px;
  font-size: 12px;
  line-height: 18px;
}

/* -- */

/* PAGE = [PROFILE] */
/* ------------------------------- */

/* profile-header */
.profile-header {
  background: #fff;
  position: relative;
  margin-bottom: 20px;
  border-radius: 0 0 16px 16px;
}

body.night-mode .profile-header {
  background: var(--body-bg-color-dark);
}

@media (min-width: 992px) {
  .profile-header {
    margin-bottom: 40px;
  }
}

/* -- */

/* profile-cover-wrapper */
.profile-cover-wrapper {
  background: #424242;
  position: relative;
  height: 180px;
  overflow: hidden;
  border-radius: 0 0 16px 16px;
}

body.night-mode .profile-cover-wrapper {
  background: #151a1f;
}

@media (min-width: 576px) {
  .profile-cover-wrapper {
    height: 240px;
  }
}

@media (min-width: 768px) {
  .profile-cover-wrapper {
    height: 300px;
  }
}

@media (min-width: 992px) {
  .profile-cover-wrapper {
    height: 360px;
  }
}

/* -- */

/* profile-cover-wrapper -> img */
.profile-cover-wrapper img.js_position-cover-cropped {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.profile-cover-wrapper img.js_lightbox:hover {
  cursor: pointer;
}

.profile-cover-wrapper img.js_position-cover-full {
  width: 100%;
  height: auto;
  cursor: move;
}

/* -- */

/* profile-cover-wrapper -> buttons */
.profile-cover-buttons {
  position: absolute;
  top: 10px;
  left: 10px;
  color: #fff;
  font-size: 12px;
  opacity: 0.4;
  transition: all 0.5s;
}

@media (min-width: 768px) {
  .profile-cover-buttons {
    top: 15px;
    left: 15px;
    font-size: 16px;
  }
}

.profile-cover-buttons>div {
  float: left;
  margin-right: 5px;
  padding: 4px 8px;
  border-radius: 50%;
  text-align: center;
  background: rgba(0, 0, 0, 0.1);
  transition: all 0.5s;
}

.profile-cover-buttons>div:hover {
  cursor: pointer;
  background: rgba(0, 0, 0, 0.25);
}

.profile-cover-wrapper:hover .profile-cover-buttons {
  opacity: 1;
}

.profile-cover-buttons form.x-uploader {
  position: relative;
}

.profile-cover-buttons>div.profile-cover-position-buttons {
  display: none;
  padding: 4px 6px;
}

/* -- */

/* profile-cover-wrapper -> loaders */
.profile-cover-change-loader {
  display: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0.5;
  background: #000;
  width: 100%;
  height: 100%;
  padding-top: 20%;
  transition: all 0.5s;
}

@media (min-width: 768px) {
  .profile-cover-change-loader {
    padding-top: 15%;
  }
}

.profile-cover-position-loader {
  display: none;
  position: absolute;
  top: 15px;
  left: 50%;
  padding: 8px 10px;
  background: rgba(0, 0, 0, 0.45);
  color: #fff;
  font-size: 11px;
  border-radius: 2px;
  transform: translate(-50%);
}

@media (min-width: 768px) {
  .profile-cover-position-loader {
    padding: 8px 24px;
    font-size: 13px;
    font-weight: 600;
  }
}

/* -- */

/* profile-avatar-wrapper */
.profile-avatar-wrapper {
  position: absolute;
  top: 112px;
  left: 50%;
  transform: translate(-50%);
  padding: 2px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3);
}

@media (min-width: 576px) {
  .profile-avatar-wrapper {
    top: 140px;
  }
}

@media (min-width: 768px) {
  .profile-avatar-wrapper {
    top: 170px;
  }
}

body.night-mode .profile-avatar-wrapper {
  background: var(--body-bg-color-dark);
}

.profile-avatar-wrapper.static {
  top: 0;
}

@media (min-width: 992px) {
  .profile-avatar-wrapper {
    padding: 4px;
  }

  .profile-avatar-wrapper:not(.static) {
    top: auto;
    bottom: -25px;
    left: 55px;
    transform: none;
  }
}

/* profile-avatar-wrapper -> img */
.profile-avatar-wrapper img {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  transition: all 0.5s;
}

.profile-avatar-wrapper img.js_lightbox:hover {
  cursor: pointer;
}

@media (min-width: 576px) {
  .profile-avatar-wrapper img {
    width: 120px;
    height: 120px;
  }
}

@media (min-width: 768px) {
  .profile-avatar-wrapper img {
    width: 150px;
    height: 150px;
  }
}

@media (min-width: 992px) {
  .profile-avatar-wrapper img {
    width: 160px;
    height: 160px;
  }
}

/* -- */

/* profile-avatar-wrapper -> buttons */
.profile-avatar-change,
.profile-avatar-crop,
.profile-avatar-delete {
  display: block;
  position: absolute;
  bottom: 5px;
  right: 5px;
  opacity: 0.4;
  color: #fff;
  font-size: 12px;
  padding: 4px 8px;
  border-radius: 50%;
  text-align: center;
  background: rgba(0, 0, 0, 0.1);
  transition: all 0.5s;
}

.profile-avatar-change:hover,
.profile-avatar-crop:hover,
.profile-avatar-delete:hover {
  cursor: pointer;
  background: rgba(0, 0, 0, 0.25);
}

.profile-avatar-crop {
  bottom: 35px;
  right: -15px;
}

.profile-avatar-delete {
  bottom: 75px;
  right: 5px;
}

.profile-avatar-change form.x-uploader {
  position: relative;
}

@media (min-width: 576px) {
  .profile-avatar-delete {
    bottom: 75px;
    right: -15px;
  }
}

@media (min-width: 768px) {

  .profile-avatar-change,
  .profile-avatar-crop,
  .profile-avatar-delete {
    bottom: 10px;
    right: 10px;
    font-size: 16px;
  }

  .profile-avatar-crop {
    bottom: 45px;
    right: -10px;
  }

  .profile-avatar-delete {
    bottom: 85px;
    right: -15px;
  }
}

.profile-avatar-wrapper:hover .profile-avatar-change,
.profile-avatar-wrapper:hover .profile-avatar-delete,
.profile-avatar-wrapper:hover .profile-avatar-crop {
  opacity: 1;
}

/* -- */

/* profile-avatar-wrapper -> loaders */
.profile-avatar-change-loader {
  display: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0.5;
  background: #000;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  padding-top: 50%;
  transition: all 0.5s;
}

/* -- */

/* profile-name-wrapper */
.profile-name-wrapper {
  background: #fff;
  padding-top: 30px;
  padding-bottom: 10px;
  text-align: center;
  font-size: 1.2em;
  font-weight: 600;
}

body.night-mode .profile-name-wrapper {
  background: var(--body-bg-color-dark);
}

@media (min-width: 992px) {
  .profile-name-wrapper {
    position: absolute;
    bottom: 20px;
    left: 255px;
    right: auto;
    background: transparent !important;
    padding-top: 0;
    padding-bottom: 0;
    text-align: left;
    font-size: 1.9em;
    text-shadow: 0 0 3px rgba(0, 0, 0, 0.9);
  }

  .no-avatar .profile-name-wrapper {
    left: 85px;
    bottom: 40px;
  }
}

.profile-name-wrapper a {
  color: #333;
}

body.night-mode .profile-name-wrapper a {
  color: #fff;
}

.profile-name-wrapper a.badge {
  color: #fff;
}

@media (min-width: 992px) {
  .profile-name-wrapper a {
    color: #fff;
  }

  .profile-name-wrapper a.badge {
    font-size: 14px;
  }
}

/* -- */

/* profle-date-wrapper */
.profle-date-wrapper {
  position: absolute;
  width: 45px;
  left: 10px;
  top: 120px;
  padding: 6px;
  border-radius: 6px;
  border: 2px solid white;
  background: rgba(0, 0, 0, 0.1);
  text-align: center;
  font-size: 12px;
  color: #fff;

  transition: all 0.5s;
}

@media (min-width: 576px) {
  .profle-date-wrapper {
    top: 180px;
  }
}

@media (min-width: 768px) {
  .profle-date-wrapper {
    top: 240px;
  }
}

@media (min-width: 992px) {
  .profle-date-wrapper {
    width: 55px;
    left: 15px;
    top: auto;
    bottom: 20px;
    font-size: 14px;
  }
}

/* -- */

/* profle-meta-wrapper */
.profle-meta-wrapper {
  position: absolute;
  left: 65px;
  top: 140px;
  color: #e9e9e9;
  font-size: 12px;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.9);
}

@media (min-width: 576px) {
  .profle-meta-wrapper {
    top: 200px;
  }
}

@media (min-width: 768px) {
  .profle-meta-wrapper {
    top: 260px;
  }
}

@media (min-width: 992px) {
  .profle-meta-wrapper {
    left: 85px;
    top: auto;
    bottom: 20px;
    font-size: 14px;
  }
}

/* -- */

/* profile-buttons-wrapper */
.profile-buttons-wrapper {
  background: #fff;
  padding-bottom: 20px;
  text-align: center;
  border-radius: 0 0 16px 16px;
}

body.night-mode .profile-buttons-wrapper {
  background: var(--body-bg-color-dark);
}

@media (min-width: 992px) {
  .profile-buttons-wrapper {
    background: transparent !important;
    position: absolute;
    bottom: 20px;
    right: 15px;
    padding-bottom: 0;
    text-align: left;
  }
}

@media (max-width: 992px) {
  .profile-buttons-wrapper .btn {
    box-shadow: none;
  }
}

/* -- */

/* profile-tabs-wrapper */
.profile-tabs-wrapper {
  padding: 0 10px;
  background: #fff;
  border-radius: 16px;
  margin-bottom: 20px;
}

body.night-mode .profile-tabs-wrapper {
  background: var(--card-dark-color);
}


.profile-tabs-wrapper a {
  display: block;
  padding: 10px 5px;
  line-height: 20px;
  font-weight: 600;
  color: #666;
  transition: all 0.2s ease;
}

@media (min-width: 992px) {
  .profile-tabs-wrapper a {
    padding: 20px 25px;
  }
}


body.night-mode .profile-tabs-wrapper a {
  color: var(--body-color-dark);
}

.profile-tabs-wrapper a:hover,
body.night-mode .profile-tabs-wrapper a:hover {
  color: var(--link-color);
}

.profile-tabs-wrapper a.active,
body.night-mode .profile-tabs-wrapper a.active {
  color: var(--link-color);
  border-bottom: 2px solid var(--link-color);
}

/* -- */

/* panel-mutual-friends */
@media (max-width: 559px) {
  .panel-mutual-friends {
    display: none;
  }
}

.panel-mutual-friends li {
  float: left;
  width: 40px;
  height: 40px;
  margin-right: -8px;
}

/* -- */

/* panel [about] */
.about-bio {
  word-wrap: break-word;
  text-align: center;
  border-bottom: 1px solid #f4f4f4;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

body.night-mode .about-bio {
  border-color: var(--card-dark-divider);
}

.about-bio a {
  display: inline-block;
  margin-top: 10px;
}

.about-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.about-list li {
  position: relative;
  padding-bottom: 5px;
  margin-bottom: 10px;
  font-weight: 500;
}

.about-list li.package {
  background: #597ba5;
  color: #fff;
  padding: 10px 15px;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 15px;
  text-align: center;
  border-radius: 16px;
}

.about-list li:last-child {
  border-bottom: 0 none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.about-list-item {
  padding-left: 40px;
  word-break: break-word;
}

.about-list-item a:hover {
  text-decoration: underline;
}

.about-list-item .svg-container {
  position: absolute;
  top: 0;
  left: 0;
}

.about-list-item .details {
  padding-top: 2px;
  font-size: 11px;
  line-height: 16px;
  font-weight: normal;
}

/* -- */

/* panel [photos] */
.panel-photos div[class^="col-"],
.panel-photos div[class*=" col-"] {
  padding: 1px;
  padding-bottom: 0;
}

.pg_photo {
  position: relative;
  display: block;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #eee;
  width: 100%;
  height: 100%;
  padding-top: 100%;
  min-width: 40px;
  min-height: 40px;
  border-radius: 12px;
  margin-bottom: 2px;
}

.pg_photo.large {
  min-width: 100px;
  min-height: 100px;
}

.pg_photo-delete-btn {
  position: absolute;
  right: 5px;
  top: 5px;
}

.pg_photo-pin-btn {
  position: absolute;
  left: 5px;
  top: 5px;
  background: rgb(0 0 0 / 50%);
  padding: 3px 8px;
  border-radius: 16px;
  color: #eee;
}

.pg_photo-pin-btn.pinned {
  color: #ffeb3b;
}

/* -- */

/* panel [videos] */
.panel-videos div[class^="col-"],
.panel-videos div[class*=" col-"] {
  padding: 1px;
  padding-bottom: 0;
}

.pg_video {
  position: relative;
  background: #eee;
  display: block;
  padding-bottom: 100%;
  overflow: hidden;
}

.pg_video video {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.pg_video .play-button {
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 25px);
  display: block;
  width: 50px;
  height: 50px;
  padding-top: 11px;
  padding-left: 6px;
  border-radius: 50%;
  color: #f5f5f5;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease;
}

.pg_video:hover .play-button {
  background-color: rgba(0, 0, 0, 0.8);
  box-shadow: 0px 0px 10px rgba(255, 255, 100, 1);
}

/* -- */

/* album-card */
.album-card {
  border: 1px solid #f4f4f4;
  border-radius: 16px;
  margin-bottom: 10px;
}

body.night-mode .album-card {
  border-color: var(--card-dark-divider);
}

.album-cover {
  display: block;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #eee;
  width: 100%;
  height: 100%;
  padding-top: 100%;
  overflow: hidden;
  min-width: 40px;
  min-height: 40px;
  border-radius: 16px 16px 0 0;
}

.album-details {
  padding: 20px;
}

.album-details .fa {
  cursor: pointer;
}

.album-details .tooltip {
  width: auto;
  min-width: 110px;
  font-size: 11px;
}

/* -- */

/* album */
.album-title {
  text-align: center;
  font-size: 1.5em;
  font-weight: 600;
  margin-top: 20px;
}

.album-meta {
  text-align: center;
  margin-bottom: 40px;
}

/* -- */

/* PAGE = [ADMIN] */
/* ------------------------------- */

/* admin sidebar */
@media (max-width: 767px) {
  .admin-sidebar {
    background: #fff;
    border-radius: 16px;
  }

  body.night-mode .admin-sidebar {
    background: var(--card-dark-color);
  }

}

/* -- */

/* admin-chart */
.admin-chart {
  min-width: 100%;
  height: 400px;
  margin: 0 auto;
  border: 1px solid #e6ecf5;
}

body.night-mode .admin-chart {
  border-color: var(--card-dark-divider);
}

body.night-mode .admin-chart .highcharts-title,
body.night-mode .admin-chart .highcharts-axis>*,
body.night-mode .admin-chart .highcharts-axis-labels>*,
body.night-mode .admin-chart .highcharts-legend-item text {
  color: var(--body-color-dark) !important;
  fill: var(--body-color-dark) !important;
}

/* -- */

/* table-img-thumbnail */
.table-img-thumbnail {
  max-width: 100px;
}

/* -- */

/* change-log-list */
.change-log-list {
  margin-left: 30px;
}

.change-log-list>li {
  margin-left: 30px;
  list-style-type: disc;
}

/* -- */

/* auto-connect-nodes */
.add-auto-connect-node {
  background: #f7f7f7;
  margin: 10px 0;
  padding: 10px;
  font-weight: 600;
  text-align: center;
  border: 1px solid #ddd;
  border-radius: 16px;
  cursor: pointer;
}

.add-auto-connect-node :hover {
  background: #f3f3f3;
}

body.night-mode .add-auto-connect-node {
  background: var(--card-dark-input);
  border-color: var(--card-dark-divider);
}

body.night-mode .add-auto-connect-node :hover {
  background: var(--card-dark-color);
}

.auto-connect-node {
  margin: 10px 0;
  padding: 20px 30px 0;
  border: 1px solid #ddd;
  border-radius: 16px;
}

body.night-mode .auto-connect-node {
  border-color: var(--card-dark-divider);
}

/* -- */

/* PAGE = [MARKET] */
/* ------------------------------- */

.product {
  position: relative;
  border-radius: 16px;
}

.product:not(.active):hover {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

.product.active {
  border: 1px solid #f4f4f4;
}

body.night-mode .product.active {
  border-color: var(--card-dark-divider);
}

.product.boosted {
  border: 2px solid #f9b340;
}

.product .boosted-icon {
  position: absolute;
  left: -15px;
  top: -15px;
  width: auto;
  padding: 3px 6px;
  font-size: 16px;
  background: #f9b340;
  color: #ffffff;
  border-radius: 50%;
  transform: rotate(-20deg);
  z-index: 2;
}

.product-image {
  position: relative;
  width: 100%;
  height: 250px;
  overflow: hidden;
  border-radius: 16px 16px 0 0;
}

.product-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-price {
  position: absolute;
  left: 10px;
  bottom: 10px;
  background: rgba(0, 0, 0, 0.65);
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  padding: 6px 10px;
  border-radius: 6px;
}

.product-price.with-offer {
  font-size: 14px;
  font-weight: normal;
}

.product-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  padding-top: 100px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  text-align: center;
  opacity: 0;
  transition: all 300ms;
}

.product:hover .product-overlay {
  opacity: 1;
}

.product-info {
  padding: 10px;
}

.product-meta {
  overflow: hidden;
  word-break: break-all;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-bottom: 10px;
}

.product-meta .title {
  font-size: 18px;
  font-weight: bold;
}

/* -- */

/* invoice */
.invoice-title h2,
.invoice-title h3 {
  display: inline-block;
}

.table-invoice>tbody>tr>.no-line {
  border-top: none;
}

.table-invoice>thead>tr>.no-line {
  border-bottom: none;
}

.table-invoice>tbody>tr>.thick-line {
  border-top: 2px solid;
}

/* -- */

/* -- */

/* PAGE = [MOVIES] */
/* ------------------------------- */

.movie-card {
  margin-bottom: 20px;
}

.movie-card-top {
  position: relative;
  display: block;
  border: 5px solid #fff;
  border-radius: 4px;
  margin-bottom: 10px;
}

body.night-mode .movie-card-top {
  border-color: var(--card-dark-divider);
}

.movie-picture {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  background-color: #fff;
  width: 100%;
  height: 100%;
  min-height: 330px;
}

.movie-info {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  padding-top: 70px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  text-align: center;
  opacity: 0;
  transition: all 300ms;
  transition-delay: 100ms;
}

.movie-info .meta {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 10px;
}

.movie-card-top:hover .movie-info {
  opacity: 1;
}

.movie-card-bottom {
  margin: 0 auto;
  padding: 0 5px;
  text-align: left;
}

.movie-title {
  display: block;
  font-weight: 700;
  transition: color 0.15s ease-in-out;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.movie-year {
  margin-top: 5x;
}

/* -- */

/* PAGE = [REELS] */
/* ------------------------------- */

.reels-wrapper {
  position: fixed;
  top: 70px;
  bottom: 0;
  right: 0;
  left: 0;
  background: #000;
  z-index: 1;
}

.reels-loader {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  background: #000;
  border-radius: 10px;
  padding: 10px 16px;
  z-index: 2;
}

.reel-container {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-top: 70px;
  padding-bottom: 0;
  background: #000;
  transform: translateY(0);
  transition: transform 0.3s ease;
}

.reel-container.swipe-up {
  transform: translateY(-100%);
  transition: transform 0.3s ease-out;
}

.reel-container.swipe-down {
  transform: translateY(100%);
  transition: transform 0.3s ease-out;
}

.reel-container.hidden {
  opacity: 0;
  visibility: hidden;

}

.reel-video-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
  transition: all 0.2s;
  user-select: none;
  color: #fff;
}

.reel-container.comments-shown .reel-video-wrapper {
  width: 0;
}

@media (min-width: 768px) {
  .reel-container.comments-shown .reel-video-wrapper {
    width: calc(100% - 420px);
  }
}

.reel-next-btn,
.reel-prev-btn {
  display: none;
  position: absolute;
  bottom: 40px;
  right: 20px;
  opacity: 0.7;
}

.reel-prev-btn {
  bottom: 100px;
}

.reel-next-btn:hover,
.reel-prev-btn:hover {
  opacity: 1;
  cursor: pointer;
}

@media (min-width: 768px) {

  .reel-next-btn,
  .reel-prev-btn {
    display: block;
  }
}

.reel-video-wrapper .reel-video-container {
  position: relative;
  width: 100%;
  max-width: 459px;
  display: block !important;
  margin: auto;
  height: 100%;
}

.reel-video-wrapper .reel-video-container .plyr--video {
  height: calc(100dvh - 70px);
}

.reel-video-wrapper .reel-video-container .plyr__controls {
  top: 0;
  right: 0;
  left: auto;
  bottom: 100%;
  background: transparent;
}

.reel-video-wrapper .reel-video-container .video-caption-overlay {
  position: absolute;
  top: 80%;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0.75) 100%);
}

.reel-video-wrapper .reel-video-container .video-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 90px;
  padding: 20px 10px;
  color: #fff;
}

@media (min-width: 768px) {
  .reel-video-wrapper .reel-video-container .video-caption {
    right: 0;
    background: linear-gradient(rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 1) 100%);
  }

}

.reel-video-wrapper .reel-video-container .video-controlls {
  position: absolute;
  bottom: 20px;
  right: -80px;
}

@media screen and (max-width: 768px) {
  .reel-video-wrapper .reel-video-container .video-controlls {
    position: absolute;
    bottom: 20px;
    right: 20px;
  }
}

.reel-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-align: center;
}

.reel-actions .post-avatar {
  display: block;
  margin-bottom: 10px;
  padding-right: 0;
}

.reel-actions .post-avatar .post-avatar-picture {
  min-width: 50px;
  min-height: 50px;
  border-radius: 50%;
  margin: 0 auto;
}

.reel-actions .post-avatar .online-dot {
  border-color: #000;
}

.reel-actions .action-btn {
  background: #333;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  padding: 10px;
  transition: all 0.1s ease-in-out;
}

.reel-actions .action-btn:hover {
  background: #555;
  cursor: pointer;
}

.reel-actions .reaction-btn .reaction-btn-icon .far {
  font-size: 28px;
}

.reel-action-btn span {
  display: block;
  font-size: 13px;
  margin-top: 5px;
}

.reel-actions .action-btn .inline-emoji {
  width: 40px;
  height: 40px;
}

.reel-actions .action-btn .inline-emoji .emoji {
  transform: scale(0.25);
  top: -115%;
  right: 100%;
}

.reel-comments-wrapper {
  display: none;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  background: #fff;
}

body.night-mode .reel-comments-wrapper {
  background: var(--card-dark-color);
}

@media (min-width: 768px) {
  .reel-comments-wrapper {
    width: 420px;
  }
}

.reel-container.comments-shown .reel-comments-wrapper {
  display: block;
}

.reel-lightbox.comments-shown .reel-comments-wrapper {
  display: block;
}

.reels-box-wrapper {
  height: 400px;
}

.reels-box-wrapper .slick-prev,
.reels-box-wrapper .slick-next {
  width: 40px;
  height: 40px;
  z-index: 2;
}

.reels-box-wrapper .slick-prev {
  left: 10px;
}

.reels-box-wrapper .slick-next {
  right: 10px;
}

.reels-box-wrapper .slick-prev:before,
.reels-box-wrapper .slick-next:before {
  font-size: 40px;
  color: #fff;
  text-shadow: 1px 1px #000000;
}

.reel-box {
  background-color: #000;
  position: relative;
  display: block;
  border-radius: 16px;
  margin-right: 20px;
  width: 260px;
  height: 400px !important;
  overflow: hidden;
}

.reel-box video {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
  width: 100%;
  height: auto;
  max-height: 400px;
  border-radius: 16px;
}

.reel-box .views {
  position: absolute;
  bottom: 10px;
  left: 15px;
  color: #fff;
  text-shadow: 1px 1px #000000;
  z-index: 2;
}

/* -- */

/* TRANSLATOR */
/* ------------------------------- */

.translator-language {
  display: block;
  font-size: 15px;
  line-height: 100%;
  padding: 15px;
  margin-bottom: 5px;
  border: 1px solid #eee;
  border-radius: 1px;
}

.translator-language:hover {
  background: #f3f3f3;
  cursor: pointer;
}

/* -- */

/* BIG ICON */
/* ------------------------------- */

.big-icon {
  width: 80px;
  height: 80px;
  border: 4px solid rgba(128, 128, 128, 0.15);
  border-radius: 50%;
  margin: 20px auto;
  position: relative;
}

.big-icon.success {
  border-color: rgba(76, 174, 76, 0.15);
}

.big-icon.error {
  border-color: rgba(217, 83, 79, 0.15);
}

.big-icon.warning {
  border-color: rgba(255, 153, 0, 0.21);
}

.big-icon .fa {
  padding-top: 17px;
  padding-left: 3px;
}

.big-icon.success .fa {
  color: #4cae4c;
}

.big-icon.error .fa {
  color: #d9534f;
}

.big-icon.warning .fa {
  color: #d9954f;
}

/* -- */

/* LOADER */
/* ------------------------------- */

.x-loader {
  text-align: center;
}

.loader {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 5px 0;
}

.loader:after {
  display: block;
  position: relative;
  width: 20px;
  height: 20px;
  -webkit-animation: rotate 0.6s linear infinite;
  -moz-animation: rotate 0.6s linear infinite;
  -ms-animation: rotate 0.6s linear infinite;
  -o-animation: rotate 0.6s linear infinite;
  animation: rotate 0.6s linear infinite;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  border-top: 1px solid #545a6a;
  border-bottom: 1px solid #d4d4db;
  border-left: 1px solid #545a6a;
  border-right: 1px solid #d4d4db;
  content: "";
  opacity: 0.5;
}

.loader.loader_large:after {
  width: 40px;
  height: 40px;
}

.loader.loader_medium:after {
  width: 25px;
  height: 25px;
}

.loader.loader_small:after {
  width: 10px;
  height: 10px;
}

.loader.loader_green:after {
  opacity: 1;
  border-top: 1px solid #42a26e;
  border-bottom: 1px solid #fff;
  border-left: 1px solid #42a26e;
  border-right: 1px solid #fff;
}

@keyframes rotate {
  0% {
    transform: rotateZ(-360deg);
    -webkit-transform: rotateZ(-360deg);
    -moz-transform: rotateZ(-360deg);
    -o-transform: rotateZ(-360deg);
  }

  100% {
    transform: rotateZ(0deg);
    -webkit-transform: rotateZ(0deg);
    -moz-transform: rotateZ(0deg);
    -o-transform: rotateZ(0deg);
  }
}

@-webkit-keyframes rotate {
  0% {
    transform: rotateZ(-360deg);
    -webkit-transform: rotateZ(-360deg);
    -moz-transform: rotateZ(-360deg);
    -o-transform: rotateZ(-360deg);
  }

  100% {
    transform: rotateZ(0deg);
    -webkit-transform: rotateZ(0deg);
    -moz-transform: rotateZ(0deg);
    -o-transform: rotateZ(0deg);
  }
}

@-moz-keyframes rotate {
  0% {
    transform: rotateZ(-360deg);
    -webkit-transform: rotateZ(-360deg);
    -moz-transform: rotateZ(-360deg);
    -o-transform: rotateZ(-360deg);
  }

  100% {
    transform: rotateZ(0deg);
    -webkit-transform: rotateZ(0deg);
    -moz-transform: rotateZ(0deg);
    -o-transform: rotateZ(0deg);
  }
}

@-o-keyframes rotate {
  0% {
    transform: rotateZ(-360deg);
    -webkit-transform: rotateZ(-360deg);
    -moz-transform: rotateZ(-360deg);
    -o-transform: rotateZ(-360deg);
  }

  100% {
    transform: rotateZ(0deg);
    -webkit-transform: rotateZ(0deg);
    -moz-transform: rotateZ(0deg);
    -o-transform: rotateZ(0deg);
  }
}

/* -- */

/* POST LOADER */
/* ------------------------------- */
@keyframes anim {
  0% {
    background-position: -468px 0;
  }

  100% {
    background-position: 468px 0;
  }
}

@-o-keyframes anim {
  0% {
    background-position: -468px 0;
  }

  100% {
    background-position: 468px 0;
  }
}

@-ms-keyframes anim {
  0% {
    background-position: -468px 0;
  }

  100% {
    background-position: 468px 0;
  }
}

@-moz-keyframes anim {
  0% {
    background-position: -468px 0;
  }

  100% {
    background-position: 468px 0;
  }
}

@-webkit-keyframes anim {
  0% {
    background-position: -468px 0;
  }

  100% {
    background-position: 468px 0;
  }
}

.panel-effect {
  position: relative;
  background: #f6f7f8 no-repeat 800px 104px;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y2ZjdmOCIvPjxzdG9wIG9mZnNldD0iMjAlIiBzdG9wLWNvbG9yPSIjZWRlZWYxIi8+PHN0b3Agb2Zmc2V0PSI0MCUiIHN0b3AtY29sb3I9IiNmNmY3ZjgiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmNmY3ZjgiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA=");
  background-size: 100%;
  background-image: -webkit-gradient(linear,
      0% 50%,
      100% 50%,
      color-stop(0%, #f6f7f8),
      color-stop(20%, #edeef1),
      color-stop(40%, #f6f7f8),
      color-stop(100%, #f6f7f8));
  background-image: -moz-linear-gradient(left,
      #f6f7f8 0%,
      #edeef1 20%,
      #f6f7f8 40%,
      #f6f7f8 100%);
  background-image: -webkit-linear-gradient(left,
      #f6f7f8 0%,
      #edeef1 20%,
      #f6f7f8 40%,
      #f6f7f8 100%);
  background-image: linear-gradient(to right,
      #f6f7f8 0%,
      #edeef1 20%,
      #f6f7f8 40%,
      #f6f7f8 100%);
  height: 104px;
  -moz-animation: anim 1s forwards infinite linear;
  -webkit-animation: anim 1s forwards infinite linear;
  animation: anim 1s forwards infinite linear;
}

body.night-mode .panel-effect {
  background: var(--body-bg-color-dark) no-repeat 800px 104px;
  background-image: -webkit-gradient(linear,
      0% 50%,
      100% 50%,
      color-stop(0%, var(--body-bg-color-dark)),
      color-stop(20%, #323b44),
      color-stop(40%, var(--body-bg-color-dark)),
      color-stop(100%, var(--body-bg-color-dark)));
  background-image: -moz-linear-gradient(left,
      var(--body-bg-color-dark) 0%,
      #323b44 20%,
      var(--body-bg-color-dark) 40%,
      var(--body-bg-color-dark) 100%);
  background-image: -webkit-linear-gradient(left,
      var(--body-bg-color-dark) 0%,
      #323b44 20%,
      var(--body-bg-color-dark) 40%,
      var(--body-bg-color-dark) 100%);
  background-image: linear-gradient(to right,
      var(--body-bg-color-dark) 0%,
      #323b44 20%,
      var(--body-bg-color-dark) 40%,
      var(--body-bg-color-dark) 100%);
}

.fake-effect {
  position: absolute;
  background: #fff;
  right: 0;
  left: 0;
  height: 6px;
}

body.night-mode .fake-effect {
  background: #262d34;
}

.fe-0 {
  height: 40px;
  left: 40px;
  width: 8px;
}

.fe-1 {
  height: 8px;
  left: 48px;
  top: 0;
  right: 0;
}

.fe-2 {
  left: 136px;
  top: 8px;
}

.fe-3 {
  height: 12px;
  left: 48px;
  top: 14px;
}

.fe-4 {
  left: 100px;
  top: 26px;
}

.fe-5 {
  height: 10px;
  left: 48px;
  top: 32px;
}

.fe-6 {
  height: 20px;
  top: 40px;
}

.fe-7 {
  left: 410px;
  top: 60px;
}

.fe-8 {
  height: 13px;
  top: 66px;
}

.fe-9 {
  left: 440px;
  top: 79px;
}

.fe-10 {
  height: 13px;
  top: 85px;
}

.fe-11 {
  left: 178px;
  top: 98px;
}

/* -- */

/* ON/OFF TOGGLE */
/* ------------------------------- */

.switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;
  margin: 0;
}

.switch.sm {
  width: 30px;
  height: 17px;
}

.switch input {
  display: none;
}

.switch .slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  transition: 0.4s;
}

body.night-mode .switch .slider {
  background-color: #666;
}

.switch .slider:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  transition: 0.4s;
}

.switch.sm .slider:before {
  height: 13px;
  width: 13px;
  left: 2px;
  bottom: 2px;
}

.switch input:checked+.slider {
  background-color: var(--link-color);
}

.switch input:focus+.slider {
  box-shadow: 0 0 1px #2196f3;
}

.switch input:checked+.slider:before {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
}

.switch.sm input:checked+.slider:before {
  -webkit-transform: translateX(13px);
  -ms-transform: translateX(13px);
  transform: translateX(13px);
}

.switch .slider.round {
  border-radius: 34px;
}

.switch .slider.round:before {
  border-radius: 50%;
}

/* -- */

/* CUSTOM RADIO/CHECKBOX TEMPLATES */
/* ------------------------------- */

.button-label {
  display: inline-block;
  padding: 1em 2em;
  margin: 0.5em;
  cursor: pointer;
  color: #6c6c6c;
  border-radius: 6px;
  transition: 0.3s;
  box-shadow: 0 0 0 1px #e6e6e6;
  min-width: 115px;
}

.button-label.small {
  min-width: 80px;
}

body.night-mode .button-label {
  box-shadow: 0 0 0 1px var(--card-dark-divider);
  color: var(--body-color-dark);
}

.button-label-image {
  display: block;
  padding: 5px;
  margin: 0px;
  width: 100%;
  height: 100%;
  box-shadow: none;
  cursor: pointer;
  transition: 0.3s;
  border-radius: 2px;
}

.button-label .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f3f3f3;
  height: 60px;
  width: 60px;
  margin: 0 auto;
  border-radius: 50%;
  transition: all 0.2s;
  opacity: 0.75;
  filter: grayscale(1);
}

body.night-mode .button-label .icon {
  background: var(--card-dark-input);
}

.button-label.small .icon {
  width: 30px;
  height: 30px;
}

.button-label .icon img {
  width: 32px;
  height: 32px;
}

.button-label-image img {
  width: 100%;
  height: 100%;
  border-radius: 2px;
}

.button-label .title {
  font-weight: 500;
  font-size: 14px;
  margin-top: 15px;
  text-transform: capitalize;
  text-align: center;
}

.button-label:hover,
.button-label-image:hover {
  box-shadow: 0px 0px 0px 2px rgba(51, 103, 214, 0.65);
}

.input-label:checked+.button-label,
.input-label:checked+.button-label-image {
  box-shadow: 0px 0px 0px 2px rgba(51, 103, 214, 0.65);
}

.input-label:checked+.button-label .icon {
  filter: grayscale(0);
  opacity: 1;
}

/* -- */

/* PWA INSTALL PROMPT */
/* ------------------------------- */

.pwa_install_banner {
  display: none;
}

.pwa_install_banner {
  position: fixed;
  bottom: 0px;
  left: 0px;
  width: 100%;
  z-index: 999999;
  background: #ffffff;
  padding: 15px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

body.night-mode .pwa_install_banner {
  background: #000;
}

.pwa_install_banner .inner {
  display: flex;
  align-items: center;
}

.pwa_install_banner .inner .close {
  width: 32px;
  height: 32px;
  line-height: 32px;
}

.pwa_install_banner .inner .close img {
  width: 32px;
  height: 32px;
}

.pwa_install_banner .inner .logo {
  width: 48px;
}

.pwa_install_banner .inner .logo img {
  width: 42px;
  border-radius: 2px;
}

.pwa_install_banner .inner .name {
  padding-left: 10px;
}

.pwa_install_banner .inner .name span {
  display: block;
}

.pwa_install_banner .inner .name span.title {
  font-size: 1.125rem;
  line-height: 1;
  font-weight: 600;
}

.pwa_install_banner .inner .cta {
  margin-left: auto;
}

.pwa_install_banner.is-active {
  display: block;
}

/* -- */


/* MERITS */
/* ------------------------------- */

.merits-box-wrapper {
  margin: 0 20px;
}

.merits-box-wrapper .slick-prev:before,
.merits-box-wrapper .slick-next:before {
  color: var(--link-color);
}

.merit-box {
  width: 100px;
  margin: 0 5px;
  text-align: center;
  cursor: pointer;
}

.merit-box img {
  display: inline-block !important;
}

.merit-box .name {
  font-size: 12px;
  font-weight: 600;
  margin-top: 5px;
}

/* -- */


/* EXTRAS */
/* ------------------------------- */

/* == margins == */
.ml0 {
  margin-left: 0 !important;
}

.mr0 {
  margin-right: 0 !important;
}

.mlr0 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mtb0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.ml5 {
  margin-left: 5px !important;
}

.mr5 {
  margin-right: 5px !important;
}

.mlr5 {
  margin-left: 5px !important;
  margin-right: 5px !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.mtb5 {
  margin-top: 5px !important;
  margin-bottom: 5px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mlr10 {
  margin-left: 10px !important;
  margin-right: 10px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mtb10 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.mlr15 {
  margin-left: 15px !important;
  margin-right: 15px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mtb15 {
  margin-top: 15px !important;
  margin-bottom: 15px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mlr20 {
  margin-left: 20px !important;
  margin-right: 20px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mtb20 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mlr25 {
  margin-left: 25px !important;
  margin-right: 25px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mtb25 {
  margin-top: 25px !important;
  margin-bottom: 25px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mlr30 {
  margin-left: 30px !important;
  margin-right: 30px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mtb30 {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

/* -- */

/* == paddings == */
.pl0 {
  padding-left: 0px !important;
}

.pr0 {
  padding-right: 0px !important;
}

.plr0 {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.pt0 {
  padding-top: 0px !important;
}

.pb0 {
  padding-bottom: 0px !important;
}

.ptb0 {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.pl5 {
  padding-left: 5px !important;
}

.pr5 {
  padding-right: 5px !important;
}

.plr5 {
  padding-left: 5px !important;
  padding-right: 5px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.ptb5 {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.plr10 {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.ptb10 {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.plr15 {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.ptb15 {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.plr20 {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.ptb20 {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.plr25 {
  padding-left: 25px !important;
  padding-right: 25px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.ptb25 {
  padding-top: 25px !important;
  padding-bottom: 25px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.plr30 {
  padding-left: 30px !important;
  padding-right: 30px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.ptb30 {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

/* -- */

/* == text == */
.text-link {
  color: var(--link-color);
}

.text-link:hover {
  cursor: pointer;
  text-decoration: underline;
}

.text-link-no-underline {
  color: var(--link-color);
}

.text-underline:hover {
  cursor: pointer;
  text-decoration: underline;
}

.text-no-underline:hover {
  text-decoration: none !important;
}

.text-active {
  color: #1e8bd2 !important;
}

.text-gradient {
  background: linear-gradient(90deg, #515bd4 0%, #dd2a7b 35%, #8134af 65%, #515bd4 100%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

/* text sizes */
.text-sm {
  font-size: 0.8em;
  line-height: 1;
}

.text-md {
  font-size: 1.1em;
  line-height: 1.6;
}

.text-lg {
  font-size: 1.2em;
  line-height: 1.7;
}

.text-xlg {
  font-size: 1.3em;
  line-height: 1.8em;
}

.text-xxlg {
  font-size: 2.3em;
  font-weight: 700;
}

/* -- */

.text-with-list ul {
  list-style-type: disc;
  padding-inline-start: 40px;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.red {
  color: red;
}

.green {
  color: green;
}

.yellow {
  color: #ebba16;
}

/* -- */

/* == user-select == */
.unselectable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* -- */

/* == cursor == */
.pointer {
  cursor: pointer;
}

/* -- */

/* == vertical-align == */
.vertical-align-top {
  vertical-align: top;
}

.vertical-align-middle {
  vertical-align: middle;
}

.vertical-align-bottom {
  vertical-align: bottom;
}

/* -- */

/* == x == */
.x-notifier {
  background: #ffffcd !important;
}

.x-hidden {
  display: none;
}

.x-blured {
  overflow: hidden;
}

.x-blured .js_lightbox,
.x-blured .album-cover {
  filter: blur(10px);
}

/* -- */

/* OFFCANVAS */
/* ------------------------------- */

@media (max-width: 767px) {
  .sg-offcanvas {
    position: relative;
    overflow: hidden;
  }

  .sg-offcanvas.active {
    transition: all 0.25s ease-out;
  }

  .sg-offcanvas .sg-offcanvas-sidebar {
    position: absolute !important;
    top: 0;
    left: -100%;
    width: 100%;
    z-index: 100;
    transition: all 0.25s ease-out;
  }

  .sg-offcanvas.active .sg-offcanvas-sidebar {
    left: 0;
  }

  .sg-offcanvas .sg-offcanvas-mainbar {
    left: 0;
    transition: all 0.25s ease-out;
  }

  .sg-offcanvas.active .sg-offcanvas-mainbar {
    left: 100%;
  }
}

/* INSTAGRAM OVERRIDES */
/* ==========================================================================
   INSTAGRAM COMPLETE MODERN 2026 DESIGN SYSTEM & NO-OVERLAP ENGINE
   ========================================================================== */

:root {
  --ig-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Plus Jakarta Sans", Helvetica, Arial, sans-serif;
  --ig-bg: #fafafa;
  --ig-card-bg: #ffffff;
  --ig-card-border: #dbdbdb;
  --ig-text: #262626;
  --ig-text-secondary: #737373;
  --ig-link: #ff6b00;
  --ig-primary: #ff6b00;
  --ig-primary-hover: #1877f2;
  --ig-heart: #ff3040;
  --ig-divider: #efefef;
  --ig-hover-bg: rgba(0, 0, 0, 0.05);
  --ig-gradient-story: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
  --ig-nav-width: 245px;
  --ig-radius: 8px;
}

[data-bs-theme="dark"],
body.night-mode {
  --ig-bg: #000000;
  --ig-card-bg: #000000;
  --ig-card-border: #262626;
  --ig-text: #f5f5f5;
  --ig-text-secondary: #a8a8a8;
  --ig-link: #ff6b00;
  --ig-divider: #262626;
  --ig-hover-bg: rgba(255, 255, 255, 0.1);
}

/* ==========================================================================
   GLOBAL RESET & OVERLAP ERADICATION
   ========================================================================== */
html, body {
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--ig-font) !important;
  background-color: var(--ig-bg) !important;
  color: var(--ig-text) !important;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
  width: 100% !important;
}

body.has-ig-nav {
  padding: 0 !important;
  margin: 0 !important;
  background-color: var(--ig-bg) !important;
}

@media (min-width: 992px) {
  body.has-ig-nav {
    padding-left: var(--ig-nav-width) !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
  }
}
@media (max-width: 991px) {
  body.has-ig-nav {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 52px !important;
    padding-bottom: 52px !important;
  }
}

body.has-ig-nav .main-wrapper {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  min-height: 100vh;
  background: transparent !important;
}

/* Hide all legacy conflicting elements */
.main-header,
.chat-sidebar,
.top-bar:not(.danger):not(.logged-as-container),
.sg-offcanvas-sidebar:empty,
.page-header {
  display: none !important;
}

/* Container Centering */
.container,
.container-fluid,
.page-container {
  padding-right: 16px !important;
  padding-left: 16px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

@media (min-width: 992px) {
  .container,
  .container-fluid,
  .page-container {
    max-width: 975px !important;
    margin-top: 24px !important;
  }
}

.sg-offcanvas-mainbar {
  width: 100% !important;
  padding: 0 !important;
}

a {
  color: var(--ig-text);
  text-decoration: none;
}
a:hover {
  color: var(--ig-text);
  opacity: 0.85;
}

/* ==========================================================================
   LEFT RAIL NAVIGATION (DESKTOP)
   ========================================================================== */
@media (min-width: 992px) {
  .ig-desktop-nav {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    width: var(--ig-nav-width) !important;
    height: 100vh !important;
    background: var(--ig-card-bg) !important;
    border-right: 1px solid var(--ig-card-border) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    padding: 24px 12px 20px !important;
    z-index: 1050 !important;
  }

  .ig-logo {
    padding: 0 12px 28px !important;
    display: flex;
    align-items: center;
  }
  .ig-logo .logo-text {
    font-family: 'Grand Hotel', cursive, sans-serif !important;
    font-size: 32px !important;
    color: var(--ig-text) !important;
    text-decoration: none !important;
    letter-spacing: 0.5px;
    line-height: 1;
  }

  .ig-nav-items {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
  }

  .ig-nav-link {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    padding: 12px !important;
    border-radius: var(--ig-radius) !important;
    color: var(--ig-text) !important;
    font-size: 15.5px !important;
    font-weight: 400 !important;
    text-decoration: none !important;
    transition: background 0.15s ease, font-weight 0.1s ease !important;
    position: relative;
    cursor: pointer;
  }
  .ig-nav-link:hover {
    background: var(--ig-hover-bg) !important;
    color: var(--ig-text) !important;
  }
  .ig-nav-link.active {
    font-weight: 700 !important;
  }
  .ig-nav-link i,
  .ig-nav-link svg {
    font-size: 22px !important;
    width: 24px !important;
    text-align: center !important;
    color: var(--ig-text) !important;
  }

  .ig-nav-avatar {
    width: 26px !important;
    height: 26px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 1px solid var(--ig-card-border) !important;
  }
  .ig-nav-link.active .ig-nav-avatar {
    border: 2px solid var(--ig-text) !important;
  }
}

/* ==========================================================================
   MOBILE NAVIGATION (< 992px)
   ========================================================================== */
@media (max-width: 991px) {
  .ig-desktop-nav {
    display: none !important;
  }

  .ig-mobile-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 52px !important;
    background: var(--ig-card-bg) !important;
    border-bottom: 1px solid var(--ig-card-border) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 16px !important;
    z-index: 1040 !important;
  }
  .ig-mobile-header .logo-text {
    font-family: 'Grand Hotel', cursive, sans-serif !important;
    font-size: 28px !important;
    color: var(--ig-text) !important;
    text-decoration: none !important;
  }

  .ig-mobile-bottom-nav {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 48px !important;
    background: var(--ig-card-bg) !important;
    border-top: 1px solid var(--ig-card-border) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-around !important;
    z-index: 1040 !important;
  }
  .ig-mobile-bottom-nav a {
    color: var(--ig-text) !important;
    font-size: 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20% !important;
    height: 100% !important;
  }
}

/* ==========================================================================
   HOMEPAGE & FEED (INSTAGRAM 2-COLUMN)
   ========================================================================== */
.ig-feed-container {
  max-width: 975px !important;
  margin: 24px auto 0 !important;
  padding: 0 16px !important;
}
@media (max-width: 767px) {
  .ig-feed-container {
    padding: 0 !important;
    margin-top: 0 !important;
  }
}

.ig-feed-main {
  max-width: 600px !important;
}

.ig-feed-sidebar {
  max-width: 330px !important;
  position: sticky !important;
  top: 24px !important;
}

/* Zuck.js Stories */
.stories-wrapper,
.card:has(.stories-wrapper) {
  background: var(--ig-card-bg) !important;
  border: 1px solid var(--ig-card-border) !important;
  border-radius: var(--ig-radius) !important;
  padding: 16px 12px !important;
  margin-bottom: 24px !important;
  box-shadow: none !important;
}
@media (max-width: 767px) {
  .stories-wrapper,
  .card:has(.stories-wrapper) {
    border-left: none !important;
    border-right: none !important;
    border-radius: 0 !important;
    padding: 12px 6px !important;
    margin-bottom: 12px !important;
  }
}

.stories.sngine.carousel {
  display: flex !important;
  gap: 16px !important;
  overflow-x: auto !important;
  scrollbar-width: none !important;
  padding: 4px 0 !important;
}
.stories.sngine.carousel::-webkit-scrollbar {
  display: none !important;
}

.stories.sngine.carousel .story {
  width: 68px !important;
  margin: 0 !important;
  flex-shrink: 0 !important;
}
.stories.sngine.carousel .story > .item-link > .item-preview {
  width: 66px !important;
  height: 66px !important;
  border-radius: 50% !important;
  padding: 2.5px !important;
  background: var(--ig-gradient-story) !important;
  box-shadow: none !important;
}
.stories.sngine.carousel .story.seen > .item-link > .item-preview {
  background: var(--ig-card-border) !important;
}
.stories.sngine .story > a > .item-preview > img {
  border-radius: 50% !important;
  border: 2px solid var(--ig-card-bg) !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.stories.sngine.carousel .story > .item-link > .item-preview > .info {
  display: none !important;
}
.stories.sngine .story > .item-link > .name {
  font-size: 11.5px !important;
  color: var(--ig-text) !important;
  max-width: 68px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  text-align: center !important;
  margin-top: 6px !important;
  font-weight: 500 !important;
}

.add-story {
  width: 66px !important;
  height: 66px !important;
  border-radius: 50% !important;
  margin: 0 !important;
  position: relative !important;
  flex-shrink: 0 !important;
}
.add-story .img {
  border-radius: 50% !important;
  border: 2px solid var(--ig-card-border) !important;
  width: 100% !important;
  height: 100% !important;
}
.add-story .add {
  width: 22px !important;
  height: 22px !important;
  bottom: 0 !important;
  right: 0 !important;
  left: auto !important;
  transform: none !important;
  background: var(--ig-primary) !important;
  color: #ffffff !important;
  fill: #ffffff !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 2px solid var(--ig-card-bg) !important;
  padding: 0 !important;
}
.add-story .add svg {
  width: 12px !important;
  height: 12px !important;
  fill: #fff !important;
}

/* ==========================================================================
   POST CARD (INSTAGRAM SPEC)
   ========================================================================== */
.post,
.panel.post {
  background: var(--ig-card-bg) !important;
  border: 1px solid var(--ig-card-border) !important;
  border-radius: var(--ig-radius) !important;
  margin-bottom: 20px !important;
  overflow: hidden !important;
  box-shadow: none !important;
}
@media (max-width: 767px) {
  .post,
  .panel.post {
    border-left: none !important;
    border-right: none !important;
    border-radius: 0 !important;
    margin-bottom: 12px !important;
  }
}

.post-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 10px 14px !important;
  background: transparent !important;
  border-bottom: 1px solid var(--ig-divider) !important;
}

.post-avatar,
.post-avatar-picture {
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}

.post-title a {
  font-weight: 600 !important;
  font-size: 14px !important;
  color: var(--ig-text) !important;
}
.post-time {
  font-size: 11px !important;
  color: var(--ig-text-secondary) !important;
  text-transform: uppercase;
}

.post-media,
.pg_wrapper,
.post-media img,
.post-media video {
  width: 100% !important;
  background: #000;
  display: block;
}

.post-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 10px 14px 6px !important;
  border-top: none !important;
  border-bottom: none !important;
}

.action-btn {
  background: none !important;
  border: none !important;
  padding: 0 !important;
  color: var(--ig-text) !important;
  font-size: 24px !important;
  cursor: pointer;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: transform 0.15s ease !important;
}
.action-btn:active {
  transform: scale(1.2) !important;
}
.action-btn.active,
.action-btn.js_unreact-post {
  color: var(--ig-heart) !important;
}

.post-stats {
  padding: 0 14px 4px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  color: var(--ig-text) !important;
  border: none !important;
}

.post-text {
  padding: 0 14px 8px !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  color: var(--ig-text) !important;
}
.post-text strong {
  margin-right: 6px;
}

.post-comments {
  border-top: 1px solid var(--ig-divider) !important;
  padding: 8px 14px !important;
  background: transparent !important;
}

/* ==========================================================================
   INSTAGRAM PROFILE PAGE
   ========================================================================== */
.profile-header {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding-bottom: 24px !important;
}

.profile-cover-wrapper {
  height: 220px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}
@media (max-width: 767px) {
  .profile-cover-wrapper {
    height: 140px !important;
    border-radius: 0 !important;
  }
}

.profile-avatar-wrapper {
  margin-top: -60px !important;
  padding-left: 24px !important;
}
.profile-avatar-wrapper img {
  width: 140px !important;
  height: 140px !important;
  border-radius: 50% !important;
  border: 4px solid var(--ig-card-bg) !important;
}
@media (max-width: 767px) {
  .profile-avatar-wrapper {
    margin-top: -40px !important;
    padding-left: 12px !important;
  }
  .profile-avatar-wrapper img {
    width: 80px !important;
    height: 80px !important;
  }
}

.profile-name-wrapper {
  font-size: 22px !important;
  font-weight: 600 !important;
  color: var(--ig-text) !important;
}

.profile-tabs-wrapper {
  border-top: 1px solid var(--ig-card-border) !important;
  display: flex !important;
  justify-content: center !important;
  gap: 40px !important;
  margin-top: 24px !important;
  background: transparent !important;
}
.profile-tabs-wrapper a {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  height: 52px !important;
  margin-top: -1px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: var(--ig-text-secondary) !important;
  border-top: 1px solid transparent !important;
}
.profile-tabs-wrapper a.active {
  color: var(--ig-text) !important;
  border-top-color: var(--ig-text) !important;
}

.photos-albums,
.ig-grid-container {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 24px !important;
  list-style: none !important;
  padding: 0 !important;
}
@media (max-width: 767px) {
  .photos-albums,
  .ig-grid-container {
    gap: 3px !important;
  }
}
.photos-albums li,
.ig-grid-item {
  position: relative !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  background: var(--ig-card-bg) !important;
  border-radius: 4px !important;
}
.photos-albums li img,
.ig-grid-item img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* ==========================================================================
   INSTAGRAM REELS PAGE
   ========================================================================== */
.ig-reels-container {
  max-width: 480px !important;
  margin: 0 auto 30px !important;
  padding-top: 16px !important;
}
.reel-container {
  height: calc(100vh - 80px) !important;
  max-height: 820px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #000000 !important;
  margin-bottom: 24px !important;
  position: relative !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2) !important;
}
.reel-video-wrapper,
.reel-video-container {
  width: 100% !important;
  height: 100% !important;
}
.reel-video-container video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* ==========================================================================
   INSTAGRAM MESSENGER / DIRECT MESSAGES
   ========================================================================== */
.card-messages,
.panel-messages,
.chat-conversations {
  background: var(--ig-card-bg) !important;
  border: 1px solid var(--ig-card-border) !important;
  border-radius: var(--ig-radius) !important;
}
.chat-form {
  border-top: 1px solid var(--ig-divider) !important;
  padding: 10px 14px !important;
  background: transparent !important;
}
.chat-form textarea {
  border: 1px solid var(--ig-card-border) !important;
  border-radius: 22px !important;
  padding: 8px 16px !important;
  background: transparent !important;
  color: var(--ig-text) !important;
}

/* ==========================================================================
   INSTAGRAM SETTINGS PAGE
   ========================================================================== */
.side-nav {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.side-nav li a {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px 16px !important;
  border-radius: var(--ig-radius) !important;
  color: var(--ig-text) !important;
  font-weight: 500 !important;
  font-size: 14.5px !important;
  transition: background 0.15s ease !important;
}
.side-nav li.active a,
.side-nav li a:hover {
  background: var(--ig-hover-bg) !important;
  font-weight: 600 !important;
}

/* ==========================================================================
   INSTAGRAM AUTHENTICATION & LOGIN (SIGN IN / SIGN UP)
   ========================================================================== */
.fr_welcome,
.fr_auth_form,
.card-signup {
  background: transparent !important;
}
.fr_welcome_sign,
.card-signup {
  background: var(--ig-card-bg) !important;
  border: 1px solid var(--ig-card-border) !important;
  border-radius: var(--ig-radius) !important;
  max-width: 400px !important;
  margin: 40px auto !important;
  padding: 36px 32px !important;
}
.fr_welcome_sign_head .logo-text,
.fr_welcome_sign_head h2,
.fr_welcome_sign_head h5 {
  font-family: 'Grand Hotel', cursive, sans-serif !important;
  font-size: 38px !important;
  text-align: center !important;
  color: var(--ig-text) !important;
  margin-bottom: 24px !important;
}
.fr_welcome_field input,
.form-control {
  border: 1px solid var(--ig-card-border) !important;
  border-radius: 6px !important;
  background: var(--ig-bg) !important;
  color: var(--ig-text) !important;
  font-size: 13.5px !important;
  padding: 10px 12px !important;
}
.fr_welcome_field input:focus,
.form-control:focus {
  border-color: var(--ig-text-secondary) !important;
  box-shadow: none !important;
}

.btn-primary,
.fr_welcome_btn {
  background-color: var(--ig-primary) !important;
  border-color: var(--ig-primary) !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  padding: 8px 16px !important;
  color: #ffffff !important;
  box-shadow: none !important;
}
.btn-primary:hover,
.fr_welcome_btn:hover {
  background-color: var(--ig-primary-hover) !important;
  border-color: var(--ig-primary-hover) !important;
}

/* ==========================================================================
   CARDS & MODALS
   ========================================================================== */
.card {
  background-color: var(--ig-card-bg) !important;
  border: 1px solid var(--ig-card-border) !important;
  border-radius: var(--ig-radius) !important;
  box-shadow: none !important;
}

.modal-content {
  background-color: var(--ig-card-bg) !important;
  border: 1px solid var(--ig-card-border) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2) !important;
}
.modal-header {
  border-bottom: 1px solid var(--ig-divider) !important;
  font-weight: 600 !important;
  text-align: center !important;
}
.modal-footer {
  border-top: 1px solid var(--ig-divider) !important;
}





/* ==========================================================================
   INSTAGRAM VIDEO PLAYER ENGINE — NO CONTROLLERS
   ========================================================================== */

.ig-video-player-wrapper {
  position: relative !important;
  width: 100% !important;
  max-height: 700px !important;
  background-color: #000000 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  cursor: pointer !important;
  user-select: none !important;
}

.ig-video-player-wrapper video,
.ig-video-stage video,
.ig-reel-video-box video {
  width: 100% !important;
  height: 100% !important;
  max-height: 700px !important;
  object-fit: cover !important;
  display: block !important;
  background-color: #000000 !important;
}

/* Centered Pop Play/Pause Indicator */
.ig-playback-indicator,
.ig-reel-playback-pop {
  position: absolute !important;
  z-index: 15 !important;
  pointer-events: none !important;
  width: 64px !important;
  height: 64px !important;
  border-radius: 50% !important;
  background: rgba(0, 0, 0, 0.65) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 0 !important;
  transform: scale(0.6) !important;
  transition: opacity 0.25s ease, transform 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

.ig-playback-indicator.show,
.ig-reel-playback-pop.show {
  opacity: 1 !important;
  transform: scale(1) !important;
}

/* Floating Sound Pill (Bottom Right) */
.ig-video-sound-pill,
.ig-reel-sound-pill {
  position: absolute !important;
  z-index: 20 !important;
  right: 12px !important;
  bottom: 12px !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  background: rgba(26, 26, 26, 0.8) !important;
  backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  padding: 0 !important;
  color: #ffffff !important;
  transition: transform 0.15s ease, background 0.15s ease !important;
}

.ig-video-sound-pill:hover,
.ig-reel-sound-pill:hover {
  transform: scale(1.1) !important;
  background: rgba(45, 45, 45, 0.95) !important;
}

.ig-video-sound-pill:active,
.ig-reel-sound-pill:active {
  transform: scale(0.92) !important;
}

/* Centered Heart Burst Animation */
.ig-heart-burst-anim,
.ig-reel-heart-burst {
  position: absolute !important;
  z-index: 25 !important;
  pointer-events: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 0 !important;
  transform: scale(0.3) !important;
  transition: transform 0.45s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.4s ease !important;
}

.ig-heart-burst-anim.animate,
.ig-reel-heart-burst.animate {
  opacity: 1 !important;
  transform: scale(1.3) !important;
}

/* Hide default browser video controls on all platforms */
video::-webkit-media-controls {
  display: none !important;
}
video::-webkit-media-controls-enclosure {
  display: none !important;
}



/* ==========================================================================
   ULTRA-DARK INSTAGRAM UI RESTYLE (2026)
   ========================================================================== */

:root {
  --bg-main: #090a0f;
  --bg-card: #000000;
  --bg-card-hover: #141414;
  --border-color: #262626;
  --text-primary: #f0f2f5;
  --text-secondary: #8e96a3;
  --accent-cyan: #ff9d00;
  --accent-pink: #e1306c;
  --sidebar-width: 64px;
}

body {
  background-color: var(--bg-main) !important;
  color: var(--text-primary) !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
  margin: 0;
  padding: 0;
}

/* App Wrapper Grid */
.app-wrapper {
  display: flex;
  min-height: 100vh;
  padding-left: var(--sidebar-width);
  background-color: var(--bg-main);
}

.main-content-container {
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 24px 16px;
  gap: 48px;
}

.feed-column {
  width: 100%;
  max-width: 470px;
}

.widgets-column {
  width: 320px;
  flex-shrink: 0;
}

@media (max-width: 991px) {
  .widgets-column { display: none !important; }
  .feed-column { max-width: 100% !important; }
  .main-content-container { gap: 0 !important; }
}

@media (max-width: 768px) {
  .app-wrapper { padding-left: 0 !important; padding-bottom: 60px !important; }
}

/* Styling for Slim Sidebar */
.slim-left-sidebar {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: var(--sidebar-width);
  background: var(--bg-main);
  border-right: 1px solid var(--border-color);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  padding: 16px 0;
  z-index: 1000;
}

.sidebar-top {
  display: flex;
  justify-content: center;
  margin-bottom: 12px;
}

.brand-avatar {
  display: block;
}

.sidebar-nav {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
}

.nav-icon {
  color: var(--text-primary);
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  transition: background 0.2s, color 0.2s;
  position: relative;
  text-decoration: none;
}

.nav-icon:hover {
  background: var(--bg-card-hover);
  color: #fff;
}

.nav-icon.active {
  color: var(--accent-cyan);
}

.nav-icon .badge-dot {
  position: absolute;
  right: 8px;
  top: 8px;
  width: 7px;
  height: 7px;
  background: var(--accent-pink);
  border-radius: 50%;
  border: 1px solid var(--bg-main);
}

.sidebar-bottom {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
}

.brand-avatar img, .user-profile-icon img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
  border: 1px solid var(--border-color);
}

/* Stories Bar */
.stories-container {
  display: flex;
  gap: 16px;
  padding: 12px 0 24px 0;
  overflow-x: auto;
  scrollbar-width: none;
}

.stories-container::-webkit-scrollbar {
  display: none;
}

.story-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 72px;
  flex-shrink: 0;
  cursor: pointer;
  text-decoration: none;
}

.story-avatar-wrapper {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  padding: 2px;
  background: var(--border-color);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s;
}

.story-avatar-wrapper:hover {
  transform: scale(1.05);
}

.story-avatar-wrapper.has-update {
  background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888);
}

.story-avatar-wrapper img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 2px solid var(--bg-main);
  object-fit: cover;
}

.create-story .add-btn {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: var(--text-primary);
}

.story-user {
  font-size: 11px;
  color: var(--text-secondary);
  margin-top: 6px;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
  text-align: center;
}

/* Post Card */
.instagram-post-card {
  background: var(--bg-main);
  border-bottom: 1px solid var(--border-color);
  padding-bottom: 24px;
  margin-bottom: 24px;
}

.post-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 0;
}

.post-author {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}

.author-img {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  object-fit: cover;
}

.author-meta {
  display: flex;
  align-items: center;
  gap: 6px;
}

.author-name {
  color: var(--text-primary);
  font-weight: 600;
  font-size: 14px;
}

.post-time {
  color: var(--text-secondary);
  font-size: 13px;
}

.btn-more-options {
  background: none;
  border: none;
  color: var(--text-secondary);
  font-size: 16px;
  cursor: pointer;
  padding: 4px;
}

.btn-more-options:hover {
  color: var(--text-primary);
}

.post-media-frame {
  border-radius: 8px;
  overflow: hidden;
  background: #000;
  border: 1px solid var(--border-color);
  position: relative;
}

.post-media-img, .post-media-video {
  width: 100%;
  display: block;
  max-height: 600px;
  object-fit: cover;
}

.post-actions-bar {
  display: flex;
  justify-content: space-between;
  padding: 12px 0 8px 0;
}

.left-actions { display: flex; gap: 16px; align-items: center; }

.action-btn {
  background: none;
  border: none;
  color: var(--text-primary);
  font-size: 22px;
  padding: 0;
  cursor: pointer;
  transition: transform 0.15s, color 0.15s;
}

.action-btn:hover {
  transform: scale(1.1);
}

.action-btn.liked {
  color: var(--accent-pink);
}

.likes-count { font-weight: 600; font-size: 14px; margin-bottom: 6px; color: var(--text-primary); }
.caption-author { font-weight: 600; color: var(--text-primary); text-decoration: none; margin-right: 6px; font-size: 14px; }
.post-caption { font-size: 14px; line-height: 1.4; color: var(--text-primary); }
.view-comments-link { color: var(--text-secondary); font-size: 13px; text-decoration: none; display: block; margin-top: 6px; }

/* Right Sidebar / Widgets */
.user-switch-card {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
}

.profile-info {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
}

.profile-thumb { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; }
.user-handle { font-weight: 600; color: var(--text-primary); font-size: 14px; }
.user-fullname { color: var(--text-secondary); font-size: 13px; }

.btn-switch, .see-all {
  color: var(--accent-cyan);
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
}

.widget-header {
  display: flex;
  justify-content: space-between;
  font-size: 14px;
  font-weight: 600;
  color: var(--text-secondary);
  margin-bottom: 16px;
}

.suggestions-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.suggestion-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.suggestion-user {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
}

.suggestion-user img { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; }
.s-name { font-size: 13px; font-weight: 600; color: var(--text-primary); }
.s-reason { font-size: 11px; color: var(--text-secondary); }

.btn-follow {
  background: none;
  border: none;
  color: var(--accent-cyan);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  padding: 0;
}

.btn-follow:hover {
  color: #fff;
}

.widget-footer {
  margin-top: 32px;
  font-size: 11px;
  color: var(--text-secondary);
  line-height: 1.6;
}

/* Ecosystem Directory */
.ecosystem-container {
  max-width: 1100px;
  margin: 0 auto;
  padding: 32px 16px;
}

.ecosystem-header h2 {
  font-size: 26px;
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: 6px;
}

.ecosystem-header p {
  color: var(--text-secondary);
  font-size: 14px;
  margin-bottom: 24px;
}

.ecosystem-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 24px;
}

@media (max-width: 991px) {
  .ecosystem-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 576px) {
  .ecosystem-grid { grid-template-columns: 1fr; }
}

.eco-card {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: 16px;
  padding: 32px 20px;
  text-align: center;
  text-decoration: none;
  transition: transform 0.2s, background 0.2s;
}

.eco-card:hover {
  background: var(--bg-card-hover);
  transform: translateY(-2px);
}

.eco-icon {
  width: 48px;
  height: 48px;
  background: rgba(255, 157, 0, 0.08);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 16px auto;
  color: var(--accent-cyan);
  font-size: 20px;
}

.eco-card h3 { color: var(--text-primary); font-size: 16px; font-weight: 600; margin-bottom: 6px; }
.eco-card p { color: var(--text-secondary); font-size: 12px; margin: 0; }

/* Mobile Header & Bottom Nav */
.mobile-top-bar {
  position: fixed;
  top: 0; left: 0; right: 0;
  height: 54px;
  background: var(--bg-main);
  border-bottom: 1px solid var(--border-color);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 16px;
  z-index: 1000;
}

.mobile-logo { font-size: 20px; font-weight: 700; color: #fff; letter-spacing: -0.5px; }
.mobile-actions { display: flex; gap: 18px; font-size: 20px; color: #fff; }
.mobile-actions a { color: #fff; text-decoration: none; }

.mobile-bottom-nav {
  position: fixed;
  bottom: 0; left: 0; right: 0;
  height: 52px;
  background: var(--bg-main);
  border-top: 1px solid var(--border-color);
  display: flex;
  justify-content: space-around;
  align-items: center;
  z-index: 1000;
}

.mobile-bottom-nav a { color: var(--text-primary); font-size: 20px; text-decoration: none; }
.mobile-nav-avatar { width: 26px; height: 26px; border-radius: 50%; object-fit: cover; }



/* ==========================================================================
   INSTAGRAM REELS FULLSCREEN SNAP SCROLLER
   ========================================================================== */

.reels-page-wrapper {
  position: relative;
  width: 100%;
  height: 100vh;
  background-color: #090a0f;
  overflow: hidden;
  padding-left: var(--sidebar-width, 64px);
}

@media (max-width: 768px) {
  .reels-page-wrapper {
    padding-left: 0 !important;
    padding-bottom: 52px !important;
  }
}

.reels-feed-container {
  width: 100%;
  height: 100vh;
  overflow-y: scroll;
  scroll-snap-type: y mandatory;
  scrollbar-width: none;
}

.reels-feed-container::-webkit-scrollbar {
  display: none;
}

/* Individual Reel Slide */
.reel-slide {
  width: 100%;
  height: 100vh;
  scroll-snap-align: start;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.reel-content-wrapper {
  display: flex;
  align-items: flex-end;
  gap: 16px;
  height: 90vh;
  max-height: 820px;
}

/* Center Video Player Frame */
.reel-video-card {
  position: relative;
  height: 100%;
  aspect-ratio: 9 / 16;
  background-color: #000;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
}

.reel-video-element {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Video Overlay Info (Bottom-Left) */
.reel-video-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 20px 16px;
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.85));
  color: #ffffff;
  z-index: 2;
}

.reel-author-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
}

.author-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.3);
  object-fit: cover;
}

.author-username {
  color: #ffffff;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
}

.dot-separator {
  color: rgba(255, 255, 255, 0.6);
}

.btn-reel-follow {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.5);
  color: #ffffff;
  border-radius: 6px;
  padding: 2px 10px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}

.reel-tagged-people {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.8);
  margin-bottom: 6px;
}

.reel-caption {
  font-size: 13px;
  line-height: 1.4;
  color: #ffffff;
  max-height: 60px;
  overflow: hidden;
}

.reel-mute-btn {
  position: absolute;
  bottom: 16px;
  right: 16px;
  background: rgba(0, 0, 0, 0.5);
  border: none;
  color: #fff;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  cursor: pointer;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Right Vertical Action Column */
.reel-actions-column {
  display: flex;
  flex-direction: column;
  gap: 18px;
  align-items: center;
  padding-bottom: 12px;
}

.action-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.btn-reel-action {
  background: none;
  border: none;
  color: #ffffff;
  font-size: 24px;
  cursor: pointer;
  transition: transform 0.15s ease;
  padding: 0;
}

.btn-reel-action:hover {
  transform: scale(1.15);
}

.btn-reel-action.active {
  color: #e1306c;
}

.action-count {
  color: #ffffff;
  font-size: 12px;
  font-weight: 500;
}

.audio-cover-art {
  width: 30px;
  height: 30px;
  border-radius: 6px;
  border: 2px solid #ffffff;
  object-fit: cover;
  margin-top: 8px;
}

/* Far-Right Navigation Up/Down Controls */
.reels-nav-controls {
  position: fixed;
  right: 24px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 12px;
  z-index: 100;
}

.btn-scroll-nav {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #ffffff;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.2s;
}

.btn-scroll-nav:hover {
  background: rgba(255, 255, 255, 0.2);
}

@media (max-width: 768px) {
  .reels-nav-controls {
    display: none;
  }
}



/* ==========================================================================
   STRICT INSTAGRAM MEDIA FRAMING & ASPECT RATIOS
   ========================================================================== */

/* Feed Posts (Photos & Feed Videos): 4:5 Vertical Aspect Ratio */
.post-media-frame {
  width: 100% !important;
  max-width: 470px !important;
  aspect-ratio: 4 / 5 !important;
  background-color: #000000 !important;
  border-radius: 8px !important;
  border: 1px solid var(--border-color, #262626) !important;
  overflow: hidden !important;
  position: relative !important;
  margin: 0 auto !important;
}

.post-media-frame img,
.post-media-frame video,
.post-media-img,
.post-media-video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* Fallback for landscape videos in feed */
.post-media-frame.landscape {
  aspect-ratio: 16 / 9 !important;
}

/* Reels Video Frame (9:16 Vertical scaled to 88vh) */
.reel-video-card {
  position: relative !important;
  height: 88vh !important;
  max-height: 820px !important;
  aspect-ratio: 9 / 16 !important;
  background-color: #000000 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6) !important;
  margin: 0 auto !important;
}

.reel-video-element {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  cursor: pointer !important;
}

/* Bottom Gradient Mask for Author & Caption Text Readability */
.reel-video-overlay {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  padding: 48px 16px 16px 16px !important;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.85) 100%) !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

.reel-video-overlay a,
.reel-video-overlay button {
  pointer-events: auto !important;
}

/* Mute Toggle Button */
.reel-mute-btn {
  position: absolute !important;
  bottom: 16px !important;
  right: 16px !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  background: rgba(18, 20, 29, 0.75) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  color: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 13px !important;
  cursor: pointer !important;
  z-index: 3 !important;
  backdrop-filter: blur(4px) !important;
  transition: transform 0.15s ease !important;
  padding: 0 !important;
}

.reel-mute-btn:hover {
  transform: scale(1.1) !important;
}

/* Play/Pause Animated Flash Overlay */
.video-status-icon {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) scale(0.5) !important;
  width: 64px !important;
  height: 64px !important;
  background: rgba(0, 0, 0, 0.6) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  font-size: 24px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: all 0.25s ease-out !important;
  z-index: 4 !important;
}

.video-status-icon.animate-flash {
  opacity: 1 !important;
  transform: translate(-50%, -50%) scale(1) !important;
}



/* ==========================================================================
   EXACT INSTAGRAM PROFILE LAYOUT
   ========================================================================== */

/* Layout Wrapper */
.profile-page-container {
  max-width: 935px;
  margin: 0 auto;
  padding: 30px 20px 60px 20px;
  color: #ffffff;
}

/* Header Grid */
.profile-header {
  display: flex;
  gap: 48px;
  align-items: flex-start;
  margin-bottom: 44px;
}

@media (max-width: 768px) {
  .profile-header {
    flex-direction: column;
    align-items: center;
    gap: 24px;
    text-align: center;
  }
}

/* Avatar & Note Box */
.profile-avatar-wrapper {
  flex-shrink: 0;
  padding-left: 12px;
}

.avatar-container {
  position: relative;
  width: 150px;
  height: 150px;
}

@media (max-width: 768px) {
  .avatar-container {
    width: 96px;
    height: 96px;
  }
}

.profile-avatar-img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  border: 1px solid #262626;
}

.avatar-note-bubble {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  background: #262626;
  color: #a8a8a8;
  font-size: 11px;
  padding: 4px 10px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  gap: 4px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
  white-space: nowrap;
}

/* Info Section */
.profile-info-wrapper {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.profile-title-row {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

@media (max-width: 768px) {
  .profile-title-row {
    justify-content: center;
  }
}

.profile-username {
  font-size: 20px;
  font-weight: 600;
  margin: 0;
  margin-right: 8px;
  color: #ffffff;
}

/* Header Buttons */
.btn-profile-primary {
  background: #ff6b00;
  color: #ffffff;
  border: none;
  border-radius: 8px;
  padding: 7px 20px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s;
}

.btn-profile-primary:hover {
  background: #1877f2;
}

.btn-profile-sec {
  background: #262626;
  color: #ffffff;
  border: none;
  border-radius: 8px;
  padding: 7px 16px;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: background 0.15s;
}

.btn-profile-sec:hover {
  background: #363636;
  color: #ffffff;
}

.btn-profile-icon {
  color: #ffffff;
  font-size: 18px;
  padding: 6px;
  text-decoration: none;
}

/* Metrics Row */
.profile-stats-row {
  display: flex;
  gap: 24px;
  font-size: 14px;
  color: #ffffff;
}

@media (max-width: 768px) {
  .profile-stats-row {
    justify-content: center;
  }
}

.profile-stats-row a {
  color: #ffffff;
  text-decoration: none;
}

/* Bio Text Block */
.profile-fullname {
  font-size: 14px;
  font-weight: 600;
  margin: 0;
  color: #ffffff;
}

.profile-category {
  font-size: 12px;
  color: #8e8e8e;
  margin: 2px 0;
}

.profile-bio-text {
  font-size: 14px;
  margin: 4px 0;
  white-space: pre-line;
  color: #f0f2f5;
}

.profile-website-link {
  font-size: 13px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 6px;
}

@media (max-width: 768px) {
  .profile-website-link {
    justify-content: center;
  }
}

.profile-website-link a {
  color: #e0f1ff;
  text-decoration: none;
}

/* Bottom Profile Action Bar */
.profile-action-bar {
  display: flex;
  gap: 10px;
  margin-top: 8px;
}

.btn-action-blue {
  flex: 1;
  background: #ff6b00;
  color: #ffffff;
  border: none;
  border-radius: 8px;
  padding: 8px 16px;
  font-weight: 600;
  font-size: 13px;
  cursor: pointer;
  transition: background 0.15s;
}

.btn-action-blue:hover {
  background: #1877f2;
}

.btn-action-dark {
  flex: 1;
  background: #262626;
  color: #ffffff;
  border: none;
  border-radius: 8px;
  padding: 8px 16px;
  font-weight: 600;
  font-size: 13px;
  text-align: center;
  text-decoration: none;
  transition: background 0.15s;
}

.btn-action-dark:hover {
  background: #363636;
  color: #ffffff;
}

/* Highlight Circles */
.profile-highlights-wrapper {
  padding: 10px 0 24px 0;
  border-bottom: 1px solid #262626;
  margin-bottom: 0;
  display: flex;
  gap: 16px;
}

.highlight-circle-btn {
  width: 77px;
  height: 77px;
  border-radius: 50%;
  border: 1px solid #363636;
  background: #121212;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  color: #8e8e8e;
  cursor: pointer;
  transition: border-color 0.15s;
}

.highlight-circle-btn:hover {
  border-color: #555;
}

.highlight-label {
  font-size: 12px;
  display: block;
  text-align: center;
  width: 77px;
  margin-top: 6px;
  color: #f0f2f5;
}

/* Navigation Tabs */
.profile-tabs-bar {
  display: flex;
  justify-content: center;
  gap: 60px;
  border-top: 1px solid #262626;
  margin-top: -1px;
}

.tab-btn {
  background: none;
  border: none;
  border-top: 1px solid transparent;
  color: #8e8e8e;
  padding: 16px 0;
  font-size: 18px;
  cursor: pointer;
  transition: color 0.15s;
}

.tab-btn.active {
  color: #ffffff;
  border-top: 1px solid #ffffff;
}

/* 3-Column Posts Media Grid */
.profile-grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4px;
  margin-top: 16px;
}

.grid-media-card {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  background: #121212;
  overflow: hidden;
  cursor: pointer;
}

.grid-media-thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.grid-type-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  color: #ffffff;
  font-size: 16px;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6);
  z-index: 2;
}

.grid-card-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  opacity: 0;
  transition: opacity 0.15s ease;
  color: #ffffff;
  font-weight: 600;
  z-index: 3;
}

.grid-media-card:hover .grid-card-overlay {
  opacity: 1;
}

.empty-grid-msg {
  grid-column: 1 / -1;
  text-align: center;
  padding: 60px 0;
  color: #8e8e8e;
  font-weight: 600;
  font-size: 15px;
}



/* ==========================================================================
   DEMUREGRAM CREATOR STUDIO DASHBOARD
   ========================================================================== */

/* Container & Dashboard Layout */
.studio-wrapper {
  display: flex;
  min-height: 100vh;
  background-color: #0b0e14;
  color: #e2e8f0;
  font-family: Inter, system-ui, -apple-system, sans-serif;
  padding-left: var(--sidebar-width, 64px);
}

@media (max-width: 768px) {
  .studio-wrapper {
    flex-direction: column;
    padding-left: 0 !important;
    padding-bottom: 60px !important;
  }
}

/* Sidebar */
.studio-sidebar {
  width: 280px;
  background-color: #121620;
  border-right: 1px solid #1e2430;
  padding: 24px 16px;
  flex-shrink: 0;
}

@media (max-width: 991px) {
  .studio-sidebar {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #1e2430;
  }
}

.studio-brand h2 {
  font-size: 16px;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 24px;
}

.studio-profile-card {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #181d2a;
  padding: 12px;
  border-radius: 10px;
  margin-bottom: 24px;
  border: 1px solid #262626;
}

.studio-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  object-fit: cover;
}

.studio-profile-info {
  display: flex;
  flex-direction: column;
}

.profile-name {
  font-weight: 600;
  font-size: 14px;
  color: #ffffff;
}

.profile-handle {
  font-size: 12px;
  color: #8b949e;
}

.verified-badge {
  color: #ff9d00;
  font-size: 11px;
}

.status-tag {
  font-size: 10px;
  color: #34d399;
  background: rgba(52, 211, 153, 0.1);
  padding: 2px 6px;
  border-radius: 4px;
  width: fit-content;
  margin-top: 4px;
  font-weight: 600;
}

/* Navigation */
.studio-menu {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.menu-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  color: #94a3b8;
  text-decoration: none;
  font-size: 13px;
  font-weight: 500;
  border-radius: 8px;
  transition: all 0.15s ease;
}

.menu-item:hover, .menu-item.active {
  background-color: #1e2538;
  color: #ffffff;
}

.menu-item.active {
  border-left: 3px solid #ff9d00;
}

/* Main Dashboard Window */
.studio-main {
  flex-grow: 1;
  padding: 32px;
  overflow-y: auto;
}

@media (max-width: 768px) {
  .studio-main {
    padding: 16px;
  }
}

/* Hero Revenue Card */
.hero-revenue-card {
  background: linear-gradient(135deg, #1e2638 0%, #111522 100%);
  border: 1px solid #2a3449;
  border-radius: 14px;
  padding: 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
}

@media (max-width: 768px) {
  .hero-revenue-card {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .hero-payout-box {
    align-items: flex-start !important;
  }
}

.hero-label {
  font-size: 13px;
  color: #94a3b8;
}

.hero-amount {
  font-size: 38px;
  font-weight: 700;
  color: #ffffff;
  margin: 6px 0;
}

.hero-subtext {
  font-size: 12px;
  color: #64748b;
}

.hero-payout-box {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
}

.payout-label {
  font-size: 12px;
  color: #94a3b8;
}

.payout-amount {
  font-size: 22px;
  font-weight: 700;
  color: #34d399;
}

.btn-request-payout {
  background: #ff9d00;
  color: #0b0e14;
  border: none;
  padding: 8px 18px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 13px;
  cursor: pointer;
  margin-top: 6px;
  transition: opacity 0.15s;
}

.btn-request-payout:hover {
  opacity: 0.9;
}

/* Metric Cards Grid */
.studio-grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 24px;
}

@media (max-width: 991px) {
  .studio-grid-3 {
    grid-template-columns: 1fr;
  }
}

.metric-card {
  background-color: #121620;
  border: 1px solid #1e2430;
  border-radius: 12px;
  padding: 20px;
  display: flex;
  align-items: center;
  gap: 16px;
}

.card-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}

.blue-glow { background: rgba(255, 157, 0, 0.15); color: #ff9d00; }
.purple-glow { background: rgba(168, 85, 247, 0.15); color: #a855f7; }
.pink-glow { background: rgba(236, 72, 153, 0.15); color: #ec4899; }

.card-title { font-size: 12px; color: #94a3b8; }
.card-value { font-size: 22px; font-weight: 700; color: #ffffff; margin: 4px 0; }
.card-meta { font-size: 11px; color: #64748b; }

.mini-card {
  background: #121620;
  border: 1px solid #1e2430;
  padding: 16px 20px;
  border-radius: 10px;
}

.mini-title { font-size: 12px; color: #94a3b8; }
.mini-value { font-size: 20px; font-weight: 700; color: #ffffff; margin-top: 4px; }

/* Table Section */
.studio-content-section {
  background: #121620;
  border: 1px solid #1e2430;
  border-radius: 12px;
  padding: 24px;
}

.section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 18px;
}

.section-header h3 { font-size: 16px; font-weight: 600; color: #ffffff; margin: 0; }
.view-all-link { color: #ff9d00; font-size: 13px; text-decoration: none; font-weight: 500; }

.studio-table {
  width: 100%;
  border-collapse: collapse;
}

.studio-table th {
  text-align: left;
  padding: 12px 16px;
  font-size: 12px;
  color: #64748b;
  border-bottom: 1px solid #1e2430;
  font-weight: 600;
}

.studio-table td {
  padding: 16px;
  border-bottom: 1px solid #1e2430;
  font-size: 13px;
  vertical-align: middle;
}

.post-cell {
  max-width: 320px;
}

.post-id { font-weight: 600; color: #ffffff; display: block; margin-bottom: 2px; }
.post-text { color: #94a3b8; margin: 0; }

.badge {
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.badge-type.reel { background: rgba(255, 157, 0, 0.1); color: #ff9d00; }
.badge-type.photos { background: rgba(168, 85, 247, 0.1); color: #a855f7; }
.badge-access.public { background: rgba(52, 211, 153, 0.1); color: #34d399; }

.date-cell { color: #64748b; font-size: 12px; }

.empty-table {
  text-align: center;
  padding: 40px;
  color: #64748b;
}



/* ==========================================================================
   DEMUREGRAM FULLSCREEN STORY VIEWER & QUESTION STICKER
   ========================================================================== */

/* Full Viewport Modal Overlay */
.story-modal-overlay {
  position: fixed;
  inset: 0;
  background-color: #1a1a1a;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  color: #ffffff;
  font-family: Inter, system-ui, -apple-system, sans-serif;
}

.story-modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 24px;
}

.story-brand-logo {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, cursive, sans-serif;
  font-size: 22px;
  font-weight: 700;
  color: #ffffff;
}

.btn-story-close {
  background: none;
  border: none;
  color: #ffffff;
  font-size: 24px;
  cursor: pointer;
  padding: 4px;
  text-decoration: none;
}

/* Center Content & Preview Layout */
.story-viewer-container {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  position: relative;
  padding-bottom: 20px;
}

/* Active Story Card (9:16 Aspect Ratio) */
.active-story-card {
  position: relative;
  width: 100%;
  max-width: 420px;
  height: 88vh;
  max-height: 820px;
  background-color: #000000;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.8);
}

/* Top Segmented Progress Bar */
.story-progress-bar {
  display: flex;
  gap: 4px;
  padding: 12px 12px 6px 12px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
}

.progress-segment {
  flex: 1;
  height: 2px;
  background: rgba(255, 255, 255, 0.35);
  border-radius: 2px;
  overflow: hidden;
}

.progress-fill {
  width: 0%;
  height: 100%;
  background: #ffffff;
  transition: width 0.1s linear;
}

.progress-fill.active {
  width: 100%;
}

/* Story Author Header */
.story-author-header {
  position: absolute;
  top: 20px;
  left: 0;
  right: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 12px;
  z-index: 10;
}

.author-info {
  display: flex;
  align-items: center;
  gap: 8px;
}

.author-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
}

.author-name {
  font-weight: 600;
  font-size: 13px;
  color: #ffffff;
}

.story-time {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.6);
}

.story-header-controls {
  display: flex;
  align-items: center;
  gap: 10px;
}

.btn-story-icon {
  background: none;
  border: none;
  color: #ffffff;
  font-size: 14px;
  cursor: pointer;
  opacity: 0.85;
  padding: 4px;
}

.btn-story-icon:hover {
  opacity: 1;
}

/* Media Element & Interactive Sticker */
.story-media-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
}

.story-media-element {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Question Sticker Box */
.story-sticker-question {
  position: absolute;
  width: 78%;
  background: #ffffff;
  border-radius: 16px;
  padding: 24px 16px 16px 16px;
  text-align: center;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
  z-index: 5;
}

.sticker-avatar-badge {
  position: absolute;
  top: -18px;
  left: 50%;
  transform: translateX(-50%);
  width: 36px;
  height: 36px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid #ffffff;
}

.sticker-avatar-badge img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sticker-prompt {
  color: #000000;
  font-weight: 700;
  font-size: 15px;
  margin-bottom: 12px;
  line-height: 1.3;
}

.sticker-input-box input {
  width: 100%;
  background: #eef1f5;
  border: none;
  border-radius: 10px;
  padding: 10px 14px;
  font-size: 13px;
  color: #333333;
  outline: none;
}

/* Bottom Actions & Reply */
.story-bottom-bar {
  position: absolute;
  bottom: 14px;
  left: 12px;
  right: 12px;
  display: flex;
  align-items: center;
  gap: 12px;
  z-index: 10;
}

.story-reply-pill {
  flex-grow: 1;
}

.story-reply-pill input {
  width: 100%;
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 24px;
  padding: 10px 16px;
  color: #ffffff;
  font-size: 13px;
  outline: none;
  backdrop-filter: blur(4px);
}

.story-reply-pill input::placeholder {
  color: rgba(255, 255, 255, 0.8);
}

.btn-story-action {
  background: none;
  border: none;
  color: #ffffff;
  font-size: 22px;
  cursor: pointer;
  padding: 4px;
}

.story-bottom-scrubber {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: transparent;
}

/* Side Preview Cards (Next User Stories) */
.next-stories-preview-wrapper {
  display: flex;
  align-items: center;
  gap: 16px;
  position: relative;
}

@media (max-width: 900px) {
  .next-stories-preview-wrapper {
    display: none;
  }
}

.btn-nav-next {
  position: absolute;
  left: -20px;
  z-index: 20;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  backdrop-filter: blur(4px);
}

.side-story-card {
  position: relative;
  width: 140px;
  height: 240px;
  border-radius: 12px;
  overflow: hidden;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.2s, transform 0.2s;
  text-decoration: none;
  display: block;
}

.side-story-card:hover {
  opacity: 1;
  transform: scale(1.03);
}

.side-card-blur-bg {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  filter: blur(4px) brightness(0.6);
}

.side-card-info {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 2;
  color: #ffffff;
  padding: 8px;
  text-align: center;
}

.avatar-ring {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  padding: 2px;
  background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888);
  margin-bottom: 8px;
}

.side-avatar {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}

.side-username {
  font-size: 12px;
  font-weight: 600;
  color: #ffffff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 110px;
}

.side-time {
  font-size: 10px;
  color: rgba(255, 255, 255, 0.7);
}



/* ==========================================================================
   MORE HAMBURGER POPUP MENU
   ========================================================================== */

.btn-more-menu {
  background: none !important;
  border: none !important;
  color: var(--text-secondary, #8e96a3) !important;
  font-size: 20px !important;
  width: 44px !important;
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 12px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  padding: 0 !important;
}

.btn-more-menu:hover,
.btn-more-menu:focus,
.btn-more-menu.show,
.btn-more-menu.active {
  color: #ffffff !important;
  background-color: rgba(255, 255, 255, 0.08) !important;
}

.more-dropdown-menu {
  min-width: 250px !important;
  background-color: #121620 !important;
  border: 1px solid #262626 !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.6) !important;
  border-radius: 14px !important;
  padding: 8px !important;
  left: 12px !important;
  bottom: 100% !important;
  margin-bottom: 12px !important;
  z-index: 100000 !important;
}

.more-dropdown-menu .dropdown-item {
  color: #e2e8f0 !important;
  padding: 10px 14px !important;
  border-radius: 8px !important;
  transition: background-color 0.15s ease, color 0.15s ease !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}

.more-dropdown-menu .dropdown-item:hover,
.more-dropdown-menu .dropdown-item:focus {
  background-color: #1e2538 !important;
  color: #ffffff !important;
}

.more-dropdown-menu .dropdown-item i {
  font-size: 16px !important;
  width: 20px !important;
  text-align: center !important;
}


/* --- Instagram Unified Creation Bar 2026 --- */
.ig-publisher-quick-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-top: 1px solid #efefef;
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.ig-publisher-quick-bar::-webkit-scrollbar {
  display: none;
}
body.night-mode .ig-publisher-quick-bar {
  border-top-color: #262626;
}
.ig-quick-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 13px;
  background: #f8f9fa;
  border-radius: 20px;
  font-size: 13px;
  font-weight: 600;
  color: #262626;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.15s ease-in-out;
  border: 1px solid #e5e7eb;
  text-decoration: none !important;
  user-select: none;
}
body.night-mode .ig-quick-item {
  background: #1e1e1e;
  color: #f5f5f5;
  border-color: #333333;
}
.ig-quick-item:hover {
  background: #f1f3f5;
  transform: translateY(-1px);
}
body.night-mode .ig-quick-item:hover {
  background: #2a2a2a;
}
.ig-quick-item i {
  font-size: 14px;
}
.ig-quick-item .js_x-uploader {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}
.ig-quick-studio-btn {
  margin-left: auto;
  background: linear-gradient(135deg, rgba(225, 48, 108, 0.12), rgba(131, 58, 180, 0.12));
  border-color: rgba(225, 48, 108, 0.3);
  color: #e1306c !important;
}
body.night-mode .ig-quick-studio-btn {
  background: linear-gradient(135deg, rgba(225, 48, 108, 0.2), rgba(131, 58, 180, 0.2));
  border-color: rgba(225, 48, 108, 0.5);
  color: #f472b6 !important;
}
