/*  All Platform Leagues - phpBB style (child of prosilver)
    Matches the allplatformleagues.com dark theme: Barlow / Barlow Condensed, APL blue accent.
    The top bar and league dropdowns come from the allplatformleagues/navmenus extension. */

@import url("../../prosilver/theme/stylesheet.css");

:root {
	--apl-bg: #060810;
	--apl-card: #0d1220;
	--apl-card2: #121828;
	--apl-card3: #182036;
	--apl-border: rgba(255,255,255,.08);
	--apl-border2: rgba(255,255,255,.14);
	--apl-blue: #2563eb;
	--apl-blue2: #3b82f6;
	--apl-ice: #93c5fd;
	--apl-gold: #f59e0b;
	--apl-white: #f0f4ff;
	--apl-text: #d5dbe8;
	--apl-grey: #8b95a8;
	--apl-font-d: 'Barlow Condensed', 'Arial Narrow', sans-serif;
	--apl-font-b: 'Barlow', Verdana, Helvetica, Arial, sans-serif;
}

/* ---------- Base ---------- */
html, body { background: var(--apl-bg); color: var(--apl-text); font-family: var(--apl-font-b); }
body { background: radial-gradient(1200px 500px at 50% -120px, rgba(37,99,235,.14), transparent 70%), var(--apl-bg); background-attachment: fixed; }
h1, h2, h3, h4 { font-family: var(--apl-font-d); font-weight: 700; letter-spacing: .6px; color: var(--apl-white); }
h1 { font-size: 2.2em; text-transform: uppercase; }
h2 { font-size: 1.7em; text-transform: uppercase; color: var(--apl-white); }
h3 { border-bottom-color: var(--apl-border2); color: var(--apl-ice); font-family: var(--apl-font-d); text-transform: uppercase; letter-spacing: 1px; }
hr { border-color: var(--apl-border); border-top-color: transparent; }
hr.dashed { border-top-color: var(--apl-border2); }
a { color: var(--apl-ice); }
a:hover { color: #fff; text-decoration: none; }

.wrap { background: transparent; border: 0; max-width: 1280px; padding: 18px 20px; box-shadow: none; }
.page-body { margin-top: 0; }

/* ---------- Header ---------- */
.headerbar { background: linear-gradient(135deg, #0b1633 0%, #0d1f4d 55%, #10265f 100%); color: #fff; border: 1px solid var(--apl-border2); border-radius: 12px; margin-bottom: 10px; padding: 8px 10px; position: relative; overflow: hidden; }
.headerbar::after { content: ''; position: absolute; inset: auto -10% -60% 30%; height: 160%; background: radial-gradient(closest-side, rgba(59,130,246,.35), transparent); pointer-events: none; }
.site-description h1, .headerbar h1 { color: #fff; font-family: var(--apl-font-d); font-size: 2.4em; letter-spacing: 2px; text-transform: uppercase; margin-right: 0; }
.site-description p { color: var(--apl-ice); font-size: 1.05em; }
.headerbar .logo { padding: 8px 14px 8px 8px; }
.headerbar a, .headerbar .site-description a { color: #fff; }
.headerbar .search-box .inputbox { background: rgba(0,0,0,.35); border-color: var(--apl-border2); color: #fff; }

.navbar { background: var(--apl-card); border: 1px solid var(--apl-border); border-radius: 10px; padding: 3px 12px; }
.navbar ul.linklist > li { font-family: var(--apl-font-d); font-weight: 600; letter-spacing: .6px; }
ul.navlinks { border-top-color: var(--apl-border); }
.crumb a { color: var(--apl-grey); }
.crumb a:hover { color: #fff; }
.breadcrumbs .crumb:before, .breadcrumbs .crumb::before { color: var(--apl-grey); }
.icon.icon-blue, a:hover .icon.icon-blue { color: var(--apl-blue2); }

/* ---------- Forum lists ---------- */
.forabg, .forumbg { background: var(--apl-card); border: 1px solid var(--apl-border); border-radius: 12px; margin-bottom: 18px; padding: 0; overflow: hidden; box-shadow: 0 6px 22px rgba(0,0,0,.35); }
.forabg .inner, .forumbg .inner { margin: 0; }
li.header { background: linear-gradient(90deg, #0f2a63, #12358a); }
li.header dt, li.header dd { color: #fff; font-family: var(--apl-font-d); text-transform: uppercase; letter-spacing: 1.4px; font-weight: 700; font-size: 1.05em; }
li.header dt a, .forabg .header a, .forumbg .header a { color: #fff; }
ul.topiclist li { color: var(--apl-grey); }
ul.topiclist dd { border-left-color: var(--apl-border); }
ul.topiclist li.row { border-top-color: var(--apl-border); border-bottom-color: transparent; background: var(--apl-card); }
li.row:hover { background: var(--apl-card2); }
li.row:hover dd { border-left-color: var(--apl-border2); }
li.row strong { color: var(--apl-white); }
a.forumtitle, a.topictitle { font-family: var(--apl-font-d); font-weight: 700; font-size: 1.35em; letter-spacing: .5px; color: var(--apl-white); }
a.forumtitle:hover, a.topictitle:hover { color: var(--apl-ice); }
a.topictitle { font-size: 1.2em; }
.row .list-inner, dl.row-item dt .list-inner { color: var(--apl-grey); }
li.row a.lastsubject, .lastpost a { color: var(--apl-ice); }
dd.posts, dd.topics, dd.views, dd.lastpost, dd.redirect, dd.moderation, dd.time, dd.info { color: var(--apl-grey); }
.forum-image { float: left; padding-top: 1px; margin-right: 12px; }
.sticky, .announce { background: rgba(37,99,235,.06); }
.announce, .unreadpost { background: rgba(37,99,235,.09); }
ul.forums { background: none; }
.row-item { background-color: transparent; }
.dropdown-extended .header { background: var(--apl-card3); }

/* League logo shown next to each forum (ACP > Forums > forum image) */
.forum-image img { width: 52px; height: 52px; object-fit: contain; display: block; filter: drop-shadow(0 2px 4px rgba(0,0,0,.6)); }
.forum-image { padding: 2px 0; }
dl.row-item.forum_read, dl.row-item.forum_unread, dl.row-item.forum_read_subforum, dl.row-item.forum_unread_subforum, dl.row-item.forum_link, dl.row-item.forum_read_locked, dl.row-item.forum_unread_locked { background-size: 0 0; }
/* forum rows: logo replaces the folder icon; unread forums get a blue dot after the title */
dl.row-item.forum_read .list-inner, dl.row-item.forum_unread .list-inner, dl.row-item.forum_read_subforum .list-inner, dl.row-item.forum_unread_subforum .list-inner,
dl.row-item.forum_link .list-inner, dl.row-item.forum_read_locked .list-inner, dl.row-item.forum_unread_locked .list-inner { padding-left: 8px; }
dl.row-item.forum_unread a.forumtitle::after, dl.row-item.forum_unread_subforum a.forumtitle::after, dl.row-item.forum_unread_locked a.forumtitle::after {
	content: ''; display: inline-block; width: 9px; height: 9px; margin-left: 9px; border-radius: 50%; background: var(--apl-blue2); box-shadow: 0 0 8px var(--apl-blue2); vertical-align: middle; }
li.header dl.row-item dt .list-inner { padding-left: 14px; }

/* ---------- Posts ---------- */
.post { border-radius: 12px; border: 1px solid var(--apl-border); overflow: hidden; margin-bottom: 14px; }
.bg1, .bg2, .bg3 { background-color: var(--apl-card); }
.bg2 { background-color: var(--apl-card2); }
.bg3 { background-color: var(--apl-card3); }
.postbody { color: var(--apl-text); }
.postbody h3, .postbody h3 a, .postbody h3.first { color: var(--apl-white); font-family: var(--apl-font-d); }
.postbody a.postlink, .postlink { color: var(--apl-ice); border-bottom-color: var(--apl-ice); }
.postprofile { border-left-color: var(--apl-border2); color: var(--apl-grey); }
.postprofile strong { color: var(--apl-grey); }
.postprofile dd, .postprofile dt { color: var(--apl-grey); }
.author, p.author { color: var(--apl-grey); }
.content { color: var(--apl-text); }
.content h2, .panel h2 { color: var(--apl-white); border-bottom-color: var(--apl-border2); }
.signature { border-top-color: var(--apl-border2); color: var(--apl-grey); }
blockquote { background: var(--apl-card3); border: 1px solid var(--apl-border); border-left: 3px solid var(--apl-blue2); color: var(--apl-text); border-radius: 6px; }
blockquote blockquote { background: var(--apl-card2); }
.codebox { background: #070b16; border-color: var(--apl-border2); }
.codebox code { color: #c9d4ee; }
.attachbox { background: var(--apl-card2); border-color: var(--apl-border2); }
.post:target .content { color: var(--apl-white); }
.posthilit { background: rgba(245,158,11,.25); color: #fff; }
.online { background-color: transparent; }

/* ---------- Panels / UCP ---------- */
.panel { background: var(--apl-card); color: var(--apl-text); border: 1px solid var(--apl-border); border-radius: 12px; }
.panel-container .panel, .cp-main .panel { background: var(--apl-card); }
.panel-container h2, .panel-container h3 { color: var(--apl-white); border-bottom-color: var(--apl-border2); }
.cp-menu, #cp-menu { }
.navigation a, #navigation a { background: var(--apl-card2); border-color: var(--apl-border); color: var(--apl-ice); }
.navigation a:hover, #navigation a:hover, .navigation .active-subsection a { background: var(--apl-card3); color: #fff; }
.tabs .tab > a, .minitabs .tab > a { background: var(--apl-card2); color: var(--apl-grey); border-color: var(--apl-border); }
.tabs .activetab > a, .tabs .activetab > a:hover, .minitabs .activetab > a { background: var(--apl-card3); color: #fff; border-color: var(--apl-blue); }
fieldset { border-color: var(--apl-border2); color: var(--apl-text); }
fieldset dl:hover dt label { color: #fff; }
label { color: var(--apl-text); }
dl.details dt, dl.details dd { color: var(--apl-text); }
dl.details dt { color: var(--apl-grey); }
.rules, div.rules { background: rgba(245,158,11,.08); border-color: rgba(245,158,11,.4); color: #f6d9a1; }
.notice { border-top-color: var(--apl-border2); color: var(--apl-grey); }
.error, .rtl .error { color: #f87171; }
.ucprowbg, .fieldsbg { background: var(--apl-card2); }

/* ---------- Tables ---------- */
table.table1 thead th { background: var(--apl-card3); color: #fff; font-family: var(--apl-font-d); letter-spacing: 1px; text-transform: uppercase; border-bottom-color: var(--apl-border2); }
table.table1 tbody tr, table.table1 td { border-color: var(--apl-border); color: var(--apl-text); background: var(--apl-card); }
table.table1 tbody tr:hover, table.table1 tbody tr.hover { background: var(--apl-card2); }
table.table1 tbody td, table.table1 tbody th { border-top-color: var(--apl-border); color: var(--apl-text); }
table.zebra-list tr:nth-child(odd) td, ul.zebra-list li:nth-child(odd) { background: var(--apl-card); }
table.zebra-list tr:nth-child(even) td, ul.zebra-list li:nth-child(even) { background: var(--apl-card2); }

/* ---------- Buttons & forms ---------- */
.button { background: linear-gradient(180deg, #2f6df0, #1d4fc4); border: 1px solid #1a43a8; color: #fff; font-family: var(--apl-font-d); font-weight: 700; letter-spacing: 1px; text-transform: uppercase; border-radius: 6px; box-shadow: none; text-shadow: none; }
.button:hover { background: linear-gradient(180deg, #4b84f7, #2559d6); border-color: #3b82f6; color: #fff; }
.button .icon, .button-secondary { color: #fff; }
.button-secondary { background: var(--apl-card3); border-color: var(--apl-border2); color: var(--apl-ice); }
.button-secondary:hover { background: #1e2a48; color: #fff; }
.button-search, .button-search-end { background: var(--apl-card3); border-color: var(--apl-border2); color: var(--apl-ice); }
a.button1, input.button1, input.button3, a.button2, input.button2 { background: linear-gradient(180deg, #2f6df0, #1d4fc4); border-color: #1a43a8; color: #fff; font-family: var(--apl-font-d); font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
a.button2, input.button2 { background: var(--apl-card3); border-color: var(--apl-border2); color: var(--apl-ice); }
input.inputbox, textarea.inputbox, select, .inputbox, input.post, textarea.post, .search-box .inputbox {
	background: #080d1a; border: 1px solid var(--apl-border2); color: var(--apl-white); border-radius: 6px; box-shadow: none;
}
select { background: #080d1a; color: var(--apl-white); }
option { background: #0d1220; color: var(--apl-white); }
.inputbox:hover, .inputbox:focus, select:hover, select:focus, .search-box .inputbox:focus { border-color: var(--apl-blue2); box-shadow: 0 0 0 2px rgba(59,130,246,.25); outline: none; }
.search-header { box-shadow: none; }
.search-box .button-search, .search-box .button-search-end { border-color: var(--apl-border2); }
.pagination li a { background: var(--apl-card2); border-color: var(--apl-border2); color: var(--apl-ice); border-radius: 4px; }
.pagination li a:hover, .pagination li.active span { background: var(--apl-blue); border-color: var(--apl-blue2); color: #fff; }
.pagination li.ellipsis span { background: transparent; color: var(--apl-grey); }

/* ---------- Dropdowns, jumpbox, notifications ---------- */
.dropdown-container .dropdown, .dropdown-extended .dropdown-contents, .dropdown .dropdown-contents { background: var(--apl-card2); border-color: var(--apl-border2); color: var(--apl-text); box-shadow: 0 10px 30px rgba(0,0,0,.6); }
.dropdown li, .dropdown-extended ul li { border-top-color: var(--apl-border); }
.dropdown-extended ul li:hover, .dropdown li:hover { background: var(--apl-card3); }
.dropdown .pointer-inner { border-color: var(--apl-card2) transparent; }
.dropdown .pointer { border-color: var(--apl-border2) transparent; }
.jumpbox .dropdown li { border-top-color: var(--apl-border); }
.jumpbox-cat-link { background: var(--apl-card3); color: #fff; }
.jumpbox-forum-link, .jumpbox-sub-link { background: var(--apl-card2); color: var(--apl-text); }
.jumpbox-forum-link:hover, .jumpbox-sub-link:hover { background: var(--apl-card3); }
.notification_text, .notifications .notification_text { color: var(--apl-text); }
.dropdown-extended li.bg2, .dropdown-extended li.bg3 { background: var(--apl-card2); }
.dropdown-extended li.unread, .notification-block li.unread { background: rgba(37,99,235,.12); }
.header_dropdown, .dropdown-extended .header { color: #fff; }
.alert_close .icon:before { color: var(--apl-grey); }

/* ---------- Footer ---------- */
.copyright { color: var(--apl-grey); background: transparent; border: 0; }
.copyright a { color: var(--apl-ice); }
#page-footer .navbar { background: var(--apl-card); }
#darkenwrapper { background: rgba(0,0,0,.8); }
#phpbb_alert, .phpbb_alert { background: var(--apl-card2); color: var(--apl-text); border-color: var(--apl-border2); }
.phpbb_alert .alert_close, .phpbb_alert .alert_text { color: var(--apl-text); }
.sep { color: var(--apl-border2); }
.pm-message, .cp-main .pm-message { background: var(--apl-card2); }
.rowbg, .row { }
.global_unread, .announce_unread { }
p, dd, dt, li, td, th, span { }
.recent-posts { color: var(--apl-text); }

/* header logo (replaces the phpBB logo; change it in ACP > Styles if you want another) */
.site_logo { background-image: url("./images/site_logo.png"); background-size: contain; background-repeat: no-repeat; background-position: left center; width: 150px; height: 76px; }

/* ---------- Mobile ---------- */
@media (max-width: 700px) {
	.wrap { padding: 8px 6px; }
	.forum-image img { width: 38px; height: 38px; }
	.site-description h1, .headerbar h1 { font-size: 1.7em; }
	.postprofile { border-bottom-color: var(--apl-border2); border-color: var(--apl-border2); }
	.site_logo { width: 90px; height: 46px; }
}
.post hr, .postprofile hr { border-color: var(--apl-border2); }
