
		.apostila-toolbar {
			margin-bottom: 30px;
		}

		.apostila-search-group {
			max-width: 420px;
		}

		.apostila-search-group .form-control {
			height: 40px;
			border-radius: 4px;
			padding: 0 12px;
			border: 1px solid #ccc;
			box-shadow: none;
		}

		.apostila-search-group .form-control:focus {
			border-color: #0066cc;
			box-shadow: 0 0 0 2px rgba(0, 102, 204, 0.12);
		}

		.apostila-search-count {
			margin-top: 12px;
			font-size: 14px;
			color: #555;
		}

		.apostila-toolbar .btn {
			margin: 0 10px 10px 0;
			border-radius: 30px;
			padding: 10px 18px;
		}

		#apostila-accordion {
			margin-bottom: 20px;
		}

		#apostila-accordion .panel {
			border: 1px solid #e5e5e5;
			border-radius: 8px;
			margin-bottom: 15px;
			box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
		}

		#apostila-accordion .panel-heading {
			padding: 0;
			border: none;
			background: #f9f9f9;
			border-radius: 8px 8px 0 0;
		}

		#apostila-accordion .panel-heading a {
			display: block;
			padding: 15px 20px;
			color: #333;
			text-decoration: none;
			font-weight: 600;
			transition: all 0.3s ease;
		}

		#apostila-accordion .panel-heading a:hover {
			color: #0066cc;
		}

		#apostila-accordion .panel-heading a[aria-expanded="true"] {
			color: #0066cc;
		}

		#apostila-accordion .panel-body {
			padding: 20px;
			background: #fff;
		}

		.apostila-unit-grid {
			display: grid;
			grid-template-columns: repeat(4, minmax(0, 1fr));
			gap: 8px 14px;
		}

		.apostila-unit-card {
			background: transparent;
			border: 0;
			border-radius: 0;
			padding: 2px 0;
			color: #333;
		}

		.apostila-unit-title {
			font-size: 15px;
			font-weight: 700;
			line-height: 1.3;
			margin: 0 0 8px;
		}

		.apostila-unit-materials {
			list-style: none;
			padding: 0;
			margin: 0;
		}

		.apostila-unit-materials li {
			margin-bottom: 4px;
		}

		.apostila-unit-materials li:last-child {
			margin-bottom: 0;
		}

		.apostila-material-link {
			display: inline-flex;
			align-items: center;
			gap: 6px;
			color: #333;
			font-size: 14px;
			text-decoration: none;
			transition: opacity 0.2s ease;
		}

		.apostila-material-link:hover {
			color: #0066cc;
			opacity: 0.82;
		}

		.apostila-material-link i {
			font-size: 13px;
		}

		.apostila-material-link span {
			font-size: 14px;
			line-height: 1.1;
		}

		.apostila-material-link.material-exercicio span {
			font-size: 14px;
			font-weight: 400;
		}

		.apostila-material-link.is-disabled {
			opacity: 0.4;
			cursor: default;
			pointer-events: none;
		}

		.apostila-status {
			padding: 18px 22px;
			border-radius: 8px;
			background: #f7f7f7;
			color: #555;
		}

		#apostila-content {
			display: block;
		}

		/* -- Dashboard de estatísticas -- */
		.apostila-dashboard {
			margin-bottom: 0;
		}

		.apostila-dash-summary {
			display: flex;
			gap: 10px;
			margin-bottom: 18px;
		}

		.apostila-dash-stat {
			flex: 1;
			background: #0066cc;
			color: #fff;
			border-radius: 8px;
			padding: 14px 10px;
			text-align: center;
		}

		.apostila-dash-stat.secondary {
			background: #444;
		}

		.apostila-dash-stat-number {
			display: block;
			font-size: 28px;
			font-weight: 700;
			line-height: 1;
			margin-bottom: 4px;
		}

		.apostila-dash-stat-label {
			display: block;
			font-size: 11px;
			text-transform: uppercase;
			letter-spacing: 0.5px;
			opacity: 0.88;
		}

		.apostila-dash-rows {
			list-style: none;
			padding: 0;
			margin: 0;
		}

		.apostila-dash-row {
			display: flex;
			align-items: center;
			justify-content: space-between;
			padding: 9px 12px;
			border-radius: 6px;
			margin-bottom: 6px;
			background: #f5f7fa;
			font-size: 13px;
			font-weight: 600;
			color: #333;
			transition: background 0.2s;
		}

		.apostila-dash-row:last-child {
			margin-bottom: 0;
		}

		.apostila-dash-row-name {
			flex: 1;
			margin-right: 8px;
			line-height: 1.3;
		}

		.apostila-dash-badge {
			background: #0066cc;
			color: #fff;
			border-radius: 12px;
			padding: 2px 10px;
			font-size: 12px;
			font-weight: 700;
			white-space: nowrap;
			flex-shrink: 0;
		}

		.apostila-dash-placeholder {
			color: #aaa;
			font-style: italic;
			font-size: 13px;
			text-align: center;
			padding: 16px 0;
		}

		@media (max-width: 767px) {
			.apostila-search-group {
				max-width: 100%;
			}

			.apostila-unit-grid {
				grid-template-columns: repeat(2, minmax(0, 1fr));
			}

			.apostila-material-link {
				font-size: 14px;
			}

			.apostila-material-link span {
				font-size: 14px;
			}

			.apostila-material-link.material-exercicio span {
				font-size: 14px;
			}

			#apostila-content {
				display: block;
			}
		}

		@media (max-width: 480px) {
			.apostila-unit-grid {
				grid-template-columns: 1fr;
			}
		}
	
.public-materials-grid{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:32px}.public-materials-grid h2{font-size:27px}.apostila-dashboard{background:#f2f7fa;padding:22px;border-radius:8px}.apostila-dashboard h3{font-size:20px}.apostila-toolbar input{width:100%;padding:12px;border:1px solid #cbdce7;border-radius:5px}.apostila-status{padding:18px;background:#edf4f8;border-radius:6px}.public-materials-grid .title-border{font-size:24px}@media(max-width:850px){.public-materials-grid{grid-template-columns:1fr}.public-materials-grid aside{order:-1}}
.apostila-course{border:1px solid #d5e2eb;background:#fff;border-radius:7px;margin:12px 0}.apostila-course>summary{padding:17px 20px;font-size:15px;font-weight:700;color:#224f69;cursor:pointer}.apostila-course>.panel-body{padding:8px 20px 20px}.apostila-toolbar .btn{padding:10px 13px;border:1px solid #b9cddc;border-radius:5px;background:#fff;color:#2c5975;margin:4px;font-size:11px;cursor:pointer}.apostila-toolbar .btn-primary{background:#087b97;color:#fff;border-color:#087b97}.public-materials-grid .apostila-toolbar{padding:14px 10px}.public-materials-grid .apostila-unit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:1100px){.public-materials-grid{grid-template-columns:minmax(0,1fr) 220px}.public-materials-grid .apostila-unit-grid{grid-template-columns:1fr}}@media(max-width:850px){.public-materials-grid{grid-template-columns:1fr}.public-materials-grid aside{order:0}}
