diff --git a/phpBB/styles/prosilver/theme/bidi.css b/phpBB/styles/prosilver/theme/bidi.css
index a1a55ab9f5..f3468ebcf2 100644
--- a/phpBB/styles/prosilver/theme/bidi.css
+++ b/phpBB/styles/prosilver/theme/bidi.css
@@ -13,10 +13,6 @@
 	text-align: left;
 }
 
-.rtl p.jumpbox-return {
-	float: right;
-}
-
 .rtl div.rules ul {
 	margin-left: 0;
 	margin-right: 20px;
@@ -24,11 +20,6 @@
 
 /* Main blocks
 ---------------------------------------- */
-.rtl .icon {
-	padding-right: 0;
-	padding-left: 2px;
-}
-
 .rtl .logo {
 	float: right;
 	padding: 10px 10px 0 13px;
@@ -36,11 +27,11 @@
 
 /* Site Description
 --------------------------------------------- */
-.rtl .site-description {
+.rtl #site-description {
 	float: right;
 }
 
-.rtl .site-description h1 {
+.rtl #site-description h1 {
 	margin-left: 0;
 }
 
@@ -90,9 +81,14 @@
 	padding-right: 0;
 }
 
+.rtl ul.linklist li.responsive-menu a.responsive-menu-link:before {
+	left: auto;
+	right: 0;
+}
+
 /* Dropdown menu
 ---------------------------------------- */
-.rtl .dropdown-container.topic-tools, .rtl .dropdown-container-left {
+.rtl .dropdown-container.topic-tools {
 	float: right;
 }
 
@@ -118,17 +114,12 @@
 	text-align: right;
 }
 
-.rtl .dropdown-extended .header .header_settings, .rtl .dropdown-container-right {
+.rtl .dropdown-extended .header .header_settings {
 	float: left;
 }
 
-.rtl .jumpbox .dropdown-contents a {
-	margin-right: 0;
-	margin-left: 20px;
-}
-
 /* Notifications
------------------------------------------*/
+----------------------------------------*/
 .rtl .notification_list ul li img {
 	float: right;
 	margin-left: 5px;
@@ -270,26 +261,23 @@
 	margin-right: 0;
 }
 
-/* Action Bar styles
----------------------------------------- */
-.rtl .action-bar .button {
-	margin-right: 0;
-	float: right;
-}
-
-.rtl .action-bar > .button {
-	margin-left: 5px;
-	float: right;
-}
-
-.rtl .action-bar .dropdown-button-control .button {
-	margin-left: 5px;
-}
-
+.pagination li.previous a { background-position: -50px 2px; }
+.pagination li.next a { background-position: -30px 2px; }
+.pagination li.previous a:hover { background-position: -50px -18px; }
+.pagination li.next a:hover { background-position: -30px -18px; }
 
 /* Miscellaneous styles
 ---------------------------------------- */
-.rtl .quick-links {
+.rtl #forum-permissions {
+	float: left;
+	padding-right: 5px;
+	padding-left: 0;
+	margin-right: 5px;
+	margin-left: 0;
+	text-align: left;
+}
+
+.rtl #quick-links {
 	margin-left: 7px;
 	margin-right: 0;
 }
@@ -308,6 +296,11 @@
 * links.css
 */
 
+/* Back to top of page */
+.rtl .back2top {
+	text-align: left;
+}
+
 /* Links adjustment to correctly display an order of rtl/ltr mixed content */
 .rtl a {
 	direction: rtl;
@@ -316,6 +309,7 @@
 
 li.breadcrumbs span:first-child > a {
 	padding-left: 0;
+	padding-right: 19px;
 }
 
 /* Notification mark read link */
@@ -325,9 +319,14 @@ li.breadcrumbs span:first-child > a {
 	right: auto;
 }
 
-.rtl .back2top .top {
+.rtl a.top {
 	float: left;
-	margin-left: -10px;
+}
+
+.rtl a.top2 {
+	background-position: 100% 50%;
+	padding-left: 0;
+	padding-right: 15px;
 }
 
 .rtl .skiplink {
@@ -417,26 +416,26 @@ li.breadcrumbs span:first-child > a {
 	padding-right: 1px;
 }
 
-.rtl dl.row-item{
+.rtl dl.icon {
 	background-position: 99.5% 50%;
 }
 
-.rtl li.header dl.row-item dt .list-inner {
+.rtl li.header dl.icon dt .list-inner {
 	/* Tweak for headers alignment when folder icon used */
 	padding-right: 0;
 	padding-left: 50px;
 }
 
-.rtl dl.row-item dt {
+.rtl dl.icon dt {
 	background-position: 99.5% 95%;			/* Position of topic icon */
 }
 
-.rtl dl.row-item dt .list-inner {
+.rtl dl.icon dt .list-inner {
 	padding-left: 5px;
 	padding-right: 45px;					/* Space for folder icon */
 }
 
-.rtl dl a.row-item-link {						/* topic row icon links */
+.rtl dl a.icon-link {						/* topic row icon links */
 	display: inline-block;
 	left: auto;
 	right: 0;
@@ -462,6 +461,7 @@ li.breadcrumbs span:first-child > a {
 
 .rtl p.post-notice {
 	padding-left: 5px;
+	padding-right: 26px;
 }
 
 .rtl p.post-notice:before {
@@ -471,7 +471,7 @@ li.breadcrumbs span:first-child > a {
 
 /* Topic review panel
 ----------------------------------------*/
-.rtl .topicreview {
+.rtl #topicreview {
 	padding-right: 0;
 	padding-left: 5px;
 }
@@ -501,6 +501,7 @@ li.breadcrumbs span:first-child > a {
 /* Quote block */
 .rtl blockquote {
 	margin: 0.5em 25px 0 1px;
+	background-position: 99% 8px;
 }
 
 .rtl blockquote blockquote {
@@ -510,13 +511,10 @@ li.breadcrumbs span:first-child > a {
 
 .rtl blockquote cite {
 	/* Username/source of quoter */
+	margin-right: 20px;
 	margin-left: 0;
 }
 
-.rtl blockquote cite:before, .rtl .uncited:before {
-	padding-left: 5px;
-}
-
 .rtl blockquote .codebox {
 	margin-right: 0;
 }
@@ -604,12 +602,48 @@ li.breadcrumbs span:first-child > a {
 /**
 * buttons.css
 */
+.rtl .dropdown-select {
+	padding-left: 24px;
+	padding-right: 8px;
+}
 
-.rtl .caret {
-	border-right: 1px solid;
-	border-right-color: inherit;
-	border-left: none;
-	right: 6px;
+.rtl .icon-button:before {
+	float: left;
+	margin-left: 0;
+	margin-right: 2px;
+}
+
+.rtl .dropdown-select.icon-button:before {
+	margin-left: 4px;
+	margin-right: 0;
+}
+
+.rtl .dropdown-select:after {
+	border-left: 0;
+	border-right-style: solid;
+	border-right-width: 1px;
+	left: 0;
+	right: auto;
+}
+
+.rtl .buttons, .rtl .buttons .button {
+	float: right;
+}
+
+.rtl .buttons .button, .rtl .dropdown-select {
+	margin-left: 5px;
+	margin-right: 0;
+}
+
+/* Icon images
+---------------------------------------- */
+.rtl .small-icon {
+	background-position: 100% 50%;
+}
+
+.rtl .small-icon > a {
+	padding-left: 0;
+	padding-right: 19px;
 }
 
 /* Post control buttons
@@ -627,6 +661,10 @@ li.breadcrumbs span:first-child > a {
 	float: right;
 }
 
+.post-buttons .icon-button:before {
+	margin-right: 0;
+}
+
 /* Poster contact icons
  ----------------------------------------*/
 .rtl .contact-icons a {
@@ -649,20 +687,20 @@ li.breadcrumbs span:first-child > a {
 
 /* Main CP box
 ----------------------------------------*/
-.rtl .cp-menu {
+.rtl #cp-menu {
 	float: right;
 }
 
-.rtl .cp-main {
+.rtl #cp-main {
 	float: right;
 }
 
-.rtl .cp-main .panel ol {
+.rtl #cp-main .panel ol {
 	margin-right: 2em;
 	margin-left: 0;
 }
 
-.rtl .cp-main .buttons {
+.rtl #cp-main .buttons {
 	margin-right: 0;
 	margin-left: 0;
 }
@@ -673,52 +711,52 @@ li.breadcrumbs span:first-child > a {
 
 /* CP tabbed menu
 ----------------------------------------*/
-.rtl .tabs {
+.rtl #tabs {
 	margin-left: 0;
 	margin-right: 7px;
 }
 
-.rtl .tabs .tab {
+.rtl #tabs .tab {
 	float: right;
 }
 
-.rtl .tabs .tab > a {
+.rtl #tabs .tab > a {
 	margin-left: 1px;
 	margin-right: 0;
 }
 
 /* Mini tabbed menu used in MCP
 ----------------------------------------*/
-.rtl .minitabs {
+.rtl #minitabs {
 	float: left;
 	margin-right: 0;
 	margin-left: 7px;
 }
 
-.rtl .minitabs .tab {
+.rtl #minitabs .tab {
 	float: left;
 }
 
-.rtl .minitabs .tab > a {
+.rtl #minitabs .tab > a {
 	margin-right: 2px;
 	margin-left: 0;
 }
 
 /* Responsive tabs
 ----------------------------------------*/
-.rtl .tabs .dropdown {
+.rtl #tabs .dropdown {
 	margin-left: -2px;
 }
 
-.rtl .tabs .dropdown li {
+.rtl #tabs .dropdown li {
 	text-align: left;
 }
 
-.rtl .minitabs .dropdown {
+.rtl #minitabs .dropdown {
 	margin-left: -4px;
 }
 
-.rtl .minitabs .dropdown li {
+.rtl #minitabs .dropdown li {
 	text-align: right;
 }
 
@@ -726,7 +764,7 @@ li.breadcrumbs span:first-child > a {
 ----------------------------------------*/
 @media only screen and (max-width: 900px), only screen and (max-device-width: 900px)
 {
-	.rtl .cp-menu, .rtl .navigation, .rtl .cp-main {
+	.rtl #cp-menu, .rtl #navigation, .rtl #cp-main {
 		float: none;
 	}
 }
@@ -736,7 +774,7 @@ li.breadcrumbs span:first-child > a {
 
 /* Preferences pane layout
 ----------------------------------------*/
-.rtl .cp-main h2 {
+.rtl #cp-main h2 {
 	margin-left: 0;
 	margin-right: 10px;
 }
@@ -777,7 +815,7 @@ li.breadcrumbs span:first-child > a {
 }
 
 /* Avatar gallery */
-.rtl .gallery label {
+.rtl #gallery label {
 	float: right;
 }
 
@@ -785,7 +823,7 @@ li.breadcrumbs span:first-child > a {
 ----------------------------------------*/
 @media only screen and (max-width: 900px), only screen and (max-device-width: 900px)
 {
-	.rtl .cp-menu, .rtl .navigation, .rtl .cp-main {
+	.rtl #cp-menu, .rtl #navigation, .rtl #cp-main {
 		float: none;
 	}
 }
@@ -872,10 +910,6 @@ li.breadcrumbs span:first-child > a {
 	padding-right: 0;
 }
 
-.rtl .dropdown fieldset.display-options label {
-	text-align: left;
-}
-
 /* Display actions for ucp and mcp pages */
 .rtl fieldset.display-actions {
 	text-align: left;
@@ -901,7 +935,7 @@ li.breadcrumbs span:first-child > a {
 ----------------------------------------*/
 
 /* Emoticons panel */
-.rtl .smiley-box {
+.rtl #smiley-box {
 	float: left;
 }
 
@@ -921,20 +955,16 @@ li.breadcrumbs span:first-child > a {
 	padding: 3px;
 }
 
-.rtl .button-search,
-.button-search-end {
+.rtl .search-box .button {
 	float: right;
 }
 
-.rtl .button-search-end {
-	border-radius: 4px 0 0 4px;
+.rtl .search-box a.button {
 	border-left-width: 1px;
 	border-right-width: 0;
-}
-
-.rtl .search-header .button-search-end {
-	border: 0;
 	border-radius: 4px 0 0 4px;
+	padding-left: 5px;
+	padding-right: 3px;
 }
 
 .rtl .search-header {
@@ -943,14 +973,47 @@ li.breadcrumbs span:first-child > a {
 	margin-left: 5px;
 }
 
+.rtl input.search {
+	background-position: right 1px;
+	padding-right: 17px;
+	padding-left: 0;
+}
+
+
 /* Form button styles
 ---------------------------------------- */
 
 /** Reference: Bug #27155 */
-.rtl .wrap, .rtl .headerbar, .rtl .site-description, .rtl .navbar {
+.rtl #wrap, .rtl .headerbar, .rtl #site-description, .rtl .navbar {
 	position: relative;
 }
 
+/* Former imageset */
+.rtl .imageset.forum_link, .rtl .imageset.forum_read, .rtl .imageset.forum_read_locked, .rtl .imageset.forum_read_subforum, .rtl .imageset.forum_unread, .rtl .imageset.forum_unread_locked, .rtl .imageset.forum_unread_subforum, .rtl .imageset.topic_moved, .rtl .imageset.topic_read, .rtl .imageset.topic_read_mine, .rtl .imageset.topic_read_hot, .rtl .imageset.topic_read_hot_mine, .rtl .imageset.topic_read_locked, .rtl .imageset.topic_read_locked_mine, .rtl .imageset.topic_unread, .rtl .imageset.topic_unread_mine, .rtl .imageset.topic_unread_hot, .rtl .imageset.topic_unread_hot_mine, .rtl .imageset.topic_unread_locked, .rtl .imageset.topic_unread_locked_mine, .rtl .imageset.sticky_read, .rtl .imageset.sticky_read_mine, .rtl .imageset.sticky_read_locked, .rtl .imageset.sticky_read_locked_mine, .rtl .imageset.sticky_unread, .rtl .imageset.sticky_unread_mine, .rtl .imageset.sticky_unread_locked, .rtl .imageset.sticky_unread_locked_mine, .rtl .imageset.announce_read, .rtl .imageset.announce_read_mine, .rtl .imageset.announce_read_locked, .rtl .imageset.announce_read_locked_mine, .rtl .imageset.announce_unread, .rtl .imageset.announce_unread_mine, .rtl .imageset.announce_unread_locked, .rtl .imageset.announce_unread_locked_mine, .rtl .imageset.global_read, .rtl .imageset.global_read_mine, .rtl .imageset.global_read_locked, .rtl .imageset.global_read_locked_mine, .rtl .imageset.global_unread, .rtl .imageset.global_unread_mine, .rtl .imageset.global_unread_locked, .rtl .imageset.global_unread_locked_mine, .rtl .imageset.pm_read, .rtl .imageset.pm_unread {
+	padding-right: 27px;
+	padding-left: 0;
+}
+.rtl .imageset.subforum_read, .rtl .imageset.subforum_unread, .rtl .imageset.icon_post_target, .rtl .imageset.icon_post_target_unread, .rtl .imageset.icon_topic_latest, .rtl .imageset.icon_topic_newest {
+	padding-right: 11px;
+	padding-left: 0;
+}
+.rtl .imageset.icon_back_top {
+	padding-right: 11px;
+	padding-left: 0;
+}
+.rtl .imageset.icon_contact_aim, .rtl .imageset.phpbb_aol-icon, .rtl .imageset.icon_contact_email, .rtl .imageset.icon_contact_icq, .rtl .imageset.phpbb_icq-icon, .rtl .imageset.icon_contact_jabber, .rtl .imageset.icon_contact_msnm, .rtl .imageset.phpbb_wlm-icon, .rtl .imageset.icon_contact_www, .rtl .imageset.phpbb_website-icon, .rtl .imageset.icon_contact_yahoo, .rtl .imageset.phpbb_yahoo-icon, .rtl .imageset.icon_post_delete, .rtl .imageset.icon_post_info, .rtl .imageset.icon_post_report, .rtl .imageset.icon_user_warn {
+	padding-right: 20px;
+	padding-left: 0;
+}
+.rtl .imageset.icon_topic_attach {
+	padding-right: 7px;
+	padding-left: 0;
+}
+.rtl .imageset.icon_topic_reported, .rtl .imageset.icon_topic_unapproved {
+	padding-right: 16px;
+	padding-left: 0;
+}
+
 /**
 * plupload.css
 */
@@ -1073,10 +1136,4 @@ li.breadcrumbs span:first-child > a {
 	.captcha-panel dd.captcha {
 		margin-right: 0;
 	}
-
-	.rtl p.responsive-center {
-		float: none;
-		text-align: center;
-		margin-bottom: 5px;
-	}
 }
diff --git a/phpBB/styles/prosilver/theme/responsive.css b/phpBB/styles/prosilver/theme/responsive.css
index 76033a5ce1..0257941ead 100644
--- a/phpBB/styles/prosilver/theme/responsive.css
+++ b/phpBB/styles/prosilver/theme/responsive.css
@@ -1,43 +1,348 @@
 /* Responsive Design
 ---------------------------------------- */
 
-@media (max-width: 320px) {
-	select, .inputbox {
-		max-width: 240px;
+.responsive-hide { display: none !important; }
+.responsive-show { display: block !important; }
+.responsive-show-inline { display: inline !important; }
+.responsive-show-inline-block { display: inline-block !important; }
+
+/* Content wrappers
+----------------------------------------*/
+html {
+	height: auto;
+}
+
+body {
+	padding: 0;
+}
+
+#wrap {
+	border: none;
+	border-radius: 0;
+	margin: 0;
+	min-width: 290px;
+	padding: 0 5px;
+}
+
+/* Common block wrappers
+----------------------------------------*/
+.headerbar, .navbar, .forabg, .forumbg, .post, .panel {
+	border-radius: 0;
+	margin-left: -5px;
+	margin-right: -5px;
+}
+
+#cp-main .forabg, #cp-main .forumdb, #cp-main .post, #cp-main .panel {
+	border-radius: 7px;
+}
+
+/* Logo block
+----------------------------------------*/
+#site-description {
+	float: none;
+	width: auto;
+	text-align: center;
+}
+
+.logo {
+	/* change display value to inline-block to show logo */
+	display: none;
+	float: none;
+	padding: 10px;
+}
+
+#site-description h1, #site-description p {
+	text-align: inherit;
+	float: none;
+	margin: 5px;
+	line-height: 1.2em;
+	overflow: hidden;
+	text-overflow: ellipsis;
+}
+
+#site-description p, .search-header {
+	display: none;
+}
+
+/* Navigation
+----------------------------------------*/
+.headerbar + .navbar {
+	margin-top: -5px;
+}
+
+/* Search
+----------------------------------------*/
+.responsive-search { display: block !important; }
+.responsive-search a {
+	display: block;
+	width: 16px;
+	height: 22px;
+	text-indent: 99px;
+	overflow: hidden;
+	background-position: 50% 50%;
+	background-repeat: no-repeat;
+	text-decoration: none;
+}
+
+/* .topiclist lists
+----------------------------------------*/
+li.header dt {
+	text-align: center;
+	text-transform: none;
+	line-height: 1em;
+	font-size: 1.2em;
+	padding-bottom: 4px;
+}
+
+ul.topiclist li.header dt, ul.topiclist li.header dt .list-inner {
+	margin-right: 0 !important;
+	padding-right: 0;
+}
+
+ul.topiclist li.header dd {
+	display: none !important;
+}
+
+ul.topiclist dt, ul.topiclist dt .list-inner,
+ul.topiclist.missing-column dt, ul.topiclist.missing-column dt .list-inner,
+ul.topiclist.two-long-columns dt, ul.topiclist.two-long-columns dt .list-inner,
+ul.topiclist.two-columns dt, ul.topiclist.two-columns dt .list-inner {
+	margin-right: 0;
+}
+
+ul.topiclist dt .list-inner.with-mark {
+	padding-right: 34px;
+}
+
+ul.topiclist dt .list-inner {
+	min-height: 28px;
+}
+
+ul.topiclist li.header dt .list-inner {
+	min-height: 0;
+}
+
+ul.topiclist dd {
+	display: none;
+}
+ul.topiclist dd.mark {
+	display: block;
+}
+
+/* Forums and topics lists
+----------------------------------------*/
+ul.topiclist.forums dt {
+	margin-right: -250px;
+}
+ul.topiclist.forums dt .list-inner {
+	margin-right: 250px;
+}
+
+ul.topiclist.forums dd.lastpost {
+	display: block;
+}
+
+ul.topiclist dd.mark {
+	display: block;
+	position: absolute;
+	right: 5px;
+	top: 0;
+	margin: 0;
+	width: auto;
+	min-width: 0;
+	text-align: left;
+}
+
+ul.topiclist.forums dd.topics dfn, ul.topiclist.topics dd.posts dfn {
+	position: relative;
+	left: 0;
+	width: auto;
+	display: inline;
+	font-weight: normal;
+}
+
+@media only screen and (max-width: 550px), only screen and (max-device-width: 550px) {
+	ul.topiclist.forums dt {
+		margin-right: 0;
 	}
+
+	ul.topiclist.forums dt .list-inner {
+		margin-right: 0;
+	}
+
+	ul.topiclist.forums dd.lastpost {
+		display: none;
+	}
+}
+
+li.row .responsive-show strong {
+	font-weight: bold;
+	color: inherit;
+}
+
+ul.topiclist li.row dt a.subforum {
+	display: inline-block;
+	vertical-align: bottom;
+	overflow: hidden;
+	text-overflow: ellipsis;
+	max-width: 100px;
 }
 
 /* Notifications list
 ----------------------------------------*/
-@media (max-width: 350px) {
+@media only screen and (max-width: 350px), only screen and (max-device-width: 350px) {
 	.dropdown-extended .dropdown-contents {
 		width: auto;
 	}
 }
 
-@media (max-width: 430px) {
-	.action-bar .search-box .inputbox {
-		width: 120px;
-	}
-
-	.section-viewtopic .search-box .inputbox {
-		width: 57px;
-	}
-
-	.action-bar .search-box .inputbox ::-moz-placeholder {
-    	content: "Search...";
-  	}
-
-  	.action-bar .search-box .inputbox :-ms-input-placeholder {
-  		content: "Search...";
-  	}
-
-  	.action-bar .search-box .inputbox ::-webkit-input-placeholder {
-  		content: "Search...";
-  	}
+/* Pagination
+----------------------------------------*/
+.pagination > ul {
+	margin: 5px 0 0;
 }
 
-@media (max-width: 500px) {
+.row .pagination .ellipsis + li {
+	display: none !important;
+}
+
+/* Responsive tables
+----------------------------------------*/
+table.responsive, table.responsive tbody, table.responsive tr, table.responsive td {
+	display: block;
+}
+
+table.responsive thead, table.responsive th {
+	display: none;
+}
+
+table.responsive.show-header thead, table.responsive.show-header th:first-child {
+	display: block;
+	width: auto !important;
+	text-align: left !important;
+}
+
+table.responsive.show-header th:first-child span.rank-img {
+	display: none;
+}
+
+table.responsive tr {
+	margin: 2px 0;
+}
+
+table.responsive td {
+	width: auto !important;
+	text-align: left !important;
+	padding: 4px;
+}
+
+table.responsive td.empty {
+	display: none !important;
+}
+
+table.responsive td > dfn {
+	display: inline-block !important;
+}
+
+table.responsive td > dfn:after {
+	content: ':';
+	padding-right: 5px;
+}
+
+table.responsive span.rank-img {
+	float: none;
+	padding-right: 5px;
+}
+
+table.responsive#memberlist td:first-child input[type="checkbox"] {
+	float: right;
+}
+
+/* Forms
+----------------------------------------*/
+fieldset dt, fieldset.fields1 dt, fieldset.fields2 dt {
+	width: auto;
+	float: none;
+}
+
+fieldset dd, fieldset.fields1 dd, fieldset.fields2 dd {
+	margin-left: 20px;
+}
+
+textarea, dd textarea, #message-box textarea {
+	width: 100%;
+	-moz-box-sizing: border-box;
+	box-sizing: border-box;
+}
+
+dl.pmlist dt {
+	width: auto !important;
+	margin-bottom: 5px;
+}
+
+dl.pmlist dd {
+	display: inline-block;
+	margin-left: 0 !important;
+}
+
+dl.pmlist dd:first-of-type {
+	padding-left: 20px;
+}
+
+#smiley-box, #message-box {
+	float: none;
+	width: auto;
+}
+
+#smiley-box {
+	margin-top: 5px;
+}
+
+.bbcode-status {
+	display: none;
+}
+
+.colour-palette, .colour-palette tbody, .colour-palette tr {
+	display: block;
+}
+
+.colour-palette td {
+	display: inline-block;
+	margin-right: 2px;
+}
+
+.horizontal-palette td:nth-child(2n), .vertical-palette tr:nth-child(2n) {
+	display: none;
+}
+
+.colour-palette a {
+	display: inline-block !important;
+}
+
+fieldset.quick-login label {
+	display: block;
+	margin-bottom: 5px;
+	white-space: normal;
+}
+
+fieldset.quick-login label > span {
+	display: inline-block;
+	min-width: 100px;
+}
+
+fieldset.quick-login input.inputbox {
+	width: 85%;
+	max-width: 300px;
+	margin-left: 20px;
+}
+
+fieldset.quick-login label[for="autologin"] {
+	display: inline-block;
+	text-align: right;
+	min-width: 50%;
+}
+
+@media only screen and (max-width: 500px), only screen and (max-device-width: 500px) {
 	dd label {
 		white-space: normal;
 	}
@@ -54,6 +359,44 @@
 		width: 100%;
 	}
 
+	#recaptcha_challenge_image,
+	#recaptcha_response_field,
+	.recaptchatable #recaptcha_image {
+		width: 100% !important;
+		height: auto !important;
+	}
+
+	.recaptchatable tr td:last-child {
+		display: none;
+	}
+
+	.captcha-panel .recaptcha-responsive {
+		display: inline-block !important;
+		margin-top: 10px;
+		vertical-align: middle;
+	}
+}
+
+@media only screen and (max-width: 430px), only screen and (max-device-width: 430px) {
+	.section-viewtopic .search-box .inputbox {
+		width: 110px;
+	}
+}
+
+@media only screen and (max-width: 320px), only screen and (max-device-width: 320px) {
+	select, .inputbox {
+		max-width: 240px;
+	}
+}
+
+/* User profile
+----------------------------------------*/
+.column1, .column2, .left-box.profile-details {
+	float: none;
+	width: auto;
+}
+
+@media only screen and (max-width: 500px), only screen and (max-device-width: 500px) {
 	dl.details dt, dl.details dd {
 		width: auto;
 		float: none;
@@ -63,10 +406,140 @@
 	dl.details dd {
 		margin-left: 20px;
 	}
+}
 
+/* Polls
+----------------------------------------*/
+fieldset.polls dt {
+	width: 90%;
+}
+
+fieldset.polls dd.resultbar {
+	padding-left: 20px;
+}
+
+fieldset.polls dd.poll_option_percent {
+	width: 20%;
+}
+
+fieldset.polls dd.resultbar, fieldset.polls dd.poll_option_percent {
+	margin-top: 5px;
+}
+
+/* Post
+----------------------------------------*/
+.postbody {
+	position: inherit;
+}
+
+.postprofile, .postbody, .search .postbody {
+	display: block;
+	width: auto;
+	float: none;
+	padding: 0;
+	min-height: 0;
+}
+
+.post .postprofile {
+	width: auto;
+	border-width: 0 0 1px 0;
+	padding-bottom: 5px;
+	margin: 0;
+	margin-bottom: 5px;
+	min-height: 40px;
+	overflow: hidden;
+}
+
+.postprofile dd {
+	display: none;
+}
+
+.postprofile dt, .postprofile dd.profile-rank, .search .postprofile dd {
+	display: block;
+	margin: 0;
+}
+
+.postprofile .has-avatar .avatar-container {
+	margin: 0;
+	overflow: inherit;
+}
+
+.postprofile .avatar-container:after {
+	clear: none;
+}
+
+.postprofile .avatar {
+	margin-right: 5px;
+}
+
+.postprofile .avatar img {
+	width: auto !important;
+	height: auto !important;
+	max-height: 32px;
+}
+
+.has-profile .postbody h3 {
+	margin-left: 0 !important;
+	margin-right: 0 !important;
+}
+
+.has-profile .post-buttons {
+	right: 20px;
+	top: 15px;
+}
+
+.online {
+	background-size: 40px;
+}
+
+/* Misc stuff
+----------------------------------------*/
+h2 {
+	margin-top: .5em;
+}
+
+p {
+	margin-bottom: .5em;
+	overflow: hidden;
+}
+
+p.rightside {
+	margin-bottom: 0;
+}
+
+fieldset.display-options label {
+	display: block;
+	clear: both;
+	margin-bottom: 5px;
+}
+
+dl.mini dd.pm-legend {
+	float: left;
+	min-width: 200px;
+}
+
+#topicreview {
+	margin: 0 -5px;
+	padding: 0 5px;
+}
+
+fieldset.display-actions {
+	white-space: normal;
+}
+
+.phpbb_alert {
+	width: auto;
+	margin: 0 5px;
+}
+
+.attach-comment dfn {
+	width: 100%;
+}
+
+@media only screen and (max-width: 500px), only screen and (max-device-width: 500px) {
 	p.responsive-center {
-		float: none;
-		text-align: center;
+		float: none !important;
+		text-align: center !important;
 		margin-bottom: 5px;
 	}
 
@@ -98,494 +571,4 @@
 		margin-top: 5px;
 		width: 100%;
 	}
-
-	.quick-links .dropdown-trigger span {
-		display: none;
-	}
-}
-
-@media (max-width: 550px) {
-	ul.topiclist.forums dt {
-		margin-right: 0;
-	}
-
-	ul.topiclist.forums dt .list-inner {
-		margin-right: 0;
-	}
-
-	ul.topiclist.forums dd.lastpost {
-		display: none;
-	}
-}
-
-@media (max-width: 700px) {
-	.responsive-hide { display: none !important; }
-	.responsive-show { display: block !important; }
-	.responsive-show-inline { display: inline !important; }
-	.responsive-show-inline-block { display: inline-block !important; }
-
-	/* Content wrappers
-	----------------------------------------*/
-	html {
-		height: auto;
-	}
-
-	body {
-		padding: 0;
-	}
-
-	.wrap {
-		border: none;
-		border-radius: 0;
-		margin: 0;
-		min-width: 290px;
-		padding: 0 5px;
-	}
-
-	/* Common block wrappers
-	----------------------------------------*/
-	.headerbar, .navbar, .forabg, .forumbg, .post, .panel {
-		border-radius: 0;
-		margin-left: -5px;
-		margin-right: -5px;
-	}
-
-	.cp-main .forabg, .cp-main .forumdb, .cp-main .post, .cp-main .panel {
-		border-radius: 7px;
-	}
-
-	/* Logo block
-	----------------------------------------*/
-	.site-description {
-		float: none;
-		width: auto;
-		text-align: center;
-	}
-
-	.logo {
-		/* change display value to inline-block to show logo */
-		display: none;
-		float: none;
-		padding: 10px;
-	}
-
-	.site-description h1, .site-description p {
-		text-align: inherit;
-		float: none;
-		margin: 5px;
-		line-height: 1.2em;
-		overflow: hidden;
-		text-overflow: ellipsis;
-	}
-
-	.site-description p, .search-header {
-		display: none;
-	}
-
-	/* Navigation
-	----------------------------------------*/
-	.headerbar + .navbar {
-		margin-top: -5px;
-	}
-
-	/* Search
-	----------------------------------------*/
-	.responsive-search { display: block !important; }
-
-	/* .topiclist lists
-	----------------------------------------*/
-	li.header dt {
-		text-align: center;
-		text-transform: none;
-		line-height: 1em;
-		font-size: 1.2em;
-		padding-bottom: 4px;
-	}
-
-	ul.topiclist li.header dt, ul.topiclist li.header dt .list-inner {
-		margin-right: 0 !important;
-		padding-right: 0;
-	}
-
-	ul.topiclist li.header dd {
-		display: none !important;
-	}
-
-	ul.topiclist dt, ul.topiclist dt .list-inner,
-	ul.topiclist.missing-column dt, ul.topiclist.missing-column dt .list-inner,
-	ul.topiclist.two-long-columns dt, ul.topiclist.two-long-columns dt .list-inner,
-	ul.topiclist.two-columns dt, ul.topiclist.two-columns dt .list-inner {
-		margin-right: 0;
-	}
-
-	ul.topiclist dt .list-inner.with-mark {
-		padding-right: 34px;
-	}
-
-	ul.topiclist dt .list-inner {
-		min-height: 28px;
-	}
-
-	ul.topiclist li.header dt .list-inner {
-		min-height: 0;
-	}
-
-	ul.topiclist dd {
-		display: none;
-	}
-	ul.topiclist dd.mark {
-		display: block;
-	}
-
-	/* Forums and topics lists
-	----------------------------------------*/
-	ul.topiclist.forums dt {
-		margin-right: -250px;
-	}
-
-	ul.topiclist dd.mark {
-		display: block;
-		position: absolute;
-		right: 5px;
-		top: 0;
-		margin: 0;
-		width: auto;
-		min-width: 0;
-		text-align: left;
-	}
-
-	ul.topiclist.forums dd.topics dfn, ul.topiclist.topics dd.posts dfn {
-		position: relative;
-		left: 0;
-		width: auto;
-		display: inline;
-		font-weight: normal;
-	}
-
-	li.row .responsive-show strong {
-		font-weight: bold;
-		color: inherit;
-	}
-
-	ul.topiclist li.row dt a.subforum {
-		vertical-align: bottom;
-		overflow: hidden;
-		text-overflow: ellipsis;
-		max-width: 100px;
-	}
-
-	/* Pagination
-	----------------------------------------*/
-	.pagination > ul {
-		margin: 5px 0 0;
-	}
-
-	.row .pagination .ellipsis + li {
-		display: none !important;
-	}
-
-	/* Responsive tables
-	----------------------------------------*/
-	table.responsive, table.responsive tbody, table.responsive tr, table.responsive td {
-		display: block;
-	}
-
-	table.responsive thead, table.responsive th {
-		display: none;
-	}
-
-	table.responsive.show-header thead, table.responsive.show-header th:first-child {
-		display: block;
-		width: auto !important;
-		text-align: left !important;
-	}
-
-	table.responsive.show-header th:first-child span.rank-img {
-		display: none;
-	}
-
-	table.responsive tr {
-		margin: 2px 0;
-	}
-
-	table.responsive td {
-		width: auto !important;
-		text-align: left !important;
-		padding: 4px;
-	}
-
-	table.responsive td.empty {
-		display: none !important;
-	}
-
-	table.responsive td > dfn {
-		display: inline-block !important;
-	}
-
-	table.responsive td > dfn:after {
-		content: ':';
-		padding-right: 5px;
-	}
-
-	table.responsive span.rank-img {
-		float: none;
-		padding-right: 5px;
-	}
-
-	table.responsive.memberlist td:first-child input[type="checkbox"] {
-		float: right;
-	}
-
-	/* Forms
-	----------------------------------------*/
-	fieldset dt, fieldset.fields1 dt, fieldset.fields2 dt {
-		width: auto;
-		float: none;
-	}
-
-	fieldset dd, fieldset.fields1 dd, fieldset.fields2 dd {
-		margin-left: 20px;
-	}
-
-	textarea, dd textarea, .message-box textarea {
-		width: 100%;
-		-moz-box-sizing: border-box;
-		box-sizing: border-box;
-	}
-
-	dl.pmlist dt {
-		width: auto !important;
-		margin-bottom: 5px;
-	}
-
-	dl.pmlist dd {
-		display: inline-block;
-		margin-left: 0 !important;
-	}
-
-	dl.pmlist dd:first-of-type {
-		padding-left: 20px;
-	}
-
-	.smiley-box, .message-box {
-		float: none;
-		width: auto;
-	}
-
-	.smiley-box {
-		margin-top: 5px;
-	}
-
-	.bbcode-status {
-		display: none;
-	}
-
-	.colour-palette, .colour-palette tbody, .colour-palette tr {
-		display: block;
-	}
-
-	.colour-palette td {
-		display: inline-block;
-		margin-right: 2px;
-	}
-
-	.horizontal-palette td:nth-child(2n), .vertical-palette tr:nth-child(2n) {
-		display: none;
-	}
-
-	fieldset.quick-login label {
-		display: block;
-		margin-bottom: 5px;
-		white-space: normal;
-	}
-
-	fieldset.quick-login label > span {
-		display: inline-block;
-		min-width: 100px;
-	}
-
-	fieldset.quick-login input.inputbox {
-		width: 85%;
-		max-width: 300px;
-		margin-left: 20px;
-	}
-
-	fieldset.quick-login label[for="autologin"] {
-		display: inline-block;
-		text-align: right;
-		min-width: 50%;
-	}
-
-	/* User profile
-	----------------------------------------*/
-	.column1, .column2, .left-box.profile-details {
-		float: none;
-		width: auto;
-	}
-
-	/* Polls
-	----------------------------------------*/
-	fieldset.polls dt {
-		width: 90%;
-	}
-
-	fieldset.polls dd.resultbar {
-		padding-left: 20px;
-	}
-
-	fieldset.polls dd.poll_option_percent {
-		width: 20%;
-	}
-
-	fieldset.polls dd.resultbar, fieldset.polls dd.poll_option_percent {
-		margin-top: 5px;
-	}
-
-	/* Post
-	----------------------------------------*/
-	.postbody {
-		position: inherit;
-	}
-
-	.postprofile, .postbody, .search .postbody {
-		display: block;
-		width: auto;
-		float: none;
-		padding: 0;
-		min-height: 0;
-	}
-
-	.post .postprofile {
-		width: auto;
-		border-width: 0 0 1px 0;
-		padding-bottom: 5px;
-		margin: 0;
-		margin-bottom: 5px;
-		min-height: 40px;
-		overflow: hidden;
-	}
-
-	.postprofile dd {
-		display: none;
-	}
-
-	.postprofile dt, .postprofile dd.profile-rank, .search .postprofile dd {
-		display: block;
-		margin: 0;
-	}
-
-	.postprofile .has-avatar .avatar-container {
-		margin: 0;
-		overflow: inherit;
-	}
-
-	.postprofile .avatar-container:after {
-		clear: none;
-	}
-
-	.postprofile .avatar {
-		margin-right: 5px;
-	}
-
-	.postprofile .avatar img {
-		width: auto !important;
-		height: auto !important;
-		max-height: 32px;
-	}
-
-	.has-profile .postbody h3 {
-		margin-left: 0 !important;
-		margin-right: 0 !important;
-	}
-
-	.has-profile .post-buttons {
-		right: 30px;
-		top: 15px;
-	}
-
-	.online {
-		background-size: 40px;
-	}
-
-	/* Misc stuff
-	----------------------------------------*/
-	h2 {
-		margin-top: .5em;
-	}
-
-	p {
-		margin-bottom: .5em;
-		overflow: hidden;
-	}
-
-	p.rightside {
-		margin-bottom: 0;
-	}
-
-	fieldset.display-options label {
-		display: block;
-		clear: both;
-		margin-bottom: 5px;
-	}
-
-	dl.mini dd.pm-legend {
-		float: left;
-		min-width: 200px;
-	}
-
-	.topicreview {
-		margin: 0 -5px;
-		padding: 0 5px;
-	}
-
-	fieldset.display-actions {
-		white-space: normal;
-	}
-
-	.phpbb_alert {
-		width: auto;
-		margin: 0 5px;
-	}
-
-	.attach-comment dfn {
-		width: 100%;
-	}
-}
-
-@media (min-width: 700px) {
-	.postbody { width: 70%; }
-}
-
-@media (min-width: 850px) {
-	.postbody { width: 76%; }
-}
-
-@media (max-width: 850px) {
-	.postprofile { width: 28%; }
-
-
-}
-
-@media (min-width: 701px) and (max-width: 950px) {
-
-	ul.topiclist dt {
-    	margin-right: -410px;
-	}
-
-	ul.topiclist dt .list-inner {
-    	margin-right: 410px;
-	}
-
-	dd.posts, dd.topics, dd.views {
-    	width: 80px;
-	}
-}
-
-@media (max-width: 992px) {
-	.row .pagination {
-		text-align: left;
-		float: left;
-		margin-top: 4px;
-		margin-bottom: 4px;
-	}
 }