/**========================================================================
* Theme: Sanctum — dark (Sanctum Chamber / Cosmos-aligned)
* Pair with Sanctum_Light for the light variant.
* Based on Arc by 8lackMask — https://blackmask.codychat.store/
* Accent #ab47bc, dark glass surfaces to match Cosmos Cloud UI.
*========================================================================**/

/* custom font */
@import url('./font/Roboto.css');

/* general colors — Cosmos purple accent, near-black surfaces */
a {color:#ce93d8;}
body{font-family:'Roboto',sans-serif;background:#0a0a0a;color:#fff}
button { background:transparent; color:#fff; }
input,textarea,.post_input_container{font-family:'Roboto',sans-serif,'FontAwesome';background:#121212;color:#fff;border:1px solid #2d2d38 !important}
.setdef { color:#fff; }

/* item with background no effect */
.bback { background:rgb(0,0,0,0.12); }

/* item with background no effect with border */
.bbackb { background:rgb(0,0,0,0.10); border:1px solid rgb(0,0,0,0.08); }

/* item with no background and hover effect */
.bhover:hover, .bhoverr:hover { background:rgb(0,0,0,0.10); }

/* item with background and hover effect */
.bbackhover { background:rgb(0,0,0,0.10); }
.bbackhover:hover { background:rgb(0,0,0,0.14); }

/* item width background and hover effect with a border */
.bbackhoverb { background:rgb(0,0,0,0.05); }
.bbackhoverb:hover { background:rgb(0,0,0,0.025); border:1px solid rgb(0,0,0,0.08); }

/* item with no background with line separator and hover effect */
.blisting { border-bottom: 1px solid #2a2a32; }
.blisting:hover { background: rgb(0,0,0,0.10); }

/* item with no background with line separator */
.blist { border-bottom: 1px solid #2a2a32; }

/* private panel top */
.back_ptop { background:#1f1626; color:#fff; }

/* page menu & page sub menu */
.bpmenu:hover { background: rgb(255,255,255,0.09); }
.bsub { background:rgb(0,0,0,0.1); }
.bsub:hover { background:rgb(0,0,0,0.2); }

/* sub menus for card, logs, wall, news */
.bmenu, .submenu { border-bottom:1px solid #353540; }
.bmenu:hover, .submenu:hover { background:rgb(0,0,0,0.08); }

/* box shadow */
.bshadow, .page_element, .float_menu, .btnshadow, .pboxed { box-shadow:0 1px 3px rgb(0,0,0,0.2); }

/* main item selected for panel and box */
.bselected { background:rgb(255,255,255,0.08); }

/* reg menu selected item */
.rselected { background:rgb(255,255,255,0.08); }

/* page selected */
.pselected { color:#ab47bc; }

/* current item selected */
.cselected, .liked { background:rgb(255,255,255,0.05); }

/* paginate item selected */
.pag_btn{background:rgba(0,0,0,.15);color:#c1c1c1}
.pagselected,.pag_btn:hover{background:rgb(0,0,0,.20)}

/* count and gold tag */
.gtag{background:#8e24aa;border:1px solid rgb(255,255,255,.08)}

/* border color for separator and items border */
.bborder { border-bottom:1px solid rgb(255,255,255,0.05); }
.tborder { border-top:1px solid rgb(255,255,255,0.05); }
.lborder, .ppanel { border-left:1px solid rgb(255,255,255,0.05); }
.rborder { border-right:1px solid rgb(255,255,255,0.05); }
.fborder { border:1px solid rgb(255,255,255,0.05); }

/* float top color */
.float_top,.float_ctop { border-bottom:1px solid #353540; }

/* headers colors and top box colors */
.bhead{background:#1a1a1c;color:#fff;box-shadow:0 2px 5px rgb(0,0,0,0.8);}
.bsidebar{background: #141414; color:#fff}
.modal_top,.pro_top{background:#101010;color:#fff}
.bfoot{background:#1a1a1c;color:#fff}
.foot{background:#141414; color:#fff}

/* background major element panel, page menu, float menu, modal, chat boxes */
.backglob{background:#141414}
.back_chat{background:#141414 url('./images/office.webp');background-repeat:repeat;}
.back_priv,.back_panel,.back_modal,.page_element{background:#141414; }
.back_menu{background:#1c1c1e; }
.back_pmenu{background:#141414;color:#fff}
.back_box{background:#1c1c1e; }
.back_input{background:#181818; }
.back_quote{background:#1a1a1c; }

/* main theme color — Cosmos primary purple */
.theme_color{color:#ab47bc}
.default_color { color:#333; }
.error  { color:#cc0000; }
.success { color:#74b20e; }
.warn { color:#e39e20; }

/* button colors */
.theme_btn,.back_theme{background:#ab47bc;color:#fff}
.default_btn,.defaultd_btn,.back_default { background:#444; color:#fff; }
.ok_btn { background:#74b20e; color:#fff; }
.warn_btn { background:#e39e20; color:#fff; }
.delete_btn { background:#cc0000; color:#fff; }
.send_btn { color:#fff; }

/* default username color */
.user { color:#fff; }

/* chat system messsage text color */
.chat_system { color:#c1c1c1; }

/* opacity for offline users in list */
.offline { opacity:0.5; }

/* menu icon */
.menui,.subi { color:#ab47bc; }

/* wall reply background */
.reply_item { background:#1f1626; }

/* main post item option wall and news */
.main_post_item { color:#999; }

/* input option background colors */
.input_item { color:#999; }

/* private log bubble colors — purple family */
.target_private, .hunt_quote {color:#fff; background:#4a3d56;}
.hunter_private, .targ_quote {color:#fff; background:#7b1fa2;}

/* quote in chat background */
.cquote {  background:rgba(255, 255, 255, 0.4); color:#fff; }

/* tab menu */
.tab_menu { background:#141414; box-shadow:0 1px 3px rgb(0,0,0,0.2); }
.tab_menu_item { }
.tab_selected { background:rgb(255,255,255,0.08); }

/* modal menu */
.modal_mback { background:rgb(0,0,0,0.12); }
.modal_mborder { border-bottom: 1px solid #2a2a32; }
.modal_selected { background:rgb(255,255,255,0.08); }

/* back transparency background for modal box */
.modal_back { background-color:rgba(0,0,0,0.4); }

/* chat logs */
.mbubble { background: rgba(255, 255, 255, 0.2); }
.sys_log { }
.topic_log{ background:rgb(0,0,0,0.2); color:#fff; }

/* upload progress */
.bprogress { background:#74b20e; color:#fff; }

/* notification colors */
.bnotify { background:#c83d3d; color:#fff; }
.foot_notify, .head_notify { border:1px solid #fff; }

/* date colors */
.sub_date { color:#bbb; }
.sub_chat, .sub_priv { color:#ccc; }

/* secondary text color */
.sub_text,.list_mood{color:#c1c1c1}
.list_mood{font-weight:300}

/* profile likes */
.plikes { background-color:rgba(100,100,100,0.3); color:#fff; }

/* spinner color */
.bspin { color:rgb(255,255,255,0.3); }

/* special chat item */
.my_notice { color:#fff; background:#ab47bc; }
.system_text { background:#ededed; color:#666; }

/* outside pages background */
.back_page { background:#141414; color:#fff; }

/* video background color */
.post_video { background:rgb(0,0,0,1); }

/* slider */
.boom_slider .ui-widget-content { background: #ededed; }
.boom_slider .ui-state-default { background: #ab47bc !important; }
.boom_slider .ui-state-active { background: #ab47bc !important; }
.boom_slider .ui-slider-range { background:#ab47bc; }

/* select input color */
.selectboxit-list, .selectboxit-btn { background-color: #121212; color:#c1c1c1;  border:1px solid #2d2d38 !important; }
.selectboxit-list .selectboxit-focus .selectboxit-option-anchor { background-color: #181818; color:#fff; }
.selectboxit-default-arrow { border-top: 4px solid #ab47bc; }
.selectboxit-btn.selectboxit-enabled:hover, .selectboxit-btn.selectboxit-enabled:focus, .selectboxit-btn.selectboxit-enabled:active { background:#1a1a1c; color:#fff; }
.selectboxit-options { background:#121212; }
.selectboxit-list .selectboxit-option-anchor { color:#c1c1c1; }

/* Link preview: compact card + shrink-wrap bubble (no full-row empty space) */
.chat_message.sanctum-link-preview-msg {
	align-items: flex-start;
}
.mbubble.sanctum-has-link-preview,
.chat_tmessage.sanctum-has-link-preview {
	width: fit-content;
	max-width: min(100%, 288px);
	display: inline-block;
	vertical-align: top;
	box-sizing: border-box;
}
.mbubble.sanctum-has-link-preview.bubble {
	padding: 6px 8px;
	border-radius: 10px;
}
.sanctum-link-preview-wrap {
	margin-top: 6px;
	width: 100%;
	max-width: 280px;
}
.sanctum-link-preview {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 8px;
	overflow: hidden;
	background: rgba(0, 0, 0, 0.35);
	text-decoration: none !important;
	color: inherit;
	transition: border-color 0.15s ease, background 0.15s ease;
}
.sanctum-link-preview:hover {
	border-color: rgba(171, 71, 188, 0.45);
	background: rgba(0, 0, 0, 0.5);
}
.sanctum-link-preview__media {
	flex: 0 0 72px;
	min-height: 72px;
	max-width: 72px;
	background: #0d0d0f;
}
.sanctum-link-preview__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.sanctum-link-preview__body {
	flex: 1;
	min-width: 0;
	padding: 6px 8px;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.sanctum-link-preview__site {
	font-size: 9px;
	color: rgba(255, 255, 255, 0.45);
	text-transform: lowercase;
}
.sanctum-link-preview__title {
	font-size: 12px;
	font-weight: 600;
	color: #fff;
	line-height: 1.25;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.sanctum-link-preview__desc {
	font-size: 10px;
	color: rgba(255, 255, 255, 0.6);
	line-height: 1.3;
	max-height: 2.6em;
	overflow: hidden;
}
.sanctum-link-preview:not(:has(.sanctum-link-preview__media)) .sanctum-link-preview__body {
	padding: 8px 10px;
}
