/* ============================================================
   Tablet layout — iPad portrait through 12" landscape (768–1199px)
   Desktop chrome (260px + 260px sidebars) is too wide; phone
   stacking is too sparse. Keep labels visible (touch has no hover).
   ============================================================ */

@media (min-width: 768px) and (max-width: 1199px) {

	html {
		-webkit-text-size-adjust: 100%;
	}

	body:not(.login-container) {
		overflow-x: hidden;
	}

	.page-container,
	.page-content {
		width: 100%;
	}

	.content-wrapper {
		min-width: 0;
		vertical-align: top;
	}

	.content,
	.content-wrapper .content {
		padding-left: 16px;
		padding-right: 16px;
	}

	/* Contacts / friends rail is social chrome — reclaim ~260px */
	.page-content > .sidebar.sidebar-secondary.menu-sidebar {
		display: none !important;
	}

	/* Keep the main nav readable, just narrower */
	.sidebar.sidebar-main {
		width: 210px;
	}

	body:not(.sidebar-xs) .sidebar.sidebar-main.student-main-nav .navigation.navigation-main {
		padding: 6px 8px 14px;
	}

	body:not(.sidebar-xs) .sidebar.sidebar-main.student-main-nav .navigation.navigation-main li:not(.navigation-header) > a {
		padding: 10px 12px;
		gap: 10px;
		font-size: 13px;
	}

	body:not(.sidebar-xs) .sidebar.sidebar-main.admin-main-nav {
		width: 210px;
	}

	body:not(.sidebar-xs) .sidebar.sidebar-main.admin-main-nav .navigation.navigation-main > li > a {
		padding-left: 12px;
		padding-right: 12px;
	}

	.sidebar.friends-sidebar,
	.sidebar.studygroup-sidebar,
	.sidebar.messages-sidebar {
		width: 220px;
	}

	/* Top bar: less wasted logo column, school name can ellipsis */
	#new-topnav-bar .navbar-header {
		width: 168px;
	}

	#new-topnav-bar .navbar-brand {
		padding-left: 12px;
		padding-right: 8px;
	}

	#new-topnav-bar .navbar-brand img {
		max-height: 28px;
		width: auto;
	}

	#new-topnav-bar .navbar-left-section {
		max-width: 34%;
	}

	#new-topnav-bar .navbar-left-section .navbar-text {
		padding-left: 8px;
		padding-right: 8px;
		font-size: 13px;
	}

	#new-topnav-bar .navbar-right-section {
		padding-right: 8px;
	}

	#new-topnav-bar .navbar-right-section .navbar-nav > li > a {
		padding-left: 10px;
		padding-right: 10px;
		min-height: 44px;
	}

	#topnav-bar .navbar-header {
		width: auto;
		min-width: 168px;
	}

	#topnav-bar .navbar-brand img {
		max-height: 28px;
		width: auto;
	}

	#topnav-bar .navbar-header .hidden-xs.hidden-lg {
		float: left;
		margin-left: 4px;
	}

	.navbar-tokens-count .hidden-md {
		display: none !important;
	}

	/* Tables: scroll instead of blowing the layout */
	.content-wrapper .table-responsive {
		display: block;
		width: 100%;
		max-width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		border: 0;
	}

	.content-wrapper table.table,
	.content-wrapper table.formated-table {
		max-width: none;
	}

	.panel,
	.page-heading {
		max-width: 100%;
	}

	.content-wrapper .panel-body {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.page-heading .nav-tabs {
		display: flex;
		flex-wrap: wrap;
	}

	.page-heading .nav-tabs > li {
		float: none;
		flex: 1 1 auto;
	}

	.page-heading .nav-tabs > li > a {
		white-space: nowrap;
	}

	.student-home-dashboard .dashboard-icons-wrapper .home-panel a.block {
		display: block;
		padding: 8px 6px;
	}

	.student-home-dashboard .dashboard-icons-wrapper img {
		max-width: 88px;
		margin-left: auto;
		margin-right: auto;
		display: block;
	}

	.shortcut {
		width: 120px;
	}

	.modal-dialog:not(.modal-lg) {
		width: 86%;
		margin: 30px auto;
	}

	.modal-dialog.modal-lg {
		width: 92%;
	}

	.dropdown-menu.width-350,
	.dropdown-content.width-350,
	.media-list.width-350 {
		width: 320px;
		max-width: calc(100vw - 24px);
	}

	/* Vertical Feedback tab overlaps tablet content */
	.easyprep-feedback-form.pinned-feedback-btn {
		display: none;
	}

	.content-wrapper img,
	.content-wrapper iframe,
	.content-wrapper video {
		max-width: 100%;
		height: auto;
	}

	.form-horizontal .control-label {
		padding-top: 8px;
	}

	.btn {
		min-height: 36px;
	}

	.online-class-front .oc-live-filters-grid,
	.online-class-front .oc-archives-filters-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.online-class-instructor-page .instructors-card-grid {
		grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	}

	.login-banner-wrapper .login-segment .login-text-wrapper .banner-title {
		font-size: 2.4rem;
		line-height: 1.2;
	}

	.login-banner-wrapper .login-segment .login-text-wrapper .banner-body * {
		font-size: 1.35rem;
		line-height: 1.35;
		font-weight: 600;
	}

	.login-banner-wrapper .login-content .login-segment .login-form-wrapper {
		margin-top: 12px;
	}
}


/* iPad portrait and similar — still tighter */
@media (min-width: 768px) and (max-width: 991px) {

	.sidebar.sidebar-main {
		width: 188px;
	}

	body:not(.sidebar-xs) .sidebar.sidebar-main.admin-main-nav {
		width: 188px;
	}

	#new-topnav-bar .navbar-header {
		width: 148px;
	}

	#new-topnav-bar .navbar-left-section .navbar-text {
		font-size: 12px;
	}

	.shortcut {
		width: 110px;
	}

	.content,
	.content-wrapper .content {
		padding-left: 12px;
		padding-right: 12px;
	}

	.login-wrapper .panel.login-form-wrapper .form-wrapper {
		padding: 16px !important;
	}
}
