/* ============================================================
   CS2026 MODERNA — global.css
   MyBB default styling refactored onto the theme's design tokens.
   Every functional MyBB / plugin class is preserved; only the
   visual layer is rewritten. Colours pull from the tokens defined
   in the theme stylesheet (style.css), so this file follows the
   Dark / Light / Blue accent modes automatically.

   00. Token fallbacks (in case global.css loads alone)
   01. Global reset
   02. MyBB compatibility — links & typography
   03. Layout (#container, .wrapper, #content)
   04. Tables -> cards (.tborder .thead .tcat .trow*)
   05. Forum & thread components (.forum_status, lastpost…)
   06. Postbit
   07. User components (reputation, warnings, online)
   08. Forms & editor
   09. Buttons (.button, .postbit_buttons, a.button)
   10. Alerts & notices
   11. Pagination
   12. Popup menus / dropdowns
   13. Quotes / code / attachments
   14. jGrowl / modal / Impromptu (MyBB JS chrome)
   15. Helpers
   16. Responsive
   ============================================================ */

/* ---------- 00. TOKEN FALLBACKS ----------
   These mirror style.css so global.css is never colourless even if
   loaded on its own. style.css (loaded first) overrides them and
   supplies the Dark/Light/Blue switching via [data-theme]. */
:root{
	--bg:#0b0d10; --panel:#12151a; --card:#161a20; --raise:#1c2129;
	--line:#252b34; --line-soft:#1e232b;
	--accent:#ff7b1c; --accent-hover:#ff9440; --accent-rgb:255,123,28;
	--ember:#e0490f; --blue:#4aa3ff; --success:#5ecb6a; --warning:#ffc857; --danger:#ff5c5c;
	--text:#f2f4f7; --muted:#8a94a3;
	--font-display:'Barlow Condensed',system-ui,sans-serif;
	--font-body:'Inter',system-ui,sans-serif;
	--radius:10px; --radius-sm:8px; --gap:18px;
	--shadow-1:0 1px 2px rgba(0,0,0,.4);
	--shadow-2:0 14px 30px -16px rgba(0,0,0,.8);
	--dur:.3s; --ease:cubic-bezier(.22,.61,.36,1); --ease-out:cubic-bezier(.16,1,.3,1);
}

/* Semantic aliases requested by the theme spec, mapped to our tokens */
:root{
	--bg-primary:var(--bg);
	--bg-secondary:var(--panel);
	--bg-raised:var(--raise);
	--text-primary:var(--text);
	--text-muted:var(--muted);
	--border-color:var(--line);
	--accent-color:var(--accent);
}

/* ---------- 01. GLOBAL RESET ---------- */
body{
	background:var(--bg);
	color:var(--text);
	text-align:left;
	line-height:1.55;
	margin:0;
	font-family:var(--font-body);
	font-size:15px;
	overflow-y:scroll;
	-webkit-font-smoothing:antialiased;
}
img{border:none;max-width:100%;height:auto;}
hr{background:var(--line);color:var(--line);height:1px;border:0;}
form{margin:0;padding:0;}

/* ---------- 02. MyBB COMPAT — links & typography ---------- */
a:link,a:visited{color:var(--accent-hover);text-decoration:none;transition:color var(--dur) var(--ease);}
a:hover,a:active{color:var(--accent);text-decoration:none;}

.smalltext{font-size:12px;color:var(--muted);}
.largetext{font-size:18px;font-weight:700;font-family:var(--font-display);letter-spacing:.02em;}

.navigation{color:var(--muted);font-size:12px;}
.navigation a:link,.navigation a:visited{color:var(--muted);text-decoration:none;}
.navigation a:hover,.navigation a:active{color:var(--accent);text-decoration:none;}
.navigation .active{color:var(--text);font-weight:700;font-size:12px;}

/* ---------- 03. LAYOUT ---------- */
#container{
	color:var(--text);
	text-align:left;
	line-height:1.55;
	margin:0;
	font-family:var(--font-body);
	font-size:15px;
	min-width:0;                 /* kill the old 990px floor — theme is responsive */
	background:var(--bg);
}
.wrapper{
	width:100%;
	min-width:0;
	max-width:var(--container);
	margin-inline:auto;
	padding-inline:22px;
	box-sizing:border-box;
}
#content{
	background:transparent;
	width:auto !important;
	padding:var(--gap) 0;
	overflow:visible;
}

/* Neutralise the stock header/logo/panel chrome — the theme supplies its
   own header/subnav. If any default markup slips through, keep it invisible
   rather than clashing. */
#logo{background:transparent;padding:0;border:0;}
#panel .upper,#panel .lower{background:transparent;border:0;color:var(--muted);padding:0;}
#panel .upper a,#panel .lower a{color:var(--muted);}
#header ul.menu{margin:0;padding:0;list-style:none;}
#header ul.menu li{margin:0 7px;display:inline;}

/* ---------- 04. TABLES -> CARDS ----------
   MyBB builds forums/threads/most pages out of .tborder tables with
   .thead/.tcat headers and .trow1/.trow2 rows. We keep the classes but
   render them as the theme's dark cards. */
table{color:var(--text);font-size:14px;border-collapse:collapse;}

.tborder{
	background:var(--card);
	width:100%;
	margin:0 0 var(--gap);
	border:1px solid var(--line-soft);
	border-radius:var(--radius);
	padding:0;
	box-shadow:var(--shadow-2);
	overflow:hidden;
	border-spacing:0;
}
.tfixed{table-layout:fixed;word-wrap:break-word;}

/* Section header (blue bar in stock MyBB) */
.thead{
	background:var(--secondary,var(--raise));
	background:linear-gradient(180deg,var(--raise),var(--panel));
	color:var(--accent);
	border:0;
	border-bottom:1px solid var(--line-soft);
	padding:14px 18px;
	font-family:var(--font-display);
	font-size:.95rem;
	font-weight:700;
	letter-spacing:.06em;
	text-transform:uppercase;
}
.thead a:link,.thead a:visited{color:var(--accent);text-decoration:none;}
.thead a:hover,.thead a:active{color:var(--accent-hover);text-decoration:none;}
.thead input.textbox,.thead select{border:1px solid var(--line);}

/* Category bar */
.tcat{
	background:var(--raise);
	color:var(--muted);
	border:0;
	border-bottom:1px solid var(--line-soft);
	padding:11px 18px;
	font-size:12px;
	font-weight:700;
	letter-spacing:.04em;
	text-transform:uppercase;
}
.tcat a:link,.tcat a:visited{color:var(--muted);}
.tcat a:hover,.tcat a:active{color:var(--accent);}

/* Rows */
.trow1{background:var(--card);border:0;border-bottom:1px solid var(--line-soft);}
.trow2{background:var(--card);border:0;border-bottom:1px solid var(--line-soft);}
.tborder tr:last-child .trow1,
.tborder tr:last-child .trow2{border-bottom:0;}
.trow1,.trow2{transition:background var(--dur) var(--ease);}
tr:hover > .trow1,tr:hover > .trow2{background:var(--raise);}

.trow_shaded,.post.unapproved_post{background:rgba(255,92,92,.10);}
.trow_deleted,.post.deleted_post{background:rgba(160,107,255,.10);}
.trow_selected,tr.trow_selected td{
	background:rgba(var(--accent-rgb),.12);
	color:var(--text);
	border-color:rgba(var(--accent-rgb),.4);
}
.trow_selected a:link,.trow_selected a:visited,
.trow_selected a:hover,.trow_selected a:active{color:var(--accent-hover);}

.trow_sep{
	background:var(--raise);
	color:var(--accent);
	border-bottom:1px solid var(--line-soft);
	padding:11px 18px;font-size:12px;font-weight:800;
	letter-spacing:.06em;text-transform:uppercase;
}

.tfoot{
	border:0;border-top:1px solid var(--line-soft);
	padding:12px 18px;background:var(--raise);color:var(--muted);
	border-radius:0 0 var(--radius) var(--radius);
}
.tfoot a:link,.tfoot a:visited{color:var(--muted);text-decoration:none;}
.tfoot a:hover,.tfoot a:active{color:var(--accent);text-decoration:none;}

.no_bottom_border{border-bottom:0;}
.selectall{background:rgba(var(--accent-rgb),.12);border-bottom:1px solid rgba(var(--accent-rgb),.35);color:var(--text);text-align:center;}
.bottommenu{background:var(--card);color:var(--text);border:1px solid var(--line-soft);border-radius:var(--radius);padding:14px;}

/* Expand/collapse control MyBB toggles on categories */
.expcolimage{float:right;width:auto;vertical-align:middle;margin-top:2px;}
.tcat_menu > .expcolimage{margin-top:0;}

/* Theme-specific aliases so new templates can opt into cards directly */
.theme-card,.theme-panel,.theme-forum-card,.theme-thread-card,.theme-profile-card{
	background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);
	box-shadow:var(--shadow-2);overflow:hidden;
}
.theme-container{max-width:var(--container);margin-inline:auto;padding-inline:22px;}
.theme-header{background:var(--panel);border-bottom:1px solid var(--line);}
.theme-sidebar{background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius);}
.theme-widget{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);padding:16px;}

/* ---------- 05. FORUM & THREAD COMPONENTS ---------- */
/* Status icons: keep the sprite hooks working but give a themed fallback.
   MyBB ships images/<theme>/forum_icon_sprite.png etc. — leave the sprite
   in place; only round the container so it fits the card look. */
.forum_status{
	height:30px;width:30px;display:inline-block;border-radius:8px;
	background:var(--raise) url(../../../images/forum_icon_sprite.png) no-repeat 0 0;
}
.forum_on{background-position:0 0;}
.forum_off{background-position:0 -30px;filter:grayscale(.4) opacity(.7);}
.forum_offclose{background-position:0 -60px;}
.forum_offlink{background-position:0 -90px;}

.subforumicon{
	height:10px;width:10px;display:inline-block;margin:0 5px;
	background:url(../../../images/mini_status_sprite.png) no-repeat 0 0;
}
.subforum_minion{background-position:0 0;}
.subforum_minioff{background-position:0 -10px;}
.subforum_minioffclose{background-position:0 -20px;}
.subforum_miniofflink{background-position:0 -30px;}

.subject_new{font-weight:700;color:var(--text);}
.thread_start_datetime{color:var(--muted);}

/* Forum / thread legends */
.forum_legend,.forum_legend dt,.forum_legend dd{margin:0;padding:0;}
.forum_legend dd{float:left;margin-right:14px;margin-top:7px;color:var(--muted);}
.forum_legend dt{margin-right:10px;float:left;}
.thread_legend,.thread_legend dd{margin:0;padding:0;}
.thread_legend dd{padding-bottom:4px;margin-right:15px;color:var(--muted);}
.thread_legend img{margin-right:4px;vertical-align:bottom;}

/* ---------- 06. POSTBIT ---------- */
#posts_container{padding:0;}
.post{overflow:hidden;background:var(--card);border-bottom:1px solid var(--line-soft);}
.post.classic{padding-top:15px;}

.post .post_author{
	border-bottom:1px solid var(--line-soft);
	border-top:0;
	background:var(--raise);
	padding:8px 12px;overflow:hidden;
}
.post.classic .post_author{
	border:1px solid var(--line-soft);border-radius:var(--radius-sm);
	float:left;width:15%;margin:0 1% 15px 0;padding:12px 1%;
}
.post .post_author .buddy_status{vertical-align:middle;margin-top:-4px;}
.post .post_author div.author_avatar{float:left;margin-right:10px;}
.post.classic .post_author div.author_avatar{float:none;text-align:center;margin-bottom:8px;}
.post .post_author div.author_avatar img{
	padding:0;border:2px solid var(--accent);border-radius:10px;background:transparent;
}
.post .post_author div.author_information{float:left;padding:4px 8px;}
.post.classic .post_author div.author_information{float:none;padding:0;text-align:center;}
.post .post_author div.author_statistics{
	float:right;font-size:11px;padding:4px 10px 4px 5px;color:var(--muted);line-height:1.4;
}
.post.classic .post_author div.author_statistics{
	border-top:1px solid var(--line-soft);margin:8px 0 0;padding:8px 6px 3px;float:none;
}

.post .post_head{
	font-size:11px;padding-bottom:6px;border-bottom:1px solid var(--line-soft);margin-bottom:6px;
}
.post .post_head span.post_date{color:var(--muted);}
.post .post_head span.edited_post{font-size:10px;color:var(--muted);}
.post .post_head span.edited_post a{color:var(--muted);}

.post_body{font-size:14px;padding:12px 0;color:var(--text);}
.post.classic .post_content{float:left;width:79%;padding:0 1% 5px;}
.post_content{padding:12px 16px 8px;}
.post_content .signature{margin-top:8px;border-top:1px solid var(--line-soft);padding:10px 0 4px;color:var(--muted);}

.post .post_meta{margin:4px 0;font-size:11px;color:var(--muted);}
.post .post_meta a:link,.post .post_meta a:visited{color:var(--muted);}
.post .post_meta a:hover,.post .post_meta a:active{color:var(--accent);}

.post_controls{
	clear:both;background:var(--raise);
	border-bottom:0;border-top:1px solid var(--line-soft);
	padding:8px 12px;overflow:hidden;
}
.post.unapproved_post .post_author{border-bottom-color:rgba(255,92,92,.4);}
.post.classic.unapproved_post .post_author{border-color:rgba(255,92,92,.4);}
.post.unapproved_post .post_controls{border-top-color:rgba(255,92,92,.4);}

.ignored_post,.deleted_post_collapsed{border-top:2px solid var(--accent);padding:15px;}
.deleted_post_hidden{border-top:2px solid var(--line);padding:15px;}
.ignored_post .show_ignored_post,.deleted_post_collapsed .show_deleted_post{margin-top:-15px;}

.post:not(.deleted_post) .postbit_qrestore,
.post:not(.deleted_post) .status_type,
.post.deleted_post .postbit_mirage{display:none;}

/* ---------- 07. USER COMPONENTS ---------- */
.online{color:var(--success);}
.offline{color:var(--muted);}

.reputation_positive{color:var(--success);}
.reputation_neutral{color:var(--muted);}
.reputation_negative{color:var(--danger);}
.trow_reputation_positive{background:rgba(94,203,106,.12);}
.trow_reputation_negative{background:rgba(255,92,92,.12);}

.repbox{font-size:16px;font-weight:700;padding:5px 7px;border-radius:6px;}
._neutral{background:var(--raise);color:var(--muted);border:1px solid var(--line);}
._minus{background:rgba(255,92,92,.14);color:var(--danger);border:1px solid rgba(255,92,92,.4);}
._plus{background:rgba(94,203,106,.14);color:var(--success);border:1px solid rgba(94,203,106,.4);}

.high_warning{color:#ff5c5c;}
.moderate_warning{color:#ff8a3d;}
.low_warning{color:var(--warning);}
.imminent_banned{color:#c00;}
.high_banned{color:#ff3b3b;}
.moderate_banned{color:#ff7a3d;}
.low_banned{color:var(--success);}

/* Theme profile/avatar helpers */
.theme-avatar{border-radius:12px;border:2px solid var(--accent);}
.theme-badge{
	display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:5px;
	font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
	background:rgba(var(--accent-rgb),.12);border:1px solid rgba(var(--accent-rgb),.4);color:var(--accent-hover);
}

/* ---------- 08. FORMS & EDITOR ---------- */
input.textbox,textarea,select{
	background:var(--bg);color:var(--text);
	border:1px solid var(--line);border-radius:var(--radius-sm);
	padding:9px 11px;outline:0;
	font-family:var(--font-body);font-size:14px;line-height:1.5;
	transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
input.textbox:focus,textarea:focus,select:focus{
	border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.15);
}
textarea{line-height:1.55;}
input.textbox.portal_search{width:68%;}
form #message{width:100%;box-sizing:border-box;}

input.error,textarea.error,select.error{border:1px solid var(--danger);color:var(--danger);}
input.valid,textarea.valid,select.valid{border:1px solid var(--success);}
label.error{color:var(--danger);margin:5px;display:block;font-weight:700;font-size:11px;}

fieldset{padding:14px;border:1px solid var(--line-soft);border-radius:var(--radius-sm);margin:0;}
fieldset.trow1,fieldset.trow2{border-color:var(--line);}
fieldset.align_right{text-align:right;}

.editor{background:var(--raise);border:1px solid var(--line-soft);border-radius:var(--radius-sm) var(--radius-sm) 0 0;}
.editor_control_bar{background:var(--panel);border:1px solid var(--line-soft);}
.post .editor_control_bar{background:var(--raise);}

.theme-form input,.theme-form textarea,.theme-form select{width:100%;box-sizing:border-box;margin-bottom:12px;}

/* ---------- 09. BUTTONS ---------- */
button,input.button{
	cursor:pointer;
	font-family:var(--font-display);font-size:.82rem;font-weight:700;
	letter-spacing:.05em;text-transform:uppercase;
	background:var(--raise);border:1px solid var(--line);color:var(--text);
	border-radius:var(--radius-sm);outline:0;
	transition:transform var(--dur) var(--ease-out),border-color var(--dur) var(--ease),background var(--dur) var(--ease);
}
button:hover,input.button:hover{border-color:var(--accent);transform:translateY(-1px);}
button:active,input.button:active{transform:translateY(0);}

/* Primary action buttons (new thread / new reply etc.) */
a.button:link,a.button:visited{
	background:linear-gradient(100deg,var(--ember),var(--accent));
	color:#fff;display:inline-block;padding:10px 16px;margin:2px 2px 6px;
	border:1px solid transparent;border-radius:var(--radius-sm);
	font-family:var(--font-display);font-size:.85rem;font-weight:700;
	letter-spacing:.05em;text-transform:uppercase;
	box-shadow:0 10px 26px -14px rgba(var(--accent-rgb),.7);
	transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease);
}
a.button:hover,a.button:active{transform:translateY(-2px);box-shadow:0 16px 34px -14px rgba(var(--accent-rgb),.85);color:#fff;}
a.button.small_button{font-size:.78rem;margin:0;padding:7px 12px;}
/* keep sprite spans working */
a.button span{padding-left:20px;display:inline-block;background-image:url(../../../images/buttons_sprite.png);background-repeat:no-repeat;}
a.button.new_thread_button span{background-position:0 -340px;}
a.button.new_reply_button span{background-position:0 -360px;}
a.button.closed_button span{background-position:0 -380px;}
a.button.rate_user_button span{background-position:0 -400px;}
a.button.add_buddy_button span{background-position:0 -440px;}
a.button.remove_buddy_button span{background-position:0 -480px;}
a.button.add_ignore_button span{background-position:0 -460px;}
a.button.remove_ignore_button span{background-position:0 -500px;}
a.button.report_user_button span{background-position:0 -520px;}

/* Postbit action buttons */
.postbit_buttons > a:link,.postbit_buttons > a:visited{
	display:inline-block;padding:5px 10px;margin:2px;font-size:11px;
	background:var(--raise);border:1px solid var(--line);border-radius:6px;color:var(--muted);
	transition:all var(--dur) var(--ease);
}
.postbit_buttons > a:hover,.postbit_buttons > a:active{border-color:var(--accent);color:var(--text);}
.postbit_buttons a span{
	padding-left:20px;display:inline-block;height:16px;
	background-image:url(../../../images/buttons_sprite.png);background-repeat:no-repeat;
}
.postbit_buttons a.postbit_find span{background-position:0 0;}
.postbit_buttons a.postbit_reputation_add span{background-position:0 -20px;}
.postbit_buttons a.postbit_email span{background-position:0 -40px;}
.postbit_buttons a.postbit_website span{background-position:0 -60px;}
.postbit_buttons a.postbit_pm span{background-position:0 -80px;}
.postbit_buttons a.postbit_quote span{background-position:0 -100px;}
.postbit_buttons a.postbit_multiquote span{background-position:0 -120px;}
.postbit_buttons a.postbit_multiquote_on span{background-position:0 -140px;}
.postbit_buttons a.postbit_edit span{background-position:0 -160px;}
.postbit_buttons a.postbit_qdelete span{background-position:0 -180px;}
.postbit_buttons a.postbit_qrestore span{background-position:0 -200px;}
.postbit_buttons a.postbit_report span{background-position:0 -220px;}
.postbit_buttons a.postbit_warn span{background-position:0 -240px;}
.postbit_buttons a.postbit_purgespammer span{background-position:0 -540px;}
.postbit_buttons a.postbit_reply_pm span{background-position:0 -260px;}
.postbit_buttons a.postbit_reply_all span{background-position:0 -280px;}
.postbit_buttons a.postbit_forward_pm span{background-position:0 -300px;}
.postbit_buttons a.postbit_delete_pm span{background-position:0 -320px;}

.theme-button{
	display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:var(--radius-sm);
	font-family:var(--font-display);font-weight:700;letter-spacing:.05em;text-transform:uppercase;
	background:linear-gradient(100deg,var(--ember),var(--accent));color:#fff;border:0;cursor:pointer;
	box-shadow:0 10px 26px -14px rgba(var(--accent-rgb),.7);transition:transform var(--dur) var(--ease-out);
}
.theme-button:hover{transform:translateY(-2px);color:#fff;}

/* Quick jump keeps its sprite */
.quick_jump{
	background:url(../../../images/jump.png) no-repeat 0;width:13px;height:13px;
	padding-left:13px;margin-top:-3px;border:none;
}

/* ---------- 10. ALERTS & NOTICES ---------- */
.pm_alert{
	background:rgba(255,200,87,.12);border:1px solid rgba(255,200,87,.4);color:var(--text);
	text-align:center;padding:10px 20px;margin-bottom:15px;font-size:12px;border-radius:var(--radius-sm);
}
.red_alert{
	background:rgba(255,92,92,.12);border:1px solid rgba(255,92,92,.45);color:var(--danger);
	text-align:center;padding:10px 20px;margin-bottom:15px;font-size:12px;
	word-wrap:break-word;border-radius:var(--radius-sm);
}
.red_alert a:link,.red_alert a:visited,.red_alert a:hover,.red_alert a:active{color:var(--danger);}

.high_warning{color:#ff5c5c;}

div.error{
	padding:12px 16px;border:1px solid rgba(255,200,87,.45);
	background:rgba(255,200,87,.1);font-size:13px;border-radius:var(--radius-sm);color:var(--text);
}
div.error p{margin:0;color:var(--text);font-weight:400;}
div.error p em{
	font-style:normal;font-weight:700;padding-left:24px;display:block;color:var(--danger);
	background:url(../../../images/error.png) no-repeat 0;
}
div.error ul{margin-left:24px;}

.success_message{color:var(--success);font-weight:700;font-size:11px;margin-bottom:10px;}
.error_message{color:var(--danger);font-weight:700;font-size:11px;margin-bottom:10px;}

/* Theme alert alias */
.theme-alert{
	padding:12px 16px;border-radius:var(--radius-sm);font-size:13px;
	background:var(--raise);border:1px solid var(--line-soft);color:var(--text);
}

.highlight{background:rgba(255,200,87,.22);padding:2px 3px;border-radius:3px;color:var(--text);}

/* ---------- 11. PAGINATION ---------- */
.pagination{font-size:11px;padding-top:10px;margin-bottom:5px;color:var(--muted);}
.tfoot .pagination,.tcat .pagination{padding-top:0;}
.pagination .pages{font-weight:700;color:var(--muted);}
.pagination .pagination_current,.pagination a{
	display:inline-block;padding:6px 11px;margin-bottom:3px;border-radius:var(--radius-sm);
}
.pagination a{
	background:var(--raise);border:1px solid var(--line);color:var(--text);
	transition:all var(--dur) var(--ease);
}
.pagination a:hover{
	background:linear-gradient(100deg,var(--ember),var(--accent));
	color:#fff;border-color:transparent;text-decoration:none;
}
.pagination .pagination_current{
	background:rgba(var(--accent-rgb),.14);color:var(--accent);
	border:1px solid rgba(var(--accent-rgb),.4);font-weight:700;
}
.pagination .go_page img{margin-bottom:-4px;}
.drop_go_page{background:var(--raise);padding:6px;border-radius:var(--radius-sm);}
.pagination_breadcrumb{
	background:var(--raise);border:1px solid var(--line-soft);outline:0;
	padding:8px 12px;margin-top:5px;font-weight:400;border-radius:var(--radius-sm);
}
.pagination_breadcrumb_link{vertical-align:middle;cursor:pointer;}

/* ---------- 12. POPUP MENUS / DROPDOWNS ---------- */
.popup_menu{
	background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
	box-shadow:var(--shadow-2);overflow:hidden;
}
.popup_menu .popup_item_container{margin:0;text-align:left;}
.popup_menu .popup_item{
	background:transparent;color:var(--text);display:block;padding:9px 14px;
	white-space:nowrap;text-decoration:none;transition:background var(--dur) var(--ease);
}
.popup_menu .popup_item:hover,.popup_menu a.popup_item:hover{
	background:var(--raise);color:var(--accent);text-decoration:none;
}
.theme-dropdown{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-2);}

/* ---------- 13. QUOTES / CODE / ATTACHMENTS ---------- */
blockquote{
	border:1px solid var(--line-soft);border-left:3px solid var(--accent);
	margin:0 0 10px;background:var(--raise);padding:12px 14px;border-radius:var(--radius-sm);
}
blockquote cite{
	font-weight:700;border-bottom:1px solid var(--line-soft);font-style:normal;display:block;
	padding-bottom:5px;margin:0 0 10px;color:var(--text);
}
blockquote cite > span{float:right;font-weight:400;font-size:12px;color:var(--muted);}
blockquote cite span.highlight{float:none;font-weight:700;padding-bottom:0;}

.codeblock{background:var(--bg);border:1px solid var(--line-soft);padding:12px 14px;border-radius:var(--radius-sm);}
.codeblock .title{border-bottom:1px solid var(--line-soft);font-weight:700;padding-bottom:5px;margin:0 0 10px;color:var(--muted);}
.codeblock code{
	overflow:auto;height:auto;max-height:220px;display:block;
	font-family:Monaco,Consolas,'Courier New',monospace;font-size:13px;color:var(--text);
}

img.attachment{border:1px solid var(--line-soft);padding:2px;border-radius:6px;background:var(--raise);}

/* Poll bars themed */
.pollbar{
	background:linear-gradient(90deg,var(--ember),var(--accent));
	border:1px solid var(--line);height:10px;border-radius:5px;
}
.pollbar .percent{display:none;}
.poll_votedfor{background:var(--raise);border:1px solid var(--line-soft);}

.posticons_label{white-space:nowrap;}
.smilie{vertical-align:middle;}
.smilie_pointer{cursor:pointer;}
.separator{margin:5px;padding:0;height:0;font-size:1px;list-style-type:none;}

/* ---------- 14. jGrowl / MODAL / IMPROMPTU (MyBB JS chrome) ----------
   These power MyBB's AJAX notices, the .modal quick-actions and jQuery
   Impromptu prompts. Kept fully functional, restyled to the theme.
   (Legacy IE6 expression() hacks removed — dead weight, not functionality.) */
.jGrowl{z-index:9999;color:var(--text);font-size:12px;font-family:var(--font-body);position:fixed;}
.jGrowl.top-left{left:0;top:0;}
.jGrowl.top-right{right:0;top:0;}
.jGrowl.bottom-left{left:0;bottom:0;}
.jGrowl.bottom-right{right:0;bottom:0;}
.jGrowl.center{top:0;width:50%;left:25%;}
.jGrowl.center .jGrowl-notification,.jGrowl.center .jGrowl-closer{margin-left:auto;margin-right:auto;}
.jGrowl-notification{
	background:var(--card);border:1px solid var(--line);opacity:.98;
	width:250px;padding:14px;margin:10px;text-align:left;display:none;
	border-radius:var(--radius);box-shadow:var(--shadow-2);word-break:break-word;color:var(--text);
}
.jGrowl .jGrowl-notification{min-height:40px;}
.jGrowl-notification .jGrowl-header{font-weight:700;font-size:.85em;color:var(--accent);}
.jGrowl-notification .jGrowl-close{
	background:transparent;color:var(--muted);border:none;z-index:99;float:right;
	font-weight:700;font-size:1em;cursor:pointer;
}
.jGrowl-closer{
	background:var(--raise);border:1px solid var(--line);opacity:.98;
	width:250px;padding:6px 10px;margin:10px;text-align:center;display:none;
	border-radius:var(--radius);cursor:pointer;font-size:.9em;font-weight:700;color:var(--text);
}
.jGrowl .jGrowl-notification.jgrowl_success{background:rgba(94,203,106,.16);border-color:rgba(94,203,106,.5);color:var(--text);}
.jGrowl .jGrowl-notification.jgrowl_error{background:rgba(255,92,92,.16);border-color:rgba(255,92,92,.5);color:var(--text);}
.jGrowl .jGrowl-notification.jgrowl_process,.jGrowl .jGrowl-closer{background:rgba(255,200,87,.16);border-color:rgba(255,200,87,.5);color:var(--text);}
@media print{.jGrowl{display:none;}}

/* MyBB modal (jquery.modal) */
.blocker{
	position:fixed;inset:0;width:100%;height:100%;overflow:auto;z-index:9999;
	padding:20px;box-sizing:border-box;background:rgba(4,6,8,.74);text-align:center;
	backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
.blocker:before{content:"";display:inline-block;height:100%;vertical-align:middle;margin-right:-0.05em;}
.blocker.behind{background:transparent;}
.modal{
	width:420px;max-width:100%;text-align:left;background:var(--card);display:inline-block;
	vertical-align:middle;position:relative;z-index:2;box-sizing:border-box;
	border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-2);color:var(--text);
}
.modal a.close-modal{
	position:absolute;top:-12.5px;right:-12.5px;display:block;width:30px;height:30px;
	text-indent:-9999px;background:url(../../../images/close.png) no-repeat 0 0;
}
.modal-spinner{
	display:none;width:64px;height:64px;position:fixed;top:50%;left:50%;
	margin-right:-32px;margin-top:-32px;
	background:url(../../../images/spinner_big.gif) no-repeat center center;border-radius:var(--radius);
}

/* jQuery Impromptu (MyBB confirmation prompts) */
.jqifade{position:absolute;background:#000;}
iframe.jqifade{display:block;z-index:-1;}
div.jqi{
	width:400px;max-width:90%;font-family:var(--font-body);position:absolute;
	background:var(--card);font-size:12px;text-align:left;border:1px solid var(--line);
	border-radius:var(--radius);padding:7px;color:var(--text);box-shadow:var(--shadow-2);
}
div.jqi .jqiclose{position:absolute;top:4px;right:-2px;width:18px;cursor:default;color:var(--muted);font-weight:700;}
div.jqi .jqistate{background:var(--card);}
div.jqi .jqititle{padding:8px 12px;font-size:16px;line-height:20px;border-bottom:1px solid var(--line-soft);font-family:var(--font-display);color:var(--accent);}
div.jqi .jqimessage{padding:12px;line-height:1.6;color:var(--text);overflow:auto;}
div.jqi .jqibuttonshide{display:none;}
div.jqi .jqibuttons{
	text-align:right;margin:0 -7px -7px;border-top:1px solid var(--line-soft);
	background:var(--raise);border-radius:0 0 var(--radius) var(--radius);
}
div.jqi .jqibuttons button{
	margin:0;padding:14px 20px;background:transparent;border:none;border-left:1px solid var(--line-soft);
	color:var(--muted);font-weight:700;font-size:12px;cursor:pointer;transition:color var(--dur) var(--ease);
}
div.jqi .jqibuttons button.jqidefaultbutton{color:var(--accent);}
div.jqi .jqibuttons button:hover,div.jqi .jqibuttons button:focus{color:var(--accent-hover);outline:none;}
div.jqi .jqibuttons button[disabled]{color:var(--muted);opacity:.5;}
.jqiwarning .jqi .jqibuttons{background:rgba(255,92,92,.16);}
div.jqi .jqiparentstate::after{background:#000;opacity:.6;content:'';position:absolute;inset:0;border-radius:var(--radius);}
div.jqi .jqisubstate{position:absolute;top:0;left:20%;width:60%;padding:7px;border:1px solid var(--line-soft);border-top:none;border-radius:0 0 var(--radius) var(--radius);}
div.jqi .jqisubstate .jqibuttons button{padding:10px 18px;}
.jqi .jqiarrow{position:absolute;height:0;width:0;line-height:0;font-size:0;border:solid 10px transparent;}
.jqi .jqiarrowtl{left:10px;top:-20px;border-bottom-color:var(--card);}
.jqi .jqiarrowtc{left:50%;top:-20px;border-bottom-color:var(--card);margin-left:-10px;}
.jqi .jqiarrowtr{right:10px;top:-20px;border-bottom-color:var(--card);}
.jqi .jqiarrowbl{left:10px;bottom:-20px;border-top-color:var(--card);}
.jqi .jqiarrowbc{left:50%;bottom:-20px;border-top-color:var(--card);margin-left:-10px;}
.jqi .jqiarrowbr{right:10px;bottom:-20px;border-top-color:var(--card);}
.jqi .jqiarrowlt{left:-20px;top:10px;border-right-color:var(--card);}
.jqi .jqiarrowlm{left:-20px;top:50%;border-right-color:var(--card);margin-top:-10px;}
.jqi .jqiarrowlb{left:-20px;bottom:10px;border-right-color:var(--card);}
.jqi .jqiarrowrt{right:-20px;top:10px;border-left-color:var(--card);}
.jqi .jqiarrowrm{right:-20px;top:50%;border-left-color:var(--card);margin-top:-10px;}
.jqi .jqiarrowrb{right:-20px;bottom:10px;border-left-color:var(--card);}

/* ---------- 15. HELPERS ---------- */
.clear{clear:both;}
.float_left{float:left;}
.float_right{float:right;}
.hidden{display:none;float:none;width:1%;}
.hiddenrow{display:none;}
.scaleimages img{max-width:100%;}

#footer{clear:both;}
#debug{float:right;text-align:right;margin-top:20px;font-size:11px;color:var(--muted);}

/* Custom scrollbars (mirrors style.css so MyBB-only pages match) */
*{scrollbar-width:thin;scrollbar-color:var(--line) var(--bg);}
::-webkit-scrollbar{width:10px;height:10px;}
::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:var(--bg);}
::-webkit-scrollbar-thumb{background:var(--line);border-radius:9999px;border:2px solid var(--bg);transition:background var(--dur) var(--ease);}
::-webkit-scrollbar-thumb:hover{background:var(--accent);}

/* ---------- 16. RESPONSIVE ---------- */
@media (max-width:1440px){
	.wrapper{padding-inline:20px;}
}
@media (max-width:1024px){
	.wrapper{padding-inline:18px;}
	.post.classic .post_author{width:22%;}
	.post.classic .post_content{width:72%;}
}
@media (max-width:768px){
	body{font-size:14px;}
	.wrapper{padding-inline:14px;}
	/* Stack the classic postbit so avatars sit above the post on tablets */
	.post.classic .post_author,
	.post.classic .post_content{float:none;width:auto;margin:0;}
	.post.classic .post_author{border-radius:var(--radius-sm) var(--radius-sm) 0 0;margin-bottom:0;}
	.thead,.tcat{padding:11px 14px;}
	.post_content{padding:12px;}
	/* Let wide MyBB tables scroll instead of blowing out the layout */
	.tborder{display:block;overflow-x:auto;}
}
@media (max-width:480px){
	.wrapper{padding-inline:10px;}
	.pagination .pagination_current,.pagination a{padding:5px 9px;}
	a.button:link,a.button:visited{padding:9px 12px;font-size:.78rem;}
	.post .post_author div.author_avatar img{width:44px;height:44px;}
	#debug{float:none;text-align:left;}
}
