Showing preview only (5,787K chars total). Download the full file or copy to clipboard to get everything.
Repository: creativetimofficial/material-dashboard-laravel
Branch: master
Commit: 38814b1e3bc8
Files: 342
Total size: 5.4 MB
Directory structure:
gitextract_epoal5j9/
├── .vscode/
│ └── settings.json
├── CHANGELOG.md
├── ISSUE_TEMPLATE.md
├── README.md
├── changelog.md
├── composer.json
├── license.md
└── src/
├── MaterialPreset.php
├── MaterialPresetServiceProvider.php
└── material-stubs/
├── app/
│ ├── Console/
│ │ └── Kernel.php
│ ├── Exceptions/
│ │ └── Handler.php
│ ├── Http/
│ │ ├── Controllers/
│ │ │ ├── Controller.php
│ │ │ ├── DashboardController.php
│ │ │ ├── ProfileController.php
│ │ │ ├── RegisterController.php
│ │ │ └── SessionsController.php
│ │ ├── Kernel.php
│ │ └── Middleware/
│ │ ├── Authenticate.php
│ │ ├── EncryptCookies.php
│ │ ├── PreventRequestsDuringMaintenance.php
│ │ ├── RedirectIfAuthenticated.php
│ │ ├── TrimStrings.php
│ │ ├── TrustHosts.php
│ │ ├── TrustProxies.php
│ │ └── VerifyCsrfToken.php
│ ├── Models/
│ │ └── User.php
│ └── Providers/
│ ├── AppServiceProvider.php
│ ├── AuthServiceProvider.php
│ ├── BroadcastServiceProvider.php
│ ├── EventServiceProvider.php
│ └── RouteServiceProvider.php
├── database/
│ └── seeders/
│ └── DatabaseSeeder.php
├── migrations/
│ └── 2014_10_12_000000_create_users_table.php
├── resources/
│ ├── assets/
│ │ ├── css/
│ │ │ ├── material-dashboard.css
│ │ │ ├── nucleo-icons.css
│ │ │ └── nucleo-svg.css
│ │ └── js/
│ │ ├── app.js
│ │ └── bootstrap.js
│ ├── material/
│ │ ├── assets/
│ │ │ ├── css/
│ │ │ │ ├── demo.css
│ │ │ │ ├── docs.css
│ │ │ │ ├── material-dashboard.css
│ │ │ │ ├── nucleo-icons.css
│ │ │ │ └── nucleo-svg.css
│ │ │ ├── js/
│ │ │ │ ├── datatables.js
│ │ │ │ ├── docs.js
│ │ │ │ ├── jkanban.js
│ │ │ │ ├── material-dashboard.js
│ │ │ │ ├── multistep-form.js
│ │ │ │ ├── plugins/
│ │ │ │ │ ├── Chart.extension.js
│ │ │ │ │ ├── bootstrap-notify.js
│ │ │ │ │ └── world.js
│ │ │ │ └── prism.js
│ │ │ └── scss/
│ │ │ ├── material-dashboard/
│ │ │ │ ├── _accordion.scss
│ │ │ │ ├── _alert.scss
│ │ │ │ ├── _avatars.scss
│ │ │ │ ├── _backgrounds.scss
│ │ │ │ ├── _badge.scss
│ │ │ │ ├── _breadcrumbs.scss
│ │ │ │ ├── _buttons.scss
│ │ │ │ ├── _cards-extend.scss
│ │ │ │ ├── _cards.scss
│ │ │ │ ├── _components.scss
│ │ │ │ ├── _dark-version.scss
│ │ │ │ ├── _dropdown-extend.scss
│ │ │ │ ├── _dropdown.scss
│ │ │ │ ├── _dropup.scss
│ │ │ │ ├── _fixed-plugin.scss
│ │ │ │ ├── _floating-elements.scss
│ │ │ │ ├── _footer.scss
│ │ │ │ ├── _forms.scss
│ │ │ │ ├── _gradients.scss
│ │ │ │ ├── _header.scss
│ │ │ │ ├── _icons.scss
│ │ │ │ ├── _info-areas.scss
│ │ │ │ ├── _list-check.scss
│ │ │ │ ├── _misc-extend.scss
│ │ │ │ ├── _misc.scss
│ │ │ │ ├── _nav.scss
│ │ │ │ ├── _navbar-vertical.scss
│ │ │ │ ├── _navbar.scss
│ │ │ │ ├── _pagination.scss
│ │ │ │ ├── _popovers.scss
│ │ │ │ ├── _progress.scss
│ │ │ │ ├── _ripple.scss
│ │ │ │ ├── _rtl-extend.scss
│ │ │ │ ├── _rtl.scss
│ │ │ │ ├── _social-buttons.scss
│ │ │ │ ├── _tables.scss
│ │ │ │ ├── _tilt.scss
│ │ │ │ ├── _timeline.scss
│ │ │ │ ├── _tooltips.scss
│ │ │ │ ├── _typography.scss
│ │ │ │ ├── _utilities-extend.scss
│ │ │ │ ├── _utilities.scss
│ │ │ │ ├── _variables.scss
│ │ │ │ ├── badges/
│ │ │ │ │ ├── _badge-circle.scss
│ │ │ │ │ ├── _badge-dot.scss
│ │ │ │ │ ├── _badge-floating.scss
│ │ │ │ │ └── _badge.scss
│ │ │ │ ├── bootstrap/
│ │ │ │ │ ├── _accordion.scss
│ │ │ │ │ ├── _alert.scss
│ │ │ │ │ ├── _badge.scss
│ │ │ │ │ ├── _breadcrumb.scss
│ │ │ │ │ ├── _button-group.scss
│ │ │ │ │ ├── _buttons.scss
│ │ │ │ │ ├── _card.scss
│ │ │ │ │ ├── _carousel.scss
│ │ │ │ │ ├── _close.scss
│ │ │ │ │ ├── _containers.scss
│ │ │ │ │ ├── _dropdown.scss
│ │ │ │ │ ├── _forms.scss
│ │ │ │ │ ├── _functions.scss
│ │ │ │ │ ├── _grid.scss
│ │ │ │ │ ├── _helpers.scss
│ │ │ │ │ ├── _images.scss
│ │ │ │ │ ├── _list-group.scss
│ │ │ │ │ ├── _mixins.scss
│ │ │ │ │ ├── _modal.scss
│ │ │ │ │ ├── _nav.scss
│ │ │ │ │ ├── _navbar.scss
│ │ │ │ │ ├── _offcanvas.scss
│ │ │ │ │ ├── _pagination.scss
│ │ │ │ │ ├── _placeholders.scss
│ │ │ │ │ ├── _popover.scss
│ │ │ │ │ ├── _progress.scss
│ │ │ │ │ ├── _reboot.scss
│ │ │ │ │ ├── _root.scss
│ │ │ │ │ ├── _spinners.scss
│ │ │ │ │ ├── _tables.scss
│ │ │ │ │ ├── _toasts.scss
│ │ │ │ │ ├── _tooltip.scss
│ │ │ │ │ ├── _transitions.scss
│ │ │ │ │ ├── _type.scss
│ │ │ │ │ ├── _utilities.scss
│ │ │ │ │ ├── _variables.scss
│ │ │ │ │ ├── bootstrap-grid.scss
│ │ │ │ │ ├── bootstrap-reboot.scss
│ │ │ │ │ ├── bootstrap-utilities.scss
│ │ │ │ │ ├── bootstrap.scss
│ │ │ │ │ ├── forms/
│ │ │ │ │ │ ├── _floating-labels.scss
│ │ │ │ │ │ ├── _form-check.scss
│ │ │ │ │ │ ├── _form-control.scss
│ │ │ │ │ │ ├── _form-range.scss
│ │ │ │ │ │ ├── _form-select.scss
│ │ │ │ │ │ ├── _form-text.scss
│ │ │ │ │ │ ├── _input-group.scss
│ │ │ │ │ │ ├── _labels.scss
│ │ │ │ │ │ └── _validation.scss
│ │ │ │ │ ├── helpers/
│ │ │ │ │ │ ├── _clearfix.scss
│ │ │ │ │ │ ├── _colored-links.scss
│ │ │ │ │ │ ├── _position.scss
│ │ │ │ │ │ ├── _ratio.scss
│ │ │ │ │ │ ├── _stacks.scss
│ │ │ │ │ │ ├── _stretched-link.scss
│ │ │ │ │ │ ├── _text-truncation.scss
│ │ │ │ │ │ ├── _visually-hidden.scss
│ │ │ │ │ │ └── _vr.scss
│ │ │ │ │ ├── mixins/
│ │ │ │ │ │ ├── _alert.scss
│ │ │ │ │ │ ├── _backdrop.scss
│ │ │ │ │ │ ├── _border-radius.scss
│ │ │ │ │ │ ├── _box-shadow.scss
│ │ │ │ │ │ ├── _breakpoints.scss
│ │ │ │ │ │ ├── _buttons.scss
│ │ │ │ │ │ ├── _caret.scss
│ │ │ │ │ │ ├── _clearfix.scss
│ │ │ │ │ │ ├── _color-scheme.scss
│ │ │ │ │ │ ├── _container.scss
│ │ │ │ │ │ ├── _deprecate.scss
│ │ │ │ │ │ ├── _forms.scss
│ │ │ │ │ │ ├── _gradients.scss
│ │ │ │ │ │ ├── _grid.scss
│ │ │ │ │ │ ├── _image.scss
│ │ │ │ │ │ ├── _list-group.scss
│ │ │ │ │ │ ├── _lists.scss
│ │ │ │ │ │ ├── _pagination.scss
│ │ │ │ │ │ ├── _reset-text.scss
│ │ │ │ │ │ ├── _resize.scss
│ │ │ │ │ │ ├── _table-variants.scss
│ │ │ │ │ │ ├── _text-truncate.scss
│ │ │ │ │ │ ├── _transition.scss
│ │ │ │ │ │ ├── _utilities.scss
│ │ │ │ │ │ └── _visually-hidden.scss
│ │ │ │ │ ├── utilities/
│ │ │ │ │ │ └── _api.scss
│ │ │ │ │ └── vendor/
│ │ │ │ │ └── _rfs.scss
│ │ │ │ ├── cards/
│ │ │ │ │ ├── card-background.scss
│ │ │ │ │ ├── card-blog.scss
│ │ │ │ │ ├── card-horizontal.scss
│ │ │ │ │ ├── card-pricing.scss
│ │ │ │ │ ├── card-profile.scss
│ │ │ │ │ └── card-rotate.scss
│ │ │ │ ├── custom/
│ │ │ │ │ ├── _styles.scss
│ │ │ │ │ └── _variables.scss
│ │ │ │ ├── forms/
│ │ │ │ │ ├── _form-check.scss
│ │ │ │ │ ├── _form-select.scss
│ │ │ │ │ ├── _form-switch.scss
│ │ │ │ │ ├── _forms.scss
│ │ │ │ │ ├── _input-group.scss
│ │ │ │ │ ├── _inputs.scss
│ │ │ │ │ └── _labels.scss
│ │ │ │ ├── mixins/
│ │ │ │ │ ├── _badge.scss
│ │ │ │ │ ├── _buttons.scss
│ │ │ │ │ ├── _colored-shadows.scss
│ │ │ │ │ ├── _hover.scss
│ │ │ │ │ ├── _social-buttons.scss
│ │ │ │ │ ├── _vendor.scss
│ │ │ │ │ └── mixins.scss
│ │ │ │ ├── plugins/
│ │ │ │ │ ├── free/
│ │ │ │ │ │ ├── _flatpickr.scss
│ │ │ │ │ │ ├── _nouislider.scss
│ │ │ │ │ │ ├── _perfect-scrollbar.scss
│ │ │ │ │ │ ├── _prism.scss
│ │ │ │ │ │ └── plugins.scss
│ │ │ │ │ └── pro/
│ │ │ │ │ ├── _carousel-slick.scss
│ │ │ │ │ ├── _choices.scss
│ │ │ │ │ ├── _datatable-extend.scss
│ │ │ │ │ ├── _datatable.scss
│ │ │ │ │ ├── _dragula.scss
│ │ │ │ │ ├── _dropzone.scss
│ │ │ │ │ ├── _fullcalendar-extend.scss
│ │ │ │ │ ├── _fullcalendar.scss
│ │ │ │ │ ├── _glidejs.scss
│ │ │ │ │ ├── _highlight.scss
│ │ │ │ │ ├── _kanban.scss
│ │ │ │ │ ├── _leaflet.scss
│ │ │ │ │ ├── _list-check.scss
│ │ │ │ │ ├── _photoswipe.scss
│ │ │ │ │ ├── _quill.scss
│ │ │ │ │ ├── _rating-widget.scss
│ │ │ │ │ ├── _sweetalert2-extend.scss
│ │ │ │ │ ├── _sweetalert2.scss
│ │ │ │ │ ├── _vector-map.scss
│ │ │ │ │ ├── multi-step.scss
│ │ │ │ │ └── plugins-extend.scss
│ │ │ │ ├── theme-pro.scss
│ │ │ │ ├── theme.scss
│ │ │ │ └── variables/
│ │ │ │ ├── _animations.scss
│ │ │ │ ├── _avatars.scss
│ │ │ │ ├── _badge.scss
│ │ │ │ ├── _breadcrumb.scss
│ │ │ │ ├── _cards-extend.scss
│ │ │ │ ├── _cards.scss
│ │ │ │ ├── _choices.scss
│ │ │ │ ├── _dark-version.scss
│ │ │ │ ├── _dropdowns.scss
│ │ │ │ ├── _fixed-plugin.scss
│ │ │ │ ├── _form-switch.scss
│ │ │ │ ├── _full-calendar.scss
│ │ │ │ ├── _header.scss
│ │ │ │ ├── _info-areas.scss
│ │ │ │ ├── _misc-extend.scss
│ │ │ │ ├── _misc.scss
│ │ │ │ ├── _navbar-vertical.scss
│ │ │ │ ├── _navbar.scss
│ │ │ │ ├── _pagination.scss
│ │ │ │ ├── _ripple.scss
│ │ │ │ ├── _rtl.scss
│ │ │ │ ├── _social-buttons.scss
│ │ │ │ ├── _table.scss
│ │ │ │ ├── _timeline.scss
│ │ │ │ ├── _utilities-extend.scss
│ │ │ │ ├── _utilities.scss
│ │ │ │ └── _virtual-reality.scss
│ │ │ └── material-dashboard.scss
│ │ └── documentation/
│ │ ├── components/
│ │ │ ├── alerts.html
│ │ │ ├── badge.html
│ │ │ ├── buttons.html
│ │ │ ├── cards.html
│ │ │ ├── carousel.html
│ │ │ ├── collapse.html
│ │ │ ├── dropdowns.html
│ │ │ ├── forms.html
│ │ │ ├── input-group.html
│ │ │ ├── list-group.html
│ │ │ ├── modal.html
│ │ │ ├── navbar.html
│ │ │ ├── navs.html
│ │ │ ├── pagination.html
│ │ │ ├── popovers.html
│ │ │ ├── progress.html
│ │ │ ├── social-buttons.html
│ │ │ ├── spinners.html
│ │ │ ├── tables.html
│ │ │ └── tooltips.html
│ │ ├── foundation/
│ │ │ ├── colors.html
│ │ │ ├── grid.html
│ │ │ ├── icons.html
│ │ │ ├── typography.html
│ │ │ └── utilities.html
│ │ ├── getting-started/
│ │ │ ├── bootstrap.html
│ │ │ ├── build-tools.html
│ │ │ ├── installation.html
│ │ │ ├── license.html
│ │ │ └── overview.html
│ │ ├── laravel/
│ │ │ ├── forgot-password.html
│ │ │ ├── login.html
│ │ │ ├── sign-up.html
│ │ │ ├── user-management.html
│ │ │ └── user-profile.html
│ │ └── plugins/
│ │ ├── charts.html
│ │ ├── choices.html
│ │ ├── countUpJs.html
│ │ ├── datatables.html
│ │ ├── datepicker.html
│ │ ├── dropzone.html
│ │ ├── fullcalendar.html
│ │ ├── kanban.html
│ │ ├── photo-swipe.html
│ │ ├── quill.html
│ │ ├── sliders.html
│ │ ├── sweet-alerts.html
│ │ └── wizard.html
│ └── views/
│ ├── components/
│ │ ├── footers/
│ │ │ ├── auth.blade.php
│ │ │ └── guest.blade.php
│ │ ├── layout.blade.php
│ │ ├── navbars/
│ │ │ ├── navs/
│ │ │ │ ├── auth.blade.php
│ │ │ │ └── guest.blade.php
│ │ │ └── sidebar.blade.php
│ │ └── plugins.blade.php
│ ├── dashboard/
│ │ └── index.blade.php
│ ├── errors/
│ │ ├── 401.blade.php
│ │ ├── 403.blade.php
│ │ ├── 404.blade.php
│ │ ├── 405.blade.php
│ │ ├── 419.blade.php
│ │ ├── 429.blade.php
│ │ ├── 500.blade.php
│ │ └── 503.blade.php
│ ├── pages/
│ │ ├── billing.blade.php
│ │ ├── laravel-examples/
│ │ │ ├── user-management.blade.php
│ │ │ └── user-profile.blade.php
│ │ ├── notifications.blade.php
│ │ ├── profile.blade.php
│ │ ├── rtl.blade.php
│ │ ├── static-sign-in.blade.php
│ │ ├── static-sign-up.blade.php
│ │ ├── tables.blade.php
│ │ └── virtual-reality.blade.php
│ ├── register/
│ │ └── create.blade.php
│ ├── sessions/
│ │ ├── create.blade.php
│ │ └── password/
│ │ ├── reset.blade.php
│ │ └── verify.blade.php
│ └── welcome.blade.php
└── webpack.mix.js
================================================
FILE CONTENTS
================================================
================================================
FILE: .vscode/settings.json
================================================
{
"workbench.colorCustomizations": {
"activityBar.background": "#511B26",
"titleBar.activeBackground": "#712635",
"titleBar.activeForeground": "#FEFBFC"
}
}
================================================
FILE: CHANGELOG.md
================================================
# Changelog
All notable changes to `Material Dashboard Laravel` frontend preset for Laravel will be documented in this file.
## Version 1.0.0
### Added
- Material Dashboard v1.0.0 frontend theme
- Laravel Auth preset
- Change user profile
- User CRUD
## Version 1.0.0 - Version 1.0.4
- Bugfixes
## Version 1.0.5
- Add link to pro theme
## Version 1.0.6 - 2019-09-23
- Update to Laravel 6.x
## Version 1.1.0 - 2020-03-18
- Update to Laravel 7.x
## Version 1.0.8 - 2020-09-21
- Update to Laravel 8.x
## Version 1.0.9 - 2022-03-25
- Update to Laravel 9.x
## Version 2.0.0 - 2022-09-27
- Update to Material Design 2
- Update Bootstrap to v5.1.3
- Add new example pages
- Add Light/Dark feature
- New Documentation version
================================================
FILE: ISSUE_TEMPLATE.md
================================================
# Prerequisites
Please answer the following questions for yourself before submitting an issue.
- [ ] I am running the latest version
- [ ] I checked the documentation and found no answer
- [ ] I checked to make sure that this issue has not already been filed
- [ ] I'm reporting the issue to the correct repository (for multi-repository projects)
# Expected Behavior
Please describe the behavior you are expecting
# Current Behavior
What is the current behavior?
# Failure Information (for bugs)
Please help provide information about the failure if this is a bug. If it is not a bug, please remove the rest of this template.
## Steps to Reproduce
Please provide detailed steps for reproducing the issue.
1. step 1
2. step 2
3. you get it...
## Context
Please provide any relevant information about your setup. This is important in case the issue is not reproducible except for under certain conditions.
* Device:
* Operating System:
* Browser and Version:
## Failure Logs
Please include any relevant log snippets or files here.
================================================
FILE: README.md
================================================
# [Material Dashboard 2 Laravel - Free](https://material-dashboard-laravel.creative-tim.com)


[](https://github.com/creativetimofficial/material-dashboard-laravel/issues?q=is%3Aopen+is%3Aissue)
[](https://github.com/creativetimofficial/material-dashboard-laravel/issues?q=is%3Aissue+is%3Aclosed)
*Frontend version*: Material Dashboard v3.0.0. More info at https://www.creative-tim.com/product/material-dashboard
[ <img src="https://s3.amazonaws.com/creativetim_bucket/products/154/original/material-dashboard-laravel.jpg" width="100%" />](https://material-dashboard-laravel.creative-tim.com)
Speed up your web development with the Bootstrap 5 Admin Dashboard built for Laravel Framework 9.x and up.
If you want to get more features, go PRO with [Material Dashboard 2 PRO Laravel](https://www.creative-tim.com/product/material-dashboard-pro-laravel).
## Table of Contents
* [Prerequisites](#prerequisites)
* [Installation](#installation)
* [Usage](#usage)
* [Versions](#versions)
* [Demo](#demo)
* [Documentation](#documentation)
* [Login](#login)
* [Register](#register)
* [Forgot Password](#forgot-password)
* [Reset Password](#reset-password)
* [User Profile](#user-profile)
* [Dashboard](#dashboard)
* [File Structure](#file-structure)
* [Browser Support](#browser-support)
* [Reporting Issues](#reporting-issues)
* [Licensing](#licensing)
* [Useful Links](#useful-links)
* [Social Media](#social-media)
* [Credits](#credits)
## Prerequisites
If you don't already have an Apache local environment with PHP and MySQL, use one of the following links:
- Windows: https://updivision.com/blog/post/beginner-s-guide-to-setting-up-your-local-development-environment-on-windows
- Linux & Mac: https://updivision.com/blog/post/guide-what-is-lamp-and-how-to-install-it-on-ubuntu-and-macos
Also, you will need to install Composer: https://getcomposer.org/doc/00-intro.md
And Laravel: https://laravel.com/docs/10.x
## Installation
After initializing a fresh instance of Laravel (and making all the necessary configurations), install the preset using one of the provided methods:
### Via composer
1. `Cd` to your Laravel app
2. Type in your terminal: `composer require laravel/ui`
3. Install this preset via `composer require laravel-frontend-presets/material-dashboard`. No need to register the service provider. Laravel 9.x & up can auto detect the package.
4. Run `php artisan ui material` command to install the Material preset. This will install all the necessary assets and also the custom auth views, it will also add the auth route in `routes/web.php`
(NOTE: If you run this command several times, be sure to clean up the duplicate Auth entries in routes/web.php)
5. In your terminal run `composer dump-autoload`
6. Run `php artisan migrate:fresh --seed` to create basic users table
### By using the archive
1. In your application's root create a **presets** folder
2. Download the archive of the repo and unzip it
3. Copy and paste the downloaded folder in presets (created in step 2) and rename it to **material**
4. Open `composer.json` file
5. Add `"LaravelFrontendPresets\\MaterialPreset\\": "presets/material/src"` to `autoload/psr-4` and to `autoload-dev/psr-4`
6. Add `LaravelFrontendPresets\MaterialPreset\MaterialPresetServiceProvider::class` to `config/app.php` file
7. Type in your terminal: `composer require laravel/ui`
8. In your terminal run `composer dump-autoload`
9. Run `php artisan ui material` command to install the Argon preset. This will install all the necessary assets and also the custom auth views, it will also add the auth route in `routes/web.php`
(NOTE: If you run this command several times, be sure to clean up the duplicate Auth entries in routes/web.php)
10. Add in your **.env** file the info for your database
11. Run `php artisan migrate:fresh --seed` to create basic users table
## Usage
Register a user or login with default user **admin@material.com** and password **secret** from your database and start testing (make sure to run the migrations and seeders for these credentials to be available).
Besides the dashboard, the auth pages, the billing and table pages, there is also has an edit profile page. All the necessary files are installed out of the box and all the needed routes are added to `routes/web.php`. Keep in mind that all of the features can be viewed once you login using the credentials provided or by registering your own user.
## Versions
[<img src="https://github.com/creativetimofficial/public-assets/blob/master/logos/html-logo.jpg?raw=true" width="60" height="60" />](https://demos.creative-tim.com/material-dashboard/examples/dashboard.html)
[<img src="https://github.com/creativetimofficial/public-assets/blob/master/logos/laravel_logo.png?raw=true" width="60" height="60" />](https://material-dashboard-laravel.creative-tim.com/)
| HTML | Laravel |
| --- | --- |
| [](https://www.creative-tim.com/product/material-dashboard) | [](https://www.creative-tim.com/product/material-dashboard-laravel) |
| Vue | React |
| --- | --- |
| [](https://www.creative-tim.com/product/vue-material-dashboard-2) | [](https://www.creative-tim.com/product/material-dashboard-react) |
## Demo
| Register | Login | Dashboard |
| --- | --- | --- |
| [<img src="src/material-stubs/screens/register.png" width="322" />](https://material-dashboard-laravel.creative-tim.com/sign-up) | [<img src="src/material-stubs/screens/login.png" width="322" />](https://material-dashboard-laravel.creative-tim.com/sign-in) | [<img src="src/material-stubs/screens/dashboard.png" width="322" />](https://material-dashboard-laravel.creative-tim.com/dashboard)
| Forgot Password Page | Reset Password Page | Profile Page |
| --- | --- | --- |
| [<img src="src/material-stubs/screens/forgot-password.png" width="322" />](https://material-dashboard-laravel.creative-tim.com/verify) | [<img src="src/material-stubs/screens/reset-password.png" width="322" />](https://material-dashboard-laravel.creative-tim.com/sign-in) | [<img src="src/material-stubs/screens/profile.png" width="322" />](https://material-dashboard-laravel.creative-tim.com/user-profile)
[View More](https://material-dashboard-laravel.creative-tim.com/dashboard)
## Documentation
The documentation for the Material Dashboard Laravel is hosted at our [website](https://material-dashboard-laravel.creative-tim.com/documentation/getting-started/installation.html).
### Login
If you are not logged in you can only access this page or the Sign Up page. The default url takes you to the login page where you use the default credentials **admin@material.com** with the password **secret**. Logging in is possible only with already existing credentials. For this to work you should have run the migrations.
The `App/Http/Controllers/SessionsController.php` handles the logging in of an existing user.
```
public function store()
{
$attributes = request()->validate([
'email' => 'required|email',
'password' => 'required'
]);
if (! auth()->attempt($attributes)) {
throw ValidationException::withMessages([
'email' => 'Your provided credentials could not be verified.'
]);
}
session()->regenerate();
return redirect('/dashboard');
}
```
### Register
You can register as a user by filling in the name, email and password for your account. You can do this by accessing the sign up page from the "**Sign Up**" button in the top navbar or by clicking the "**Sign Up**" button from the bottom of the log in form.. Another simple way is adding **/sign-up** in the url.
The `App/Http/Controllers/RegisterController.php` handles the registration of a new user.
```
public function store(){
$attributes = request()->validate([
'name' => 'required|max:255|unique:users,name',
'email' => 'required|email|max:255|unique:users,email',
'password' => 'required|min:5|max:255',
]);
$user = User::create($attributes);
auth()->login($user);
return redirect('/dashboard');
}
```
### Forgot Password
If a user forgets the account's password it is possible to reset the password. For this the user should click on the "**here**" under the login form.
The `App/Http/Controllers/SessionsController.php ` takes care of sending an email to the user where he can reset the password afterwards.
```
public function show(){
request()->validate([
'email' => 'required|email',
]);
$status = Password::sendResetLink(
request()->only('email')
);
return $status === Password::RESET_LINK_SENT
? back()->with(['status' => __($status)])
: back()->withErrors(['email' => __($status)]);
}
```
### Reset Password
The user who forgot the password gets an email on the account's email address. The user can access the reset password page by clicking the button found in the email. The link for resetting the password is available for 12 hours. The user must add the email, the password and confirm the password for his password to be updated.
The `App/Http/Controllers/SessionsController.php` helps the user reset the password.
```
public function update(){
request()->validate([
'token' => 'required',
'email' => 'required|email',
'password' => 'required|min:8|confirmed',
]);
$status = Password::reset(
request()->only('email', 'password', 'password_confirmation', 'token'),
function ($user, $password) {
$user->forceFill([
'password' => ($password)
])->setRememberToken(Str::random(60));
$user->save();
event(new PasswordReset($user));
}
);
return $status === Password::PASSWORD_RESET
? redirect()->route('login')->with('status', __($status))
: back()->withErrors(['email' => [__($status)]]);
}
```
### User Profile
The profile can be accessed by a logged in user by clicking "**User Profile**" from the sidebar or adding **/user-profile** in the url. The user can add information like phone number, location, description or change the name and email.
The `App/Http/Controllers/ProfileController.php ` handles the user's profile information.
```
public function update()
{
$user = request()->user();
$attributes = request()->validate([
'email' => 'required|email|unique:users,email,'.$user->id,
'name' => 'required',
'phone' => 'required|max:10',
'about' => 'required:max:150',
'location' => 'required'
]);
auth()->user()->update($attributes);
return back()->withStatus('Profile successfully updated.');
}
```
### Dashboard
You can access the dashboard either by using the "**Dashboard**" link in the left sidebar or by adding **/dashboard** in the url after logging in.
## File Structure
```
+---app
| +---Console
| | Kernel.php
| +---Exceptions
| | Handler.php
| +---Http
| | +---Controllers
| | | Controller.php
| | | DashboardController.php
| | | ProfileController.php
| | | SessionsController.php
| | | RegisterController.php
| | |
| | +---Middleware
| | | Authenticate.php
| | | EncryptCookies.php
| | | PreventRequestsDuringMaintenance.php
| | | RedirectIfAuthenticated.php
| | | TrimStrings.php
| | | TrustHosts.php
| | | TrustProxies.php
| | | VerifyCsrfToken.php
| | |
| | \---Kernel.php
| |
| +---Models
| | User.php
| |
| \---Proviers
| AppServiceProvider.php
| AuthServiceProvider.php
| BroadcastServiceProvider.php
| EventServiceProvider.php
| RouteServiceProvider.php
|
+---database
| \---seeders
| DatabaseSeeder.php
|
\---resources
|
|
\---views
| welcome.blade.php
|
+---sessions
| | create.blade.php
| |
| \---passwords
| reset.blade.php
| verify.blade.php
|
+---components
| | layout.blade.php
| | plugins.blade.php
| |
| +---footers
| | auth.blade.php
| | guest.blade.php
| |
| \---navbars
| | sidebar.blade.php
| |
| \---navs
| auth.blade.php
| guest.blade.php
|
|
+---pages
| | billing.blade.php
| | notifications.blade.php
| | profile.blade.php
| | rtl.blade.php
| | static-sign-in.blade.php
| | static-sign-up.blade.php
| | tables.blade.php
| | virtual-reality.blade.php
| |
| \---laravel-examples
| user-management.blade.php
| user-profile.blade.php
|
+---dashboard
| index.blade.php
|
+---errors
| 401.blade.php
| 403.blade.php
| 404.blade.php
| 405.blade.php
| 419.blade.php
| 429.blade.php
| 500.blade.php
| 503.blade.php
|
\---register
create.blade.php
```
## Browser Support
At present, we officially aim to support the last two versions of the following browsers:
<img src="https://s3.amazonaws.com/creativetim_bucket/github/browser/chrome.png" width="64" height="64"> <img src="https://s3.amazonaws.com/creativetim_bucket/github/browser/firefox.png" width="64" height="64"> <img src="https://s3.amazonaws.com/creativetim_bucket/github/browser/edge.png" width="64" height="64"> <img src="https://s3.amazonaws.com/creativetim_bucket/github/browser/safari.png" width="64" height="64"> <img src="https://s3.amazonaws.com/creativetim_bucket/github/browser/opera.png" width="64" height="64">
## Reporting Issues
We use GitHub Issues as the official bug tracker for the Material Dashboard. Here are some advices for our users that want to report an issue:
1. Make sure that you are using the latest version of the Material Dashboard. Check the CHANGELOG from your dashboard on our [website](https://www.creative-tim.com/product/material-dashboard-laravel).
2. Providing us reproducible steps for the issue will shorten the time it takes for it to be fixed.
3. Some issues may be browser specific, so specifying in what browser you encountered the issue might help.
## Licensing
- Copyright 2022 [Creative Tim](https://www.creative-tim.com?ref=readme-md2l)
- Creative Tim [license](https://www.creative-tim.com/license?ref=readme-md2l)
## Useful Links
- [Tutorials](https://www.youtube.com/channel/UCVyTG4sCw-rOvB9oHkzZD1w)
- [Affiliate Program](https://www.creative-tim.com/affiliates/new) (earn money)
- [Blog Creative Tim](http://blog.creative-tim.com/)
- [Free Products](https://www.creative-tim.com/bootstrap-themes/free) from Creative Tim
- [Premium Products](https://www.creative-tim.com/bootstrap-themes/premium?ref=md2l-readme) from Creative Tim
- [React Products](https://www.creative-tim.com/bootstrap-themes/react-themes?ref=md2l-readme) from Creative Tim
- [VueJS Products](https://www.creative-tim.com/bootstrap-themes/vuejs-themes?ref=md2l-readme) from Creative Tim
- [More products](https://www.creative-tim.com/bootstrap-themes?ref=md2l-readme) from Creative Tim
- Check our Bundles [here](https://www.creative-tim.com/bundles??ref=md2l-readme)
### Social Media
### Creative Tim
Twitter: <https://twitter.com/CreativeTim?ref=md2l-readme>
Facebook: <https://www.facebook.com/CreativeTim?ref=md2l-readme>
Dribbble: <https://dribbble.com/creativetim?ref=md2l-readme>
Instagram: <https://www.instagram.com/CreativeTimOfficial?ref=md2l-readme>
### Updivision:
Twitter: <https://twitter.com/updivision?ref=md2l-readme>
Facebook: <https://www.facebook.com/updivision?ref=md2l-readme>
Linkedin: <https://www.linkedin.com/company/updivision?ref=md2l-readme>
Updivision Blog: <https://updivision.com/blog/?ref=md2l-readme>
## Credits
- [Creative Tim](https://creative-tim.com/?ref=md2l-readme)
- [UPDIVISION](https://updivision.com)
================================================
FILE: changelog.md
================================================
# Changelog
All notable changes to `Material Dashboard Laravel` frontend preset for Laravel will be documented in this file.
## Version 1.0.0
### Added
- Material Dashboard v1.0.0 frontend theme
- Laravel Auth preset
- Change user profile
- User CRUD
## Version 1.0.0 - Version 1.0.4
- Bugfixes
## Version 1.0.5
- Add link to pro theme
## Version 1.0.6 - 2019-09-23
- Update to Laravel 6.x
## Version 1.1.0 - 2020-03-18
- Update to Laravel 7.x
## Version 1.0.8 - 2020-09-21
- Update to Laravel 8.x
## Version 1.0.9 - 2022-03-25
- Update to Laravel 9.x
## Version 2.0.0 - 2022-09-27
- Update to Material Design 2
- Update Bootstrap to v5.1.3
- Add new example pages
- Add Light/Dark feature
- New Documentation version
================================================
FILE: composer.json
================================================
{
"name": "laravel-frontend-presets/material",
"description": "Laravel 10.x Front-end preset for material",
"license": "MIT",
"homepage": "https://github.com/creativetimofficial/material-dashboard-laravel",
"keywords": ["Laravel", "Preset", "Material"],
"require": {
"laravel/framework": "^10.0",
"laravel/legacy-factories": "^1.0"
},
"autoload": {
"psr-4": {
"LaravelFrontendPresets\\MaterialPreset\\": "src/"
}
},
"extra": {
"laravel": {
"providers": [
"LaravelFrontendPresets\\MaterialPreset\\MaterialPresetServiceProvider"
]
}
}
}
================================================
FILE: license.md
================================================
MIT License
Copyright (c) 2022 Creative Tim (https://www.creative-tim.com)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
================================================
FILE: src/MaterialPreset.php
================================================
<?php
namespace LaravelFrontendPresets\MaterialPreset;
use Illuminate\Filesystem\Filesystem;
use Laravel\Ui\Presets\Preset;
class MaterialPreset extends Preset
{
const STUBSPATH = __DIR__.'/material-stubs/';
/**
* Install the preset.
*
* @return void
*/
public static function install()
{
static::updateAssets();
static::updateWelcomePage();
static::updateAuthViews();
static::addComponents();
static::addPages();
}
/**
* Delete a resource
*
* @param string $resource
* @return void
*/
private static function deleteResource($resource)
{
(new Filesystem)->delete(resource_path($resource));
}
/**
* Copy a file
*
* @param string $file
* @param string $destination
* @return void
*/
private static function copyFile($file, $destination)
{
(new Filesystem)->copy(static::STUBSPATH.$file, $destination);
}
/**
* Copy a directory
*
* @param string $directory
* @param string $destination
* @return void
*/
private static function copyDirectory($directory, $destination)
{
(new Filesystem)->copyDirectory(static::STUBSPATH.$directory, $destination);
}
/**
* Update the assets
*
* @return void
*/
protected static function updateAssets()
{
// public assets
static::copyDirectory('resources/material', public_path());
// js, css in resources
static::copyDirectory('resources/assets', app_path('../resources'));
static::copyFile('webpack.mix.js', app_path('../webpack.mix.js'));
}
/**
* Update the default welcome page file.
*
* @return void
*/
protected static function updateWelcomePage()
{
// remove default welcome page
static::deleteResource(('views/welcome.blade.php'));
// copy new one from your stubs folder
static::copyFile('resources/views/welcome.blade.php', resource_path('views/welcome.blade.php'));
}
/**
* Update the default layout files
*
* @return void
*/
protected static function addComponents()
{
// copy new one from your stubs folder
static::copyDirectory('resources/views/components', resource_path('views/components'));
}
/**
* Copy Auth view templates.
*
* @return void
*/
protected static function updateAuthViews()
{
// Add auth controllers
static::copyFile('app/Models/User.php', app_path('Models/User.php'));
static::copyFile('app/Http/Controllers/DashboardController.php', app_path('Http/Controllers/DashboardController.php'));
static::copyFile('app/Http/Controllers/ProfileController.php', app_path('Http/Controllers/ProfileController.php'));
static::copyFile('app/Http/Controllers/RegisterController.php', app_path('Http/Controllers/RegisterController.php'));
static::copyFile('app/Http/Controllers/SessionsController.php', app_path('Http/Controllers/SessionsController.php'));
// Add Auth routes in 'routes/web.php'
file_put_contents(
'./routes/web.php',
"\nuse App\Http\Controllers\DashboardController;\nuse App\Http\Controllers\ProfileController;\nuse App\Http\Controllers\RegisterController;\nuse App\Http\Controllers\SessionsController;
\n\nRoute::get('/', function () {return redirect('sign-in');})->middleware('guest');\nRoute::get('/dashboard', [DashboardController::class, 'index'])->middleware('auth')->name('dashboard');\nRoute::get('sign-up', [RegisterController::class, 'create'])->middleware('guest')->name('register');\nRoute::post('sign-up', [RegisterController::class, 'store'])->middleware('guest');\nRoute::get('sign-in', [SessionsController::class, 'create'])->middleware('guest')->name('login');\nRoute::post('sign-in', [SessionsController::class, 'store'])->middleware('guest');\nRoute::post('verify', [SessionsController::class, 'show'])->middleware('guest');\nRoute::post('reset-password', [SessionsController::class, 'update'])->middleware('guest')->name('password.update');\nRoute::get('verify', function () {\n\treturn view('sessions.password.verify');\n})->middleware('guest')->name('verify'); \nRoute::get('/reset-password/{token}', function ("."$"."token) {\n\treturn view('sessions.password.reset', ['token' => "."$"."token]);\n})->middleware('guest')->name('password.reset');",
FILE_APPEND
);
// Copy argon auth views from the stubs folder
static::copyDirectory('resources/views/register', resource_path('views/register'));
static::copyDirectory('resources/views/sessions', resource_path('views/sessions'));
static::copyDirectory('resources/views/dashboard', resource_path('views/dashboard'));
}
/**
* Copy user management and profile edit files
*
* @return void
*/
public static function addPages()
{
// Add seeder, controllers, requests and rules
// migrations shoudl be deleted
static::copyDirectory('migrations', app_path('../database/migrations'));
static::copyDirectory('database/seeders', app_path('../database/seeders'));
// Add routes
file_put_contents(
'./routes/web.php',
"\n\nRoute::post('sign-out', [SessionsController::class, 'destroy'])->middleware('auth')->name('logout');\nRoute::get('profile', [ProfileController::class, 'create'])->middleware('auth')->name('profile');\nRoute::post('user-profile', [ProfileController::class, 'update'])->middleware('auth');\nRoute::group(['middleware' => 'auth'], function () {\n\tRoute::get('billing', function () {\n\t\treturn view('pages.billing');\n\t})->name('billing');\n\tRoute::get('tables', function () {\n\t\treturn view('pages.tables');\n\t})->name('tables');\n\tRoute::get('rtl', function () {\n\t\treturn view('pages.rtl');\n\t})->name('rtl');\n\tRoute::get('virtual-reality', function () {\n\t\treturn view('pages.virtual-reality');\n\t})->name('virtual-reality');\n\tRoute::get('notifications', function () {\n\t\treturn view('pages.notifications');\n\t})->name('notifications');\n\tRoute::get('static-sign-in', function () {\n\t\treturn view('pages.static-sign-in');\n\t})->name('static-sign-in');\n\tRoute::get('static-sign-up', function () {\n\t\treturn view('pages.static-sign-up');\n\t})->name('static-sign-up');\n\tRoute::get('user-management', function () {\n\t\treturn view('pages.laravel-examples.user-management');\n\t})->name('user-management');\n\tRoute::get('user-profile', function () {\n\t\treturn view('pages.laravel-examples.user-profile');\n\t})->name('user-profile');\n});",
FILE_APPEND
);
// Copy pages
static::copyDirectory('resources/views/pages', resource_path('views/pages'));
}
}
================================================
FILE: src/MaterialPresetServiceProvider.php
================================================
<?php
namespace LaravelFrontendPresets\MaterialPreset;
use Illuminate\Support\ServiceProvider;
use Laravel\Ui\UiCommand;
class MaterialPresetServiceProvider extends ServiceProvider
{
/**
* Perform post-registration booting of services.
*
* @return void
*/
public function boot()
{
UiCommand::macro('material', function ($command) {
MaterialPreset::install();
$command->info('Material scaffolding installed successfully.');
});
}
/**
* Register any package services.
*
* @return void
*/
public function register()
{
//
}
}
================================================
FILE: src/material-stubs/app/Console/Kernel.php
================================================
<?php
namespace App\Console;
use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;
class Kernel extends ConsoleKernel
{
/**
* The Artisan commands provided by your application.
*
* @var array
*/
protected $commands = [
//
];
/**
* Define the application's command schedule.
*
* @param \Illuminate\Console\Scheduling\Schedule $schedule
* @return void
*/
protected function schedule(Schedule $schedule)
{
// $schedule->command('inspire')->hourly();
}
/**
* Register the commands for the application.
*
* @return void
*/
protected function commands()
{
$this->load(__DIR__.'/Commands');
require base_path('routes/console.php');
}
}
================================================
FILE: src/material-stubs/app/Exceptions/Handler.php
================================================
<?php
namespace App\Exceptions;
use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
use Throwable;
class Handler extends ExceptionHandler
{
/**
* A list of the exception types that are not reported.
*
* @var string[]
*/
protected $dontReport = [
//
];
/**
* A list of the inputs that are never flashed for validation exceptions.
*
* @var string[]
*/
protected $dontFlash = [
'current_password',
'password',
'password_confirmation',
];
/**
* Register the exception handling callbacks for the application.
*
* @return void
*/
public function register()
{
$this->reportable(function (Throwable $e) {
//
});
}
}
================================================
FILE: src/material-stubs/app/Http/Controllers/Controller.php
================================================
<?php
namespace App\Http\Controllers;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Routing\Controller as BaseController;
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
}
================================================
FILE: src/material-stubs/app/Http/Controllers/DashboardController.php
================================================
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class DashboardController extends Controller
{
public function index()
{
return view('dashboard.index');
}
}
================================================
FILE: src/material-stubs/app/Http/Controllers/ProfileController.php
================================================
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class ProfileController extends Controller
{
public function create()
{
return view('pages.profile');
}
public function update()
{
$user = request()->user();
$attributes = request()->validate([
'email' => 'required|email|unique:users,email,'.$user->id,
'name' => 'required',
'phone' => 'required|max:10',
'about' => 'required:max:150',
'location' => 'required'
]);
auth()->user()->update($attributes);
return back()->withStatus('Profile successfully updated.');
}
}
================================================
FILE: src/material-stubs/app/Http/Controllers/RegisterController.php
================================================
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\User;
class RegisterController extends Controller
{
public function create()
{
return view('register.create');
}
public function store(){
$attributes = request()->validate([
'name' => 'required|max:255',
'email' => 'required|email|max:255|unique:users,email',
'password' => 'required|min:5|max:255',
]);
$user = User::create($attributes);
auth()->login($user);
return redirect('/dashboard');
}
}
================================================
FILE: src/material-stubs/app/Http/Controllers/SessionsController.php
================================================
<?php
namespace App\Http\Controllers;
Use Str;
Use Hash;
use Illuminate\Auth\Events\PasswordReset;
use App\Models\User;
use Illuminate\Http\Request;
use Illuminate\Validation\ValidationException;
use Illuminate\Support\Facades\Password;
class SessionsController extends Controller
{
public function create()
{
return view('sessions.create');
}
public function store()
{
$attributes = request()->validate([
'email' => 'required|email',
'password' => 'required'
]);
if (! auth()->attempt($attributes)) {
throw ValidationException::withMessages([
'email' => 'Your provided credentials could not be verified.'
]);
}
session()->regenerate();
return redirect('/dashboard');
}
public function show(){
request()->validate([
'email' => 'required|email',
]);
$status = Password::sendResetLink(
request()->only('email')
);
return $status === Password::RESET_LINK_SENT
? back()->with(['status' => __($status)])
: back()->withErrors(['email' => __($status)]);
}
public function update(){
request()->validate([
'token' => 'required',
'email' => 'required|email',
'password' => 'required|min:8|confirmed',
]);
$status = Password::reset(
request()->only('email', 'password', 'password_confirmation', 'token'),
function ($user, $password) {
$user->forceFill([
'password' => ($password)
])->setRememberToken(Str::random(60));
$user->save();
event(new PasswordReset($user));
}
);
return $status === Password::PASSWORD_RESET
? redirect()->route('login')->with('status', __($status))
: back()->withErrors(['email' => [__($status)]]);
}
public function destroy()
{
auth()->logout();
return redirect('/sign-in');
}
}
================================================
FILE: src/material-stubs/app/Http/Kernel.php
================================================
<?php
namespace App\Http;
use Illuminate\Foundation\Http\Kernel as HttpKernel;
class Kernel extends HttpKernel
{
/**
* The application's global HTTP middleware stack.
*
* These middleware are run during every request to your application.
*
* @var array
*/
protected $middleware = [
// \App\Http\Middleware\TrustHosts::class,
\App\Http\Middleware\TrustProxies::class,
\Fruitcake\Cors\HandleCors::class,
\App\Http\Middleware\PreventRequestsDuringMaintenance::class,
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
\App\Http\Middleware\TrimStrings::class,
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
];
/**
* The application's route middleware groups.
*
* @var array
*/
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
// \Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
'api' => [
// \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
'throttle:api',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
];
/**
* The application's route middleware.
*
* These middleware may be assigned to groups or used individually.
*
* @var array
*/
protected $routeMiddleware = [
'auth' => \App\Http\Middleware\Authenticate::class,
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
'can' => \Illuminate\Auth\Middleware\Authorize::class,
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
'password.confirm' => \Illuminate\Auth\Middleware\RequirePassword::class,
'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
];
}
================================================
FILE: src/material-stubs/app/Http/Middleware/Authenticate.php
================================================
<?php
namespace App\Http\Middleware;
use Illuminate\Auth\Middleware\Authenticate as Middleware;
class Authenticate extends Middleware
{
/**
* Get the path the user should be redirected to when they are not authenticated.
*
* @param \Illuminate\Http\Request $request
* @return string|null
*/
protected function redirectTo($request)
{
if (! $request->expectsJson()) {
return route('login');
}
}
}
================================================
FILE: src/material-stubs/app/Http/Middleware/EncryptCookies.php
================================================
<?php
namespace App\Http\Middleware;
use Illuminate\Cookie\Middleware\EncryptCookies as Middleware;
class EncryptCookies extends Middleware
{
/**
* The names of the cookies that should not be encrypted.
*
* @var array
*/
protected $except = [
//
];
}
================================================
FILE: src/material-stubs/app/Http/Middleware/PreventRequestsDuringMaintenance.php
================================================
<?php
namespace App\Http\Middleware;
use Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance as Middleware;
class PreventRequestsDuringMaintenance extends Middleware
{
/**
* The URIs that should be reachable while maintenance mode is enabled.
*
* @var array
*/
protected $except = [
//
];
}
================================================
FILE: src/material-stubs/app/Http/Middleware/RedirectIfAuthenticated.php
================================================
<?php
namespace App\Http\Middleware;
use App\Providers\RouteServiceProvider;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
class RedirectIfAuthenticated
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @param string|null ...$guards
* @return mixed
*/
public function handle(Request $request, Closure $next, ...$guards)
{
$guards = empty($guards) ? [null] : $guards;
foreach ($guards as $guard) {
if (Auth::guard($guard)->check()) {
return redirect(RouteServiceProvider::HOME);
}
}
return $next($request);
}
}
================================================
FILE: src/material-stubs/app/Http/Middleware/TrimStrings.php
================================================
<?php
namespace App\Http\Middleware;
use Illuminate\Foundation\Http\Middleware\TrimStrings as Middleware;
class TrimStrings extends Middleware
{
/**
* The names of the attributes that should not be trimmed.
*
* @var array
*/
protected $except = [
'current_password',
'password',
'password_confirmation',
];
}
================================================
FILE: src/material-stubs/app/Http/Middleware/TrustHosts.php
================================================
<?php
namespace App\Http\Middleware;
use Illuminate\Http\Middleware\TrustHosts as Middleware;
class TrustHosts extends Middleware
{
/**
* Get the host patterns that should be trusted.
*
* @return array
*/
public function hosts()
{
return [
$this->allSubdomainsOfApplicationUrl(),
];
}
}
================================================
FILE: src/material-stubs/app/Http/Middleware/TrustProxies.php
================================================
<?php
namespace App\Http\Middleware;
use Illuminate\Http\Middleware\TrustProxies as Middleware;
use Illuminate\Http\Request;
class TrustProxies extends Middleware
{
/**
* The trusted proxies for this application.
*
* @var array|string|null
*/
protected $proxies;
/**
* The headers that should be used to detect proxies.
*
* @var int
*/
protected $headers =
Request::HEADER_X_FORWARDED_FOR |
Request::HEADER_X_FORWARDED_HOST |
Request::HEADER_X_FORWARDED_PORT |
Request::HEADER_X_FORWARDED_PROTO |
Request::HEADER_X_FORWARDED_AWS_ELB;
}
================================================
FILE: src/material-stubs/app/Http/Middleware/VerifyCsrfToken.php
================================================
<?php
namespace App\Http\Middleware;
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware;
class VerifyCsrfToken extends Middleware
{
/**
* The URIs that should be excluded from CSRF verification.
*
* @var array
*/
protected $except = [
//
];
}
================================================
FILE: src/material-stubs/app/Models/User.php
================================================
<?php
namespace App\Models;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Laravel\Sanctum\HasApiTokens;
use Illuminate\Contracts\Auth\CanResetPassword;
class User extends Authenticatable
{
use HasApiTokens, HasFactory, Notifiable;
/**
* The attributes that are mass assignable.
*
* @var string[]
*/
protected $fillable = [
'name',
'email',
'password',
'location',
'phone',
'about',
'password_confirmation'
];
/**
* The attributes that should be hidden for serialization.
*
* @var array
*/
protected $hidden = [
'password',
'remember_token',
];
/**
* The attributes that should be cast.
*
* @var array
*/
protected $casts = [
'email_verified_at' => 'datetime',
];
public function setPasswordAttribute($password)
{
$this->attributes['password'] = bcrypt($password);
}
}
================================================
FILE: src/material-stubs/app/Providers/AppServiceProvider.php
================================================
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
class AppServiceProvider extends ServiceProvider
{
/**
* Register any application services.
*
* @return void
*/
public function register()
{
//
}
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
//
}
}
================================================
FILE: src/material-stubs/app/Providers/AuthServiceProvider.php
================================================
<?php
namespace App\Providers;
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
use Illuminate\Support\Facades\Gate;
class AuthServiceProvider extends ServiceProvider
{
/**
* The policy mappings for the application.
*
* @var array
*/
protected $policies = [
// 'App\Models\Model' => 'App\Policies\ModelPolicy',
];
/**
* Register any authentication / authorization services.
*
* @return void
*/
public function boot()
{
$this->registerPolicies();
//
}
}
================================================
FILE: src/material-stubs/app/Providers/BroadcastServiceProvider.php
================================================
<?php
namespace App\Providers;
use Illuminate\Support\Facades\Broadcast;
use Illuminate\Support\ServiceProvider;
class BroadcastServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
Broadcast::routes();
require base_path('routes/channels.php');
}
}
================================================
FILE: src/material-stubs/app/Providers/EventServiceProvider.php
================================================
<?php
namespace App\Providers;
use Illuminate\Auth\Events\Registered;
use Illuminate\Auth\Listeners\SendEmailVerificationNotification;
use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider;
use Illuminate\Support\Facades\Event;
class EventServiceProvider extends ServiceProvider
{
/**
* The event listener mappings for the application.
*
* @var array
*/
protected $listen = [
Registered::class => [
SendEmailVerificationNotification::class,
],
];
/**
* Register any events for your application.
*
* @return void
*/
public function boot()
{
//
}
}
================================================
FILE: src/material-stubs/app/Providers/RouteServiceProvider.php
================================================
<?php
namespace App\Providers;
use Illuminate\Cache\RateLimiting\Limit;
use Illuminate\Foundation\Support\Providers\RouteServiceProvider as ServiceProvider;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\RateLimiter;
use Illuminate\Support\Facades\Route;
class RouteServiceProvider extends ServiceProvider
{
/**
* The path to the "home" route for your application.
*
* This is used by Laravel authentication to redirect users after login.
*
* @var string
*/
public const HOME = '/dashboard';
/**
* The controller namespace for the application.
*
* When present, controller route declarations will automatically be prefixed with this namespace.
*
* @var string|null
*/
// protected $namespace = 'App\\Http\\Controllers';
/**
* Define your route model bindings, pattern filters, etc.
*
* @return void
*/
public function boot()
{
$this->configureRateLimiting();
$this->routes(function () {
Route::prefix('api')
->middleware('api')
->namespace($this->namespace)
->group(base_path('routes/api.php'));
Route::middleware('web')
->namespace($this->namespace)
->group(base_path('routes/web.php'));
});
}
/**
* Configure the rate limiters for the application.
*
* @return void
*/
protected function configureRateLimiting()
{
RateLimiter::for('api', function (Request $request) {
return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip());
});
}
}
================================================
FILE: src/material-stubs/database/seeders/DatabaseSeeder.php
================================================
<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
use App\Models\User;
class DatabaseSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
User::factory()->create([
'name' => 'Admin',
'email' => 'admin@material.com',
'password' => ('secret')
]);
}
}
================================================
FILE: src/material-stubs/migrations/2014_10_12_000000_create_users_table.php
================================================
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateUsersTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
$table->string('phone')->nullable();
$table->string('location')->nullable();
$table->text('about')->nullable();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('users');
}
}
================================================
FILE: src/material-stubs/resources/assets/css/material-dashboard.css
================================================
/*!
* Bootstrap v5.1.3 (https://getbootstrap.com/)
* Copyright 2011-2021 The Bootstrap Authors
* Copyright 2011-2021 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/
:root {
--bs-blue: #63B3ED;
--bs-indigo: #596CFF;
--bs-purple: #6f42c1;
--bs-pink: #d63384;
--bs-red: #F56565;
--bs-orange: #fd7e14;
--bs-yellow: #FBD38D;
--bs-green: #81E6D9;
--bs-teal: #20c997;
--bs-cyan: #0dcaf0;
--bs-white: #fff;
--bs-gray: #6c757d;
--bs-gray-dark: #343a40;
--bs-gray-100: #f8f9fa;
--bs-gray-200: #f0f2f5;
--bs-gray-300: #dee2e6;
--bs-gray-400: #ced4da;
--bs-gray-500: #adb5bd;
--bs-gray-600: #6c757d;
--bs-gray-700: #495057;
--bs-gray-800: #343a40;
--bs-gray-900: #212529;
--bs-primary: #e91e63;
--bs-secondary: #7b809a;
--bs-success: #4CAF50;
--bs-info: #1A73E8;
--bs-warning: #fb8c00;
--bs-danger: #F44335;
--bs-light: #f0f2f5;
--bs-dark: #344767;
--bs-white: #fff;
--bs-primary-rgb: 233, 30, 99;
--bs-secondary-rgb: 123, 128, 154;
--bs-success-rgb: 76, 175, 80;
--bs-info-rgb: 26, 115, 232;
--bs-warning-rgb: 251, 140, 0;
--bs-danger-rgb: 244, 67, 53;
--bs-light-rgb: 240, 242, 245;
--bs-dark-rgb: 52, 71, 103;
--bs-white-rgb: 255, 255, 255;
--bs-white-rgb: 255, 255, 255;
--bs-black-rgb: 0, 0, 0;
--bs-body-color-rgb: 123, 128, 154;
--bs-body-bg-rgb: 255, 255, 255;
--bs-font-sans-serif: "Roboto", Helvetica, Arial, sans-serif;
--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
--bs-body-font-family: var(--bs-font-sans-serif);
--bs-body-font-size: 1rem;
--bs-body-font-weight: 400;
--bs-body-line-height: 1.5;
--bs-body-color: #7b809a;
--bs-body-bg: #fff; }
*,
*::before,
*::after {
box-sizing: border-box; }
@media (prefers-reduced-motion: no-preference) {
:root {
scroll-behavior: smooth; } }
body {
margin: 0;
font-family: var(--bs-body-font-family);
font-size: var(--bs-body-font-size);
font-weight: var(--bs-body-font-weight);
line-height: var(--bs-body-line-height);
color: var(--bs-body-color);
text-align: var(--bs-body-text-align);
background-color: var(--bs-body-bg);
-webkit-text-size-adjust: 100%;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
hr {
margin: 1rem 0;
color: inherit;
background-color: currentColor;
border: 0;
opacity: 0.25; }
hr:not([size]) {
height: 1px; }
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
margin-top: 0;
margin-bottom: 0.5rem;
font-weight: 400;
line-height: 1.2;
color: #344767; }
h1, .h1 {
font-size: calc(1.425rem + 2.1vw); }
@media (min-width: 1200px) {
h1, .h1 {
font-size: 3rem; } }
h2, .h2 {
font-size: calc(1.35rem + 1.2vw); }
@media (min-width: 1200px) {
h2, .h2 {
font-size: 2.25rem; } }
h3, .h3 {
font-size: calc(1.3125rem + 0.75vw); }
@media (min-width: 1200px) {
h3, .h3 {
font-size: 1.875rem; } }
h4, .h4 {
font-size: calc(1.275rem + 0.3vw); }
@media (min-width: 1200px) {
h4, .h4 {
font-size: 1.5rem; } }
h5, .h5 {
font-size: 1.25rem; }
h6, .h6 {
font-size: 1rem; }
p {
margin-top: 0;
margin-bottom: 1rem; }
abbr[title],
abbr[data-bs-original-title] {
-webkit-text-decoration: underline dotted;
text-decoration: underline dotted;
cursor: help;
-webkit-text-decoration-skip-ink: none;
text-decoration-skip-ink: none; }
address {
margin-bottom: 1rem;
font-style: normal;
line-height: inherit; }
ol,
ul {
padding-left: 2rem; }
ol,
ul,
dl {
margin-top: 0;
margin-bottom: 1rem; }
ol ol,
ul ul,
ol ul,
ul ol {
margin-bottom: 0; }
dt {
font-weight: 600; }
dd {
margin-bottom: .5rem;
margin-left: 0; }
blockquote {
margin: 0 0 1rem; }
b,
strong {
font-weight: 700; }
small, .small {
font-size: 0.875em; }
mark, .mark {
padding: 0.2em;
background-color: #fcf8e3; }
sub,
sup {
position: relative;
font-size: 0.75em;
line-height: 0;
vertical-align: baseline; }
sub {
bottom: -.25em; }
sup {
top: -.5em; }
a {
color: #e91e63;
text-decoration: none; }
a:hover {
color: #e91e63;
text-decoration: none; }
a:not([href]):not([class]), a:not([href]):not([class]):hover {
color: inherit;
text-decoration: none; }
pre,
code,
kbd,
samp {
font-family: var(--bs-font-monospace);
font-size: 1em;
direction: ltr /* rtl:ignore */;
unicode-bidi: bidi-override; }
pre {
display: block;
margin-top: 0;
margin-bottom: 1rem;
overflow: auto;
font-size: 0.875em; }
pre code {
font-size: inherit;
color: inherit;
word-break: normal; }
code {
font-size: 0.875em;
color: #d63384;
word-wrap: break-word; }
a > code {
color: inherit; }
kbd {
padding: 0.2rem 0.4rem;
font-size: 0.875em;
color: #fff;
background-color: #212529;
border-radius: 0.125rem; }
kbd kbd {
padding: 0;
font-size: 1em;
font-weight: 600; }
figure {
margin: 0 0 1rem; }
img,
svg {
vertical-align: middle; }
table {
caption-side: bottom;
border-collapse: collapse; }
caption {
padding-top: 0.5rem;
padding-bottom: 0.5rem;
color: #6c757d;
text-align: left; }
th {
text-align: inherit;
text-align: -webkit-match-parent; }
thead,
tbody,
tfoot,
tr,
td,
th {
border-color: inherit;
border-style: solid;
border-width: 0; }
label {
display: inline-block; }
button {
border-radius: 0; }
button:focus:not(:focus-visible) {
outline: 0; }
input,
button,
select,
optgroup,
textarea {
margin: 0;
font-family: inherit;
font-size: inherit;
line-height: inherit; }
button,
select {
text-transform: none; }
[role="button"] {
cursor: pointer; }
select {
word-wrap: normal; }
select:disabled {
opacity: 1; }
[list]::-webkit-calendar-picker-indicator {
display: none; }
button,
[type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button; }
button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
cursor: pointer; }
::-moz-focus-inner {
padding: 0;
border-style: none; }
textarea {
resize: vertical; }
fieldset {
min-width: 0;
padding: 0;
margin: 0;
border: 0; }
legend {
float: left;
width: 100%;
padding: 0;
margin-bottom: 0.5rem;
font-size: calc(1.275rem + 0.3vw);
line-height: inherit; }
@media (min-width: 1200px) {
legend {
font-size: 1.5rem; } }
legend + * {
clear: left; }
::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
padding: 0; }
::-webkit-inner-spin-button {
height: auto; }
[type="search"] {
outline-offset: -2px;
-webkit-appearance: textfield; }
/* rtl:raw:
[type="tel"],
[type="url"],
[type="email"],
[type="number"] {
direction: ltr;
}
*/
::-webkit-search-decoration {
-webkit-appearance: none; }
::-webkit-color-swatch-wrapper {
padding: 0; }
::file-selector-button {
font: inherit; }
::-webkit-file-upload-button {
font: inherit;
-webkit-appearance: button; }
output {
display: inline-block; }
iframe {
border: 0; }
summary {
display: list-item;
cursor: pointer; }
progress {
vertical-align: baseline; }
[hidden] {
display: none !important; }
.lead {
font-size: 1.25rem;
font-weight: 400; }
.display-1 {
font-size: calc(1.625rem + 4.5vw);
font-weight: 300;
line-height: 1.2; }
@media (min-width: 1200px) {
.display-1 {
font-size: 5rem; } }
.display-2 {
font-size: calc(1.575rem + 3.9vw);
font-weight: 300;
line-height: 1.2; }
@media (min-width: 1200px) {
.display-2 {
font-size: 4.5rem; } }
.display-3 {
font-size: calc(1.525rem + 3.3vw);
font-weight: 300;
line-height: 1.2; }
@media (min-width: 1200px) {
.display-3 {
font-size: 4rem; } }
.display-4 {
font-size: calc(1.475rem + 2.7vw);
font-weight: 300;
line-height: 1.2; }
@media (min-width: 1200px) {
.display-4 {
font-size: 3.5rem; } }
.display-5 {
font-size: calc(1.425rem + 2.1vw);
font-weight: 300;
line-height: 1.2; }
@media (min-width: 1200px) {
.display-5 {
font-size: 3rem; } }
.display-6 {
font-size: calc(1.375rem + 1.5vw);
font-weight: 300;
line-height: 1.2; }
@media (min-width: 1200px) {
.display-6 {
font-size: 2.5rem; } }
.list-unstyled {
padding-left: 0;
list-style: none; }
.list-inline {
padding-left: 0;
list-style: none; }
.list-inline-item {
display: inline-block; }
.list-inline-item:not(:last-child) {
margin-right: 0.5rem; }
.initialism {
font-size: 0.875em;
text-transform: uppercase; }
.blockquote {
margin-bottom: 1rem;
font-size: 1.25rem; }
.blockquote > :last-child {
margin-bottom: 0; }
.blockquote-footer {
margin-top: -1rem;
margin-bottom: 1rem;
font-size: 0.875em;
color: #6c757d; }
.blockquote-footer::before {
content: "\2014\00A0"; }
.img-fluid {
max-width: 100%;
height: auto; }
.img-thumbnail {
padding: 0.25rem;
background-color: #fff;
border: 1px solid #dee2e6;
border-radius: 0.375rem;
max-width: 100%;
height: auto; }
.figure {
display: inline-block; }
.figure-img {
margin-bottom: 0.5rem;
line-height: 1; }
.figure-caption {
font-size: 0.875em;
color: #6c757d; }
.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl {
width: 100%;
padding-right: var(--bs-gutter-x, 1.5rem);
padding-left: var(--bs-gutter-x, 1.5rem);
margin-right: auto;
margin-left: auto; }
@media (min-width: 576px) {
.container, .container-sm {
max-width: 540px; } }
@media (min-width: 768px) {
.container, .container-sm, .container-md {
max-width: 720px; } }
@media (min-width: 992px) {
.container, .container-sm, .container-md, .container-lg {
max-width: 960px; } }
@media (min-width: 1200px) {
.container, .container-sm, .container-md, .container-lg, .container-xl {
max-width: 1140px; } }
@media (min-width: 1400px) {
.container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
max-width: 1320px; } }
.row {
--bs-gutter-x: 1.5rem;
--bs-gutter-y: 0;
display: flex;
flex-wrap: wrap;
margin-top: calc(-1 * var(--bs-gutter-y));
margin-right: calc(-.5 * var(--bs-gutter-x));
margin-left: calc(-.5 * var(--bs-gutter-x)); }
.row > * {
flex-shrink: 0;
width: 100%;
max-width: 100%;
padding-right: calc(var(--bs-gutter-x) * .5);
padding-left: calc(var(--bs-gutter-x) * .5);
margin-top: var(--bs-gutter-y); }
.col {
flex: 1 0 0%; }
.row-cols-auto > * {
flex: 0 0 auto;
width: auto; }
.row-cols-1 > * {
flex: 0 0 auto;
width: 100%; }
.row-cols-2 > * {
flex: 0 0 auto;
width: 50%; }
.row-cols-3 > * {
flex: 0 0 auto;
width: 33.33333%; }
.row-cols-4 > * {
flex: 0 0 auto;
width: 25%; }
.row-cols-5 > * {
flex: 0 0 auto;
width: 20%; }
.row-cols-6 > * {
flex: 0 0 auto;
width: 16.66667%; }
.col-auto {
flex: 0 0 auto;
width: auto; }
.col-1 {
flex: 0 0 auto;
width: 8.33333%; }
.col-2 {
flex: 0 0 auto;
width: 16.66667%; }
.col-3 {
flex: 0 0 auto;
width: 25%; }
.col-4 {
flex: 0 0 auto;
width: 33.33333%; }
.col-5 {
flex: 0 0 auto;
width: 41.66667%; }
.col-6 {
flex: 0 0 auto;
width: 50%; }
.col-7 {
flex: 0 0 auto;
width: 58.33333%; }
.col-8 {
flex: 0 0 auto;
width: 66.66667%; }
.col-9 {
flex: 0 0 auto;
width: 75%; }
.col-10 {
flex: 0 0 auto;
width: 83.33333%; }
.col-11 {
flex: 0 0 auto;
width: 91.66667%; }
.col-12 {
flex: 0 0 auto;
width: 100%; }
.offset-1 {
margin-left: 8.33333%; }
.offset-2 {
margin-left: 16.66667%; }
.offset-3 {
margin-left: 25%; }
.offset-4 {
margin-left: 33.33333%; }
.offset-5 {
margin-left: 41.66667%; }
.offset-6 {
margin-left: 50%; }
.offset-7 {
margin-left: 58.33333%; }
.offset-8 {
margin-left: 66.66667%; }
.offset-9 {
margin-left: 75%; }
.offset-10 {
margin-left: 83.33333%; }
.offset-11 {
margin-left: 91.66667%; }
.g-0,
.gx-0 {
--bs-gutter-x: 0; }
.g-0,
.gy-0 {
--bs-gutter-y: 0; }
.g-1,
.gx-1 {
--bs-gutter-x: 0.25rem; }
.g-1,
.gy-1 {
--bs-gutter-y: 0.25rem; }
.g-2,
.gx-2 {
--bs-gutter-x: 0.5rem; }
.g-2,
.gy-2 {
--bs-gutter-y: 0.5rem; }
.g-3,
.gx-3 {
--bs-gutter-x: 1rem; }
.g-3,
.gy-3 {
--bs-gutter-y: 1rem; }
.g-4,
.gx-4 {
--bs-gutter-x: 1.5rem; }
.g-4,
.gy-4 {
--bs-gutter-y: 1.5rem; }
.g-5,
.gx-5 {
--bs-gutter-x: 3rem; }
.g-5,
.gy-5 {
--bs-gutter-y: 3rem; }
.g-6,
.gx-6 {
--bs-gutter-x: 4rem; }
.g-6,
.gy-6 {
--bs-gutter-y: 4rem; }
.g-7,
.gx-7 {
--bs-gutter-x: 6rem; }
.g-7,
.gy-7 {
--bs-gutter-y: 6rem; }
.g-8,
.gx-8 {
--bs-gutter-x: 8rem; }
.g-8,
.gy-8 {
--bs-gutter-y: 8rem; }
.g-9,
.gx-9 {
--bs-gutter-x: 10rem; }
.g-9,
.gy-9 {
--bs-gutter-y: 10rem; }
.g-10,
.gx-10 {
--bs-gutter-x: 12rem; }
.g-10,
.gy-10 {
--bs-gutter-y: 12rem; }
.g-11,
.gx-11 {
--bs-gutter-x: 14rem; }
.g-11,
.gy-11 {
--bs-gutter-y: 14rem; }
.g-12,
.gx-12 {
--bs-gutter-x: 16rem; }
.g-12,
.gy-12 {
--bs-gutter-y: 16rem; }
@media (min-width: 576px) {
.col-sm {
flex: 1 0 0%; }
.row-cols-sm-auto > * {
flex: 0 0 auto;
width: auto; }
.row-cols-sm-1 > * {
flex: 0 0 auto;
width: 100%; }
.row-cols-sm-2 > * {
flex: 0 0 auto;
width: 50%; }
.row-cols-sm-3 > * {
flex: 0 0 auto;
width: 33.33333%; }
.row-cols-sm-4 > * {
flex: 0 0 auto;
width: 25%; }
.row-cols-sm-5 > * {
flex: 0 0 auto;
width: 20%; }
.row-cols-sm-6 > * {
flex: 0 0 auto;
width: 16.66667%; }
.col-sm-auto {
flex: 0 0 auto;
width: auto; }
.col-sm-1 {
flex: 0 0 auto;
width: 8.33333%; }
.col-sm-2 {
flex: 0 0 auto;
width: 16.66667%; }
.col-sm-3 {
flex: 0 0 auto;
width: 25%; }
.col-sm-4 {
flex: 0 0 auto;
width: 33.33333%; }
.col-sm-5 {
flex: 0 0 auto;
width: 41.66667%; }
.col-sm-6 {
flex: 0 0 auto;
width: 50%; }
.col-sm-7 {
flex: 0 0 auto;
width: 58.33333%; }
.col-sm-8 {
flex: 0 0 auto;
width: 66.66667%; }
.col-sm-9 {
flex: 0 0 auto;
width: 75%; }
.col-sm-10 {
flex: 0 0 auto;
width: 83.33333%; }
.col-sm-11 {
flex: 0 0 auto;
width: 91.66667%; }
.col-sm-12 {
flex: 0 0 auto;
width: 100%; }
.offset-sm-0 {
margin-left: 0; }
.offset-sm-1 {
margin-left: 8.33333%; }
.offset-sm-2 {
margin-left: 16.66667%; }
.offset-sm-3 {
margin-left: 25%; }
.offset-sm-4 {
margin-left: 33.33333%; }
.offset-sm-5 {
margin-left: 41.66667%; }
.offset-sm-6 {
margin-left: 50%; }
.offset-sm-7 {
margin-left: 58.33333%; }
.offset-sm-8 {
margin-left: 66.66667%; }
.offset-sm-9 {
margin-left: 75%; }
.offset-sm-10 {
margin-left: 83.33333%; }
.offset-sm-11 {
margin-left: 91.66667%; }
.g-sm-0,
.gx-sm-0 {
--bs-gutter-x: 0; }
.g-sm-0,
.gy-sm-0 {
--bs-gutter-y: 0; }
.g-sm-1,
.gx-sm-1 {
--bs-gutter-x: 0.25rem; }
.g-sm-1,
.gy-sm-1 {
--bs-gutter-y: 0.25rem; }
.g-sm-2,
.gx-sm-2 {
--bs-gutter-x: 0.5rem; }
.g-sm-2,
.gy-sm-2 {
--bs-gutter-y: 0.5rem; }
.g-sm-3,
.gx-sm-3 {
--bs-gutter-x: 1rem; }
.g-sm-3,
.gy-sm-3 {
--bs-gutter-y: 1rem; }
.g-sm-4,
.gx-sm-4 {
--bs-gutter-x: 1.5rem; }
.g-sm-4,
.gy-sm-4 {
--bs-gutter-y: 1.5rem; }
.g-sm-5,
.gx-sm-5 {
--bs-gutter-x: 3rem; }
.g-sm-5,
.gy-sm-5 {
--bs-gutter-y: 3rem; }
.g-sm-6,
.gx-sm-6 {
--bs-gutter-x: 4rem; }
.g-sm-6,
.gy-sm-6 {
--bs-gutter-y: 4rem; }
.g-sm-7,
.gx-sm-7 {
--bs-gutter-x: 6rem; }
.g-sm-7,
.gy-sm-7 {
--bs-gutter-y: 6rem; }
.g-sm-8,
.gx-sm-8 {
--bs-gutter-x: 8rem; }
.g-sm-8,
.gy-sm-8 {
--bs-gutter-y: 8rem; }
.g-sm-9,
.gx-sm-9 {
--bs-gutter-x: 10rem; }
.g-sm-9,
.gy-sm-9 {
--bs-gutter-y: 10rem; }
.g-sm-10,
.gx-sm-10 {
--bs-gutter-x: 12rem; }
.g-sm-10,
.gy-sm-10 {
--bs-gutter-y: 12rem; }
.g-sm-11,
.gx-sm-11 {
--bs-gutter-x: 14rem; }
.g-sm-11,
.gy-sm-11 {
--bs-gutter-y: 14rem; }
.g-sm-12,
.gx-sm-12 {
--bs-gutter-x: 16rem; }
.g-sm-12,
.gy-sm-12 {
--bs-gutter-y: 16rem; } }
@media (min-width: 768px) {
.col-md {
flex: 1 0 0%; }
.row-cols-md-auto > * {
flex: 0 0 auto;
width: auto; }
.row-cols-md-1 > * {
flex: 0 0 auto;
width: 100%; }
.row-cols-md-2 > * {
flex: 0 0 auto;
width: 50%; }
.row-cols-md-3 > * {
flex: 0 0 auto;
width: 33.33333%; }
.row-cols-md-4 > * {
flex: 0 0 auto;
width: 25%; }
.row-cols-md-5 > * {
flex: 0 0 auto;
width: 20%; }
.row-cols-md-6 > * {
flex: 0 0 auto;
width: 16.66667%; }
.col-md-auto {
flex: 0 0 auto;
width: auto; }
.col-md-1 {
flex: 0 0 auto;
width: 8.33333%; }
.col-md-2 {
flex: 0 0 auto;
width: 16.66667%; }
.col-md-3 {
flex: 0 0 auto;
width: 25%; }
.col-md-4 {
flex: 0 0 auto;
width: 33.33333%; }
.col-md-5 {
flex: 0 0 auto;
width: 41.66667%; }
.col-md-6 {
flex: 0 0 auto;
width: 50%; }
.col-md-7 {
flex: 0 0 auto;
width: 58.33333%; }
.col-md-8 {
flex: 0 0 auto;
width: 66.66667%; }
.col-md-9 {
flex: 0 0 auto;
width: 75%; }
.col-md-10 {
flex: 0 0 auto;
width: 83.33333%; }
.col-md-11 {
flex: 0 0 auto;
width: 91.66667%; }
.col-md-12 {
flex: 0 0 auto;
width: 100%; }
.offset-md-0 {
margin-left: 0; }
.offset-md-1 {
margin-left: 8.33333%; }
.offset-md-2 {
margin-left: 16.66667%; }
.offset-md-3 {
margin-left: 25%; }
.offset-md-4 {
margin-left: 33.33333%; }
.offset-md-5 {
margin-left: 41.66667%; }
.offset-md-6 {
margin-left: 50%; }
.offset-md-7 {
margin-left: 58.33333%; }
.offset-md-8 {
margin-left: 66.66667%; }
.offset-md-9 {
margin-left: 75%; }
.offset-md-10 {
margin-left: 83.33333%; }
.offset-md-11 {
margin-left: 91.66667%; }
.g-md-0,
.gx-md-0 {
--bs-gutter-x: 0; }
.g-md-0,
.gy-md-0 {
--bs-gutter-y: 0; }
.g-md-1,
.gx-md-1 {
--bs-gutter-x: 0.25rem; }
.g-md-1,
.gy-md-1 {
--bs-gutter-y: 0.25rem; }
.g-md-2,
.gx-md-2 {
--bs-gutter-x: 0.5rem; }
.g-md-2,
.gy-md-2 {
--bs-gutter-y: 0.5rem; }
.g-md-3,
.gx-md-3 {
--bs-gutter-x: 1rem; }
.g-md-3,
.gy-md-3 {
--bs-gutter-y: 1rem; }
.g-md-4,
.gx-md-4 {
--bs-gutter-x: 1.5rem; }
.g-md-4,
.gy-md-4 {
--bs-gutter-y: 1.5rem; }
.g-md-5,
.gx-md-5 {
--bs-gutter-x: 3rem; }
.g-md-5,
.gy-md-5 {
--bs-gutter-y: 3rem; }
.g-md-6,
.gx-md-6 {
--bs-gutter-x: 4rem; }
.g-md-6,
.gy-md-6 {
--bs-gutter-y: 4rem; }
.g-md-7,
.gx-md-7 {
--bs-gutter-x: 6rem; }
.g-md-7,
.gy-md-7 {
--bs-gutter-y: 6rem; }
.g-md-8,
.gx-md-8 {
--bs-gutter-x: 8rem; }
.g-md-8,
.gy-md-8 {
--bs-gutter-y: 8rem; }
.g-md-9,
.gx-md-9 {
--bs-gutter-x: 10rem; }
.g-md-9,
.gy-md-9 {
--bs-gutter-y: 10rem; }
.g-md-10,
.gx-md-10 {
--bs-gutter-x: 12rem; }
.g-md-10,
.gy-md-10 {
--bs-gutter-y: 12rem; }
.g-md-11,
.gx-md-11 {
--bs-gutter-x: 14rem; }
.g-md-11,
.gy-md-11 {
--bs-gutter-y: 14rem; }
.g-md-12,
.gx-md-12 {
--bs-gutter-x: 16rem; }
.g-md-12,
.gy-md-12 {
--bs-gutter-y: 16rem; } }
@media (min-width: 992px) {
.col-lg {
flex: 1 0 0%; }
.row-cols-lg-auto > * {
flex: 0 0 auto;
width: auto; }
.row-cols-lg-1 > * {
flex: 0 0 auto;
width: 100%; }
.row-cols-lg-2 > * {
flex: 0 0 auto;
width: 50%; }
.row-cols-lg-3 > * {
flex: 0 0 auto;
width: 33.33333%; }
.row-cols-lg-4 > * {
flex: 0 0 auto;
width: 25%; }
.row-cols-lg-5 > * {
flex: 0 0 auto;
width: 20%; }
.row-cols-lg-6 > * {
flex: 0 0 auto;
width: 16.66667%; }
.col-lg-auto {
flex: 0 0 auto;
width: auto; }
.col-lg-1 {
flex: 0 0 auto;
width: 8.33333%; }
.col-lg-2 {
flex: 0 0 auto;
width: 16.66667%; }
.col-lg-3 {
flex: 0 0 auto;
width: 25%; }
.col-lg-4 {
flex: 0 0 auto;
width: 33.33333%; }
.col-lg-5 {
flex: 0 0 auto;
width: 41.66667%; }
.col-lg-6 {
flex: 0 0 auto;
width: 50%; }
.col-lg-7 {
flex: 0 0 auto;
width: 58.33333%; }
.col-lg-8 {
flex: 0 0 auto;
width: 66.66667%; }
.col-lg-9 {
flex: 0 0 auto;
width: 75%; }
.col-lg-10 {
flex: 0 0 auto;
width: 83.33333%; }
.col-lg-11 {
flex: 0 0 auto;
width: 91.66667%; }
.col-lg-12 {
flex: 0 0 auto;
width: 100%; }
.offset-lg-0 {
margin-left: 0; }
.offset-lg-1 {
margin-left: 8.33333%; }
.offset-lg-2 {
margin-left: 16.66667%; }
.offset-lg-3 {
margin-left: 25%; }
.offset-lg-4 {
margin-left: 33.33333%; }
.offset-lg-5 {
margin-left: 41.66667%; }
.offset-lg-6 {
margin-left: 50%; }
.offset-lg-7 {
margin-left: 58.33333%; }
.offset-lg-8 {
margin-left: 66.66667%; }
.offset-lg-9 {
margin-left: 75%; }
.offset-lg-10 {
margin-left: 83.33333%; }
.offset-lg-11 {
margin-left: 91.66667%; }
.g-lg-0,
.gx-lg-0 {
--bs-gutter-x: 0; }
.g-lg-0,
.gy-lg-0 {
--bs-gutter-y: 0; }
.g-lg-1,
.gx-lg-1 {
--bs-gutter-x: 0.25rem; }
.g-lg-1,
.gy-lg-1 {
--bs-gutter-y: 0.25rem; }
.g-lg-2,
.gx-lg-2 {
--bs-gutter-x: 0.5rem; }
.g-lg-2,
.gy-lg-2 {
--bs-gutter-y: 0.5rem; }
.g-lg-3,
.gx-lg-3 {
--bs-gutter-x: 1rem; }
.g-lg-3,
.gy-lg-3 {
--bs-gutter-y: 1rem; }
.g-lg-4,
.gx-lg-4 {
--bs-gutter-x: 1.5rem; }
.g-lg-4,
.gy-lg-4 {
--bs-gutter-y: 1.5rem; }
.g-lg-5,
.gx-lg-5 {
--bs-gutter-x: 3rem; }
.g-lg-5,
.gy-lg-5 {
--bs-gutter-y: 3rem; }
.g-lg-6,
.gx-lg-6 {
--bs-gutter-x: 4rem; }
.g-lg-6,
.gy-lg-6 {
--bs-gutter-y: 4rem; }
.g-lg-7,
.gx-lg-7 {
--bs-gutter-x: 6rem; }
.g-lg-7,
.gy-lg-7 {
--bs-gutter-y: 6rem; }
.g-lg-8,
.gx-lg-8 {
--bs-gutter-x: 8rem; }
.g-lg-8,
.gy-lg-8 {
--bs-gutter-y: 8rem; }
.g-lg-9,
.gx-lg-9 {
--bs-gutter-x: 10rem; }
.g-lg-9,
.gy-lg-9 {
--bs-gutter-y: 10rem; }
.g-lg-10,
.gx-lg-10 {
--bs-gutter-x: 12rem; }
.g-lg-10,
.gy-lg-10 {
--bs-gutter-y: 12rem; }
.g-lg-11,
.gx-lg-11 {
--bs-gutter-x: 14rem; }
.g-lg-11,
.gy-lg-11 {
--bs-gutter-y: 14rem; }
.g-lg-12,
.gx-lg-12 {
--bs-gutter-x: 16rem; }
.g-lg-12,
.gy-lg-12 {
--bs-gutter-y: 16rem; } }
@media (min-width: 1200px) {
.col-xl {
flex: 1 0 0%; }
.row-cols-xl-auto > * {
flex: 0 0 auto;
width: auto; }
.row-cols-xl-1 > * {
flex: 0 0 auto;
width: 100%; }
.row-cols-xl-2 > * {
flex: 0 0 auto;
width: 50%; }
.row-cols-xl-3 > * {
flex: 0 0 auto;
width: 33.33333%; }
.row-cols-xl-4 > * {
flex: 0 0 auto;
width: 25%; }
.row-cols-xl-5 > * {
flex: 0 0 auto;
width: 20%; }
.row-cols-xl-6 > * {
flex: 0 0 auto;
width: 16.66667%; }
.col-xl-auto {
flex: 0 0 auto;
width: auto; }
.col-xl-1 {
flex: 0 0 auto;
width: 8.33333%; }
.col-xl-2 {
flex: 0 0 auto;
width: 16.66667%; }
.col-xl-3 {
flex: 0 0 auto;
width: 25%; }
.col-xl-4 {
flex: 0 0 auto;
width: 33.33333%; }
.col-xl-5 {
flex: 0 0 auto;
width: 41.66667%; }
.col-xl-6 {
flex: 0 0 auto;
width: 50%; }
.col-xl-7 {
flex: 0 0 auto;
width: 58.33333%; }
.col-xl-8 {
flex: 0 0 auto;
width: 66.66667%; }
.col-xl-9 {
flex: 0 0 auto;
width: 75%; }
.col-xl-10 {
flex: 0 0 auto;
width: 83.33333%; }
.col-xl-11 {
flex: 0 0 auto;
width: 91.66667%; }
.col-xl-12 {
flex: 0 0 auto;
width: 100%; }
.offset-xl-0 {
margin-left: 0; }
.offset-xl-1 {
margin-left: 8.33333%; }
.offset-xl-2 {
margin-left: 16.66667%; }
.offset-xl-3 {
margin-left: 25%; }
.offset-xl-4 {
margin-left: 33.33333%; }
.offset-xl-5 {
margin-left: 41.66667%; }
.offset-xl-6 {
margin-left: 50%; }
.offset-xl-7 {
margin-left: 58.33333%; }
.offset-xl-8 {
margin-left: 66.66667%; }
.offset-xl-9 {
margin-left: 75%; }
.offset-xl-10 {
margin-left: 83.33333%; }
.offset-xl-11 {
margin-left: 91.66667%; }
.g-xl-0,
.gx-xl-0 {
--bs-gutter-x: 0; }
.g-xl-0,
.gy-xl-0 {
--bs-gutter-y: 0; }
.g-xl-1,
.gx-xl-1 {
--bs-gutter-x: 0.25rem; }
.g-xl-1,
.gy-xl-1 {
--bs-gutter-y: 0.25rem; }
.g-xl-2,
.gx-xl-2 {
--bs-gutter-x: 0.5rem; }
.g-xl-2,
.gy-xl-2 {
--bs-gutter-y: 0.5rem; }
.g-xl-3,
.gx-xl-3 {
--bs-gutter-x: 1rem; }
.g-xl-3,
.gy-xl-3 {
--bs-gutter-y: 1rem; }
.g-xl-4,
.gx-xl-4 {
--bs-gutter-x: 1.5rem; }
.g-xl-4,
.gy-xl-4 {
--bs-gutter-y: 1.5rem; }
.g-xl-5,
.gx-xl-5 {
--bs-gutter-x: 3rem; }
.g-xl-5,
.gy-xl-5 {
--bs-gutter-y: 3rem; }
.g-xl-6,
.gx-xl-6 {
--bs-gutter-x: 4rem; }
.g-xl-6,
.gy-xl-6 {
--bs-gutter-y: 4rem; }
.g-xl-7,
.gx-xl-7 {
--bs-gutter-x: 6rem; }
.g-xl-7,
.gy-xl-7 {
--bs-gutter-y: 6rem; }
.g-xl-8,
.gx-xl-8 {
--bs-gutter-x: 8rem; }
.g-xl-8,
.gy-xl-8 {
--bs-gutter-y: 8rem; }
.g-xl-9,
.gx-xl-9 {
--bs-gutter-x: 10rem; }
.g-xl-9,
.gy-xl-9 {
--bs-gutter-y: 10rem; }
.g-xl-10,
.gx-xl-10 {
--bs-gutter-x: 12rem; }
.g-xl-10,
.gy-xl-10 {
--bs-gutter-y: 12rem; }
.g-xl-11,
.gx-xl-11 {
--bs-gutter-x: 14rem; }
.g-xl-11,
.gy-xl-11 {
--bs-gutter-y: 14rem; }
.g-xl-12,
.gx-xl-12 {
--bs-gutter-x: 16rem; }
.g-xl-12,
.gy-xl-12 {
--bs-gutter-y: 16rem; } }
@media (min-width: 1400px) {
.col-xxl {
flex: 1 0 0%; }
.row-cols-xxl-auto > * {
flex: 0 0 auto;
width: auto; }
.row-cols-xxl-1 > * {
flex: 0 0 auto;
width: 100%; }
.row-cols-xxl-2 > * {
flex: 0 0 auto;
width: 50%; }
.row-cols-xxl-3 > * {
flex: 0 0 auto;
width: 33.33333%; }
.row-cols-xxl-4 > * {
flex: 0 0 auto;
width: 25%; }
.row-cols-xxl-5 > * {
flex: 0 0 auto;
width: 20%; }
.row-cols-xxl-6 > * {
flex: 0 0 auto;
width: 16.66667%; }
.col-xxl-auto {
flex: 0 0 auto;
width: auto; }
.col-xxl-1 {
flex: 0 0 auto;
width: 8.33333%; }
.col-xxl-2 {
flex: 0 0 auto;
width: 16.66667%; }
.col-xxl-3 {
flex: 0 0 auto;
width: 25%; }
.col-xxl-4 {
flex: 0 0 auto;
width: 33.33333%; }
.col-xxl-5 {
flex: 0 0 auto;
width: 41.66667%; }
.col-xxl-6 {
flex: 0 0 auto;
width: 50%; }
.col-xxl-7 {
flex: 0 0 auto;
width: 58.33333%; }
.col-xxl-8 {
flex: 0 0 auto;
width: 66.66667%; }
.col-xxl-9 {
flex: 0 0 auto;
width: 75%; }
.col-xxl-10 {
flex: 0 0 auto;
width: 83.33333%; }
.col-xxl-11 {
flex: 0 0 auto;
width: 91.66667%; }
.col-xxl-12 {
flex: 0 0 auto;
width: 100%; }
.offset-xxl-0 {
margin-left: 0; }
.offset-xxl-1 {
margin-left: 8.33333%; }
.offset-xxl-2 {
margin-left: 16.66667%; }
.offset-xxl-3 {
margin-left: 25%; }
.offset-xxl-4 {
margin-left: 33.33333%; }
.offset-xxl-5 {
margin-left: 41.66667%; }
.offset-xxl-6 {
margin-left: 50%; }
.offset-xxl-7 {
margin-left: 58.33333%; }
.offset-xxl-8 {
margin-left: 66.66667%; }
.offset-xxl-9 {
margin-left: 75%; }
.offset-xxl-10 {
margin-left: 83.33333%; }
.offset-xxl-11 {
margin-left: 91.66667%; }
.g-xxl-0,
.gx-xxl-0 {
--bs-gutter-x: 0; }
.g-xxl-0,
.gy-xxl-0 {
--bs-gutter-y: 0; }
.g-xxl-1,
.gx-xxl-1 {
--bs-gutter-x: 0.25rem; }
.g-xxl-1,
.gy-xxl-1 {
--bs-gutter-y: 0.25rem; }
.g-xxl-2,
.gx-xxl-2 {
--bs-gutter-x: 0.5rem; }
.g-xxl-2,
.gy-xxl-2 {
--bs-gutter-y: 0.5rem; }
.g-xxl-3,
.gx-xxl-3 {
--bs-gutter-x: 1rem; }
.g-xxl-3,
.gy-xxl-3 {
--bs-gutter-y: 1rem; }
.g-xxl-4,
.gx-xxl-4 {
--bs-gutter-x: 1.5rem; }
.g-xxl-4,
.gy-xxl-4 {
--bs-gutter-y: 1.5rem; }
.g-xxl-5,
.gx-xxl-5 {
--bs-gutter-x: 3rem; }
.g-xxl-5,
.gy-xxl-5 {
--bs-gutter-y: 3rem; }
.g-xxl-6,
.gx-xxl-6 {
--bs-gutter-x: 4rem; }
.g-xxl-6,
.gy-xxl-6 {
--bs-gutter-y: 4rem; }
.g-xxl-7,
.gx-xxl-7 {
--bs-gutter-x: 6rem; }
.g-xxl-7,
.gy-xxl-7 {
--bs-gutter-y: 6rem; }
.g-xxl-8,
.gx-xxl-8 {
--bs-gutter-x: 8rem; }
.g-xxl-8,
.gy-xxl-8 {
--bs-gutter-y: 8rem; }
.g-xxl-9,
.gx-xxl-9 {
--bs-gutter-x: 10rem; }
.g-xxl-9,
.gy-xxl-9 {
--bs-gutter-y: 10rem; }
.g-xxl-10,
.gx-xxl-10 {
--bs-gutter-x: 12rem; }
.g-xxl-10,
.gy-xxl-10 {
--bs-gutter-y: 12rem; }
.g-xxl-11,
.gx-xxl-11 {
--bs-gutter-x: 14rem; }
.g-xxl-11,
.gy-xxl-11 {
--bs-gutter-y: 14rem; }
.g-xxl-12,
.gx-xxl-12 {
--bs-gutter-x: 16rem; }
.g-xxl-12,
.gy-xxl-12 {
--bs-gutter-y: 16rem; } }
.table {
--bs-table-bg: transparent;
--bs-table-accent-bg: transparent;
--bs-table-striped-color: #7b809a;
--bs-table-striped-bg: rgba(0, 0, 0, 0.05);
--bs-table-active-color: #7b809a;
--bs-table-active-bg: rgba(0, 0, 0, 0.1);
--bs-table-hover-color: #7b809a;
--bs-table-hover-bg: rgba(0, 0, 0, 0.075);
width: 100%;
margin-bottom: 1rem;
color: #7b809a;
vertical-align: top;
border-color: #f0f2f5; }
.table > :not(caption) > * > * {
padding: 0.5rem 0.5rem;
background-color: var(--bs-table-bg);
border-bottom-width: 1px;
box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg); }
.table > tbody {
vertical-align: inherit; }
.table > thead {
vertical-align: bottom; }
.table > :not(:first-child) {
border-top: 2px solid currentColor; }
.caption-top {
caption-side: top; }
.table-sm > :not(caption) > * > * {
padding: 0.25rem 0.25rem; }
.table-bordered > :not(caption) > * {
border-width: 1px 0; }
.table-bordered > :not(caption) > * > * {
border-width: 0 1px; }
.table-borderless > :not(caption) > * > * {
border-bottom-width: 0; }
.table-borderless > :not(:first-child) {
border-top-width: 0; }
.table-striped > tbody > tr:nth-of-type(odd) > * {
--bs-table-accent-bg: var(--bs-table-striped-bg);
color: var(--bs-table-striped-color); }
.table-active {
--bs-table-accent-bg: var(--bs-table-active-bg);
color: var(--bs-table-active-color); }
.table-hover > tbody > tr:hover > * {
--bs-table-accent-bg: var(--bs-table-hover-bg);
color: var(--bs-table-hover-color); }
.table-primary {
--bs-table-bg: #fbd2e0;
--bs-table-striped-bg: #eec8d5;
--bs-table-striped-color: #000;
--bs-table-active-bg: #e2bdca;
--bs-table-active-color: #000;
--bs-table-hover-bg: #e8c2cf;
--bs-table-hover-color: #000;
color: #000;
border-color: #e2bdca; }
.table-secondary {
--bs-table-bg: #e5e6eb;
--bs-table-striped-bg: #dadbdf;
--bs-table-striped-color: #000;
--bs-table-active-bg: #cecfd4;
--bs-table-active-color: #000;
--bs-table-hover-bg: #d4d5d9;
--bs-table-hover-color: #000;
color: #000;
border-color: #cecfd4; }
.table-success {
--bs-table-bg: #dbefdc;
--bs-table-striped-bg: #d0e3d1;
--bs-table-striped-color: #000;
--bs-table-active-bg: #c5d7c6;
--bs-table-active-color: #000;
--bs-table-hover-bg: #cbddcc;
--bs-table-hover-color: #000;
color: #000;
border-color: #c5d7c6; }
.table-info {
--bs-table-bg: #d1e3fa;
--bs-table-striped-bg: #c7d8ee;
--bs-table-striped-color: #000;
--bs-table-active-bg: #bccce1;
--bs-table-active-color: #000;
--bs-table-hover-bg: #c1d2e7;
--bs-table-hover-color: #000;
color: #000;
border-color: #bccce1; }
.table-warning {
--bs-table-bg: #fee8cc;
--bs-table-striped-bg: #f1dcc2;
--bs-table-striped-color: #000;
--bs-table-active-bg: #e5d1b8;
--bs-table-active-color: #000;
--bs-table-hover-bg: #ebd7bd;
--bs-table-hover-color: #000;
color: #000;
border-color: #e5d1b8; }
.table-danger {
--bs-table-bg: #fdd9d7;
--bs-table-striped-bg: #f0cecc;
--bs-table-striped-color: #000;
--bs-table-active-bg: #e4c3c2;
--bs-table-active-color: #000;
--bs-table-hover-bg: #eac9c7;
--bs-table-hover-color: #000;
color: #000;
border-color: #e4c3c2; }
.table-light {
--bs-table-bg: #f0f2f5;
--bs-table-striped-bg: #e4e6e9;
--bs-table-striped-color: #000;
--bs-table-active-bg: #d8dadd;
--bs-table-active-color: #000;
--bs-table-hover-bg: #dee0e3;
--bs-table-hover-color: #000;
color: #000;
border-color: #d8dadd; }
.table-dark {
--bs-table-bg: #344767;
--bs-table-striped-bg: #3e506f;
--bs-table-striped-color: #fff;
--bs-table-active-bg: #485976;
--bs-table-active-color: #fff;
--bs-table-hover-bg: #435572;
--bs-table-hover-color: #fff;
color: #fff;
border-color: #485976; }
.table-responsive {
overflow-x: auto;
-webkit-overflow-scrolling: touch; }
@media (max-width: 575.98px) {
.table-responsive-sm {
overflow-x: auto;
-webkit-overflow-scrolling: touch; } }
@media (max-width: 767.98px) {
.table-responsive-md {
overflow-x: auto;
-webkit-overflow-scrolling: touch; } }
@media (max-width: 991.98px) {
.table-responsive-lg {
overflow-x: auto;
-webkit-overflow-scrolling: touch; } }
@media (max-width: 1199.98px) {
.table-responsive-xl {
overflow-x: auto;
-webkit-overflow-scrolling: touch; } }
@media (max-width: 1399.98px) {
.table-responsive-xxl {
overflow-x: auto;
-webkit-overflow-scrolling: touch; } }
.form-label {
margin-bottom: 0.5rem;
font-size: 0.875rem;
font-weight: 400;
color: #7b809a; }
.col-form-label {
padding-top: calc(0.5rem + 1px);
padding-bottom: calc(0.5rem + 1px);
margin-bottom: 0;
font-size: inherit;
font-weight: 400;
line-height: 1.5rem;
color: #7b809a; }
.col-form-label-lg {
padding-top: calc(0.75rem + 1px);
padding-bottom: calc(0.75rem + 1px);
font-size: 0.875rem; }
.col-form-label-sm {
padding-top: calc(0.25rem + 1px);
padding-bottom: calc(0.25rem + 1px);
font-size: 0.75rem; }
.form-text {
margin-top: 0.25rem;
font-size: 0.875em;
color: #6c757d; }
.form-control {
display: block;
width: 100%;
padding: 0.5rem 0;
font-size: 0.875rem;
font-weight: 400;
line-height: 1.5rem;
color: #495057;
background-color: transparent;
background-clip: padding-box;
border: 1px solid #d2d6da;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
border-radius: 0.375rem;
transition: 0.2s ease; }
@media (prefers-reduced-motion: reduce) {
.form-control {
transition: none; } }
.form-control[type="file"] {
overflow: hidden; }
.form-control[type="file"]:not(:disabled):not([readonly]) {
cursor: pointer; }
.form-control:focus {
color: #495057;
background-color: transparent;
border-color: transparent;
outline: 0;
box-shadow: none; }
.form-control::-webkit-date-and-time-value {
height: 1.5rem; }
.form-control::-moz-placeholder {
color: #adb5bd;
opacity: 1; }
.form-control:-ms-input-placeholder {
color: #adb5bd;
opacity: 1; }
.form-control::placeholder {
color: #adb5bd;
opacity: 1; }
.form-control:disabled, .form-control[readonly] {
background-color: #f0f2f5;
opacity: 1; }
.form-control::file-selector-button {
padding: 0.5rem 0;
margin: -0.5rem 0;
-webkit-margin-end: 0;
margin-inline-end: 0;
color: #495057;
background-color: transparent;
pointer-events: none;
border-color: inherit;
border-style: solid;
border-width: 0;
border-inline-end-width: 1px;
border-radius: 0;
transition: all 0.15s ease-in; }
@media (prefers-reduced-motion: reduce) {
.form-control::file-selector-button {
transition: none; } }
.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
background-color: rgba(0, 0, 0, 0.05); }
.form-control::-webkit-file-upload-button {
padding: 0.5rem 0;
margin: -0.5rem 0;
-webkit-margin-end: 0;
margin-inline-end: 0;
color: #495057;
background-color: transparent;
pointer-events: none;
border-color: inherit;
border-style: solid;
border-width: 0;
border-inline-end-width: 1px;
border-radius: 0;
-webkit-transition: all 0.15s ease-in;
transition: all 0.15s ease-in; }
@media (prefers-reduced-motion: reduce) {
.form-control::-webkit-file-upload-button {
-webkit-transition: none;
transition: none; } }
.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
background-color: rgba(0, 0, 0, 0.05); }
.form-control-plaintext {
display: block;
width: 100%;
padding: 0.5rem 0;
margin-bottom: 0;
line-height: 1.5rem;
color: #344767;
background-color: transparent;
border: solid transparent;
border-width: 1px 0; }
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
padding-right: 0;
padding-left: 0; }
.form-control-sm {
min-height: unset;
padding: 0.25rem 0.75rem;
font-size: 0.75rem;
border-radius: 0.125rem; }
.form-control-sm::file-selector-button {
padding: 0.25rem 0.75rem;
margin: -0.25rem -0.75rem;
-webkit-margin-end: 0.75rem;
margin-inline-end: 0.75rem; }
.form-control-sm::-webkit-file-upload-button {
padding: 0.25rem 0.75rem;
margin: -0.25rem -0.75rem;
-webkit-margin-end: 0.75rem;
margin-inline-end: 0.75rem; }
.form-control-lg {
min-height: unset;
padding: 0.75rem 0.75rem;
font-size: 0.875rem;
border-radius: 0.5rem; }
.form-control-lg::file-selector-button {
padding: 0.75rem 0.75rem;
margin: -0.75rem -0.75rem;
-webkit-margin-end: 0.75rem;
margin-inline-end: 0.75rem; }
.form-control-lg::-webkit-file-upload-button {
padding: 0.75rem 0.75rem;
margin: -0.75rem -0.75rem;
-webkit-margin-end: 0.75rem;
margin-inline-end: 0.75rem; }
textarea.form-control {
min-height: unset; }
textarea.form-control-sm {
min-height: unset; }
textarea.form-control-lg {
min-height: unset; }
.form-control-color {
width: 3rem;
height: auto;
padding: 0.5rem; }
.form-control-color:not(:disabled):not([readonly]) {
cursor: pointer; }
.form-control-color::-moz-color-swatch {
height: 1.5rem;
border-radius: 0.375rem; }
.form-control-color::-webkit-color-swatch {
height: 1.5rem;
border-radius: 0.375rem; }
.form-select {
display: block;
width: 100%;
padding: 0.5rem 1rem 0.5rem 0;
-moz-padding-start: -3px;
font-size: 0.875rem;
font-weight: 400;
line-height: 1.5rem;
color: #495057;
background-color: transparent;
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
background-repeat: no-repeat;
background-position: right 0 center;
background-size: 16px 12px;
border: 1px solid #d2d6da;
border-radius: 0.375rem;
transition: 0.2s ease;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none; }
@media (prefers-reduced-motion: reduce) {
.form-select {
transition: none; } }
.form-select:focus {
border-color: transparent;
outline: 0;
box-shadow: none; }
.form-select[multiple], .form-select[size]:not([size="1"]) {
padding-right: 0;
background-image: none; }
.form-select:disabled {
color: #6c757d;
background-color: #f0f2f5; }
.form-select:-moz-focusring {
color: transparent;
text-shadow: 0 0 0 #495057; }
.form-select-sm {
padding-top: 0.25rem;
padding-bottom: 0.25rem;
padding-left: 0.75rem;
font-size: 0.75rem;
border-radius: 0.125rem; }
.form-select-lg {
padding-top: 0.75rem;
padding-bottom: 0.75rem;
padding-left: 0.75rem;
font-size: 0.875rem;
border-radius: 0.5rem; }
.form-check {
display: block;
min-height: auto;
padding-left: 1.73em;
margin-bottom: 0.125rem; }
.form-check .form-check-input {
float: left;
margin-left: -1.73em; }
.form-check-input {
width: 1.23em;
height: 1.23em;
margin-top: 0.135em;
vertical-align: top;
background-color: #fff;
background-repeat: no-repeat;
background-position: center;
background-size: contain;
border: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
-webkit-print-color-adjust: exact;
color-adjust: exact;
transition: background-color 0.25s ease, border-color 0.25s ease, background-position 0.15s ease-in-out, opacity 0.15s ease-out, box-shadow 0.15s ease-in-out; }
@media (prefers-reduced-motion: reduce) {
.form-check-input {
transition: none; } }
.form-check-input[type="checkbox"] {
border-radius: 0.35rem; }
.form-check-input[type="radio"] {
border-radius: 50%; }
.form-check-input:active {
filter: brightness(99%); }
.form-check-input:focus {
border-color: none;
outline: 0;
box-shadow: none; }
.form-check-input:checked {
background-color: transparent;
border-color: transparent; }
.form-check-input:checked[type="checkbox"] {
background-image: linear-gradient(195deg, #EC407A 0%, #D81B60 100%); }
.form-check-input:checked[type="radio"] {
background-image: linear-gradient(195deg, #EC407A 0%, #D81B60 100%); }
.form-check-input[type="checkbox"]:indeterminate {
background-color: #e91e63;
border-color: #e91e63;
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e"); }
.form-check-input:disabled {
pointer-events: none;
filter: none;
opacity: 0.5; }
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
opacity: 0.5; }
.form-switch {
padding-left: 2.375rem; }
.form-switch .form-check-input {
width: 1.875rem;
margin-left: -2.375rem;
background-image: none;
background-position: left center;
border-radius: 1.875rem;
transition: background-color 0.25s ease, border-color 0.25s ease, background-position 0.15s ease-in-out, opacity 0.15s ease-out, box-shadow 0.15s ease-in-out; }
@media (prefers-reduced-motion: reduce) {
.form-switch .form-check-input {
transition: none; } }
.form-switch .form-check-input:focus {
background-image: none; }
.form-switch .form-check-input:checked {
background-position: right center;
background-image: none; }
.form-check-inline {
display: inline-block;
margin-right: 1rem; }
.btn-check {
position: absolute;
clip: rect(0, 0, 0, 0);
pointer-events: none; }
.btn-check[disabled] + .btn, .btn-check:disabled + .btn {
pointer-events: none;
filter: none;
opacity: 0.65; }
.form-range {
width: 100%;
height: calc(1rem + 4px);
padding: 0;
background-color: transparent;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none; }
.form-range:focus {
outline: 0; }
.form-range:focus::-webkit-slider-thumb {
box-shadow: 0 0 0 1px #fff, none; }
.form-range:focus::-moz-range-thumb {
box-shadow: 0 0 0 1px #fff, none; }
.form-range::-moz-focus-outer {
border: 0; }
.form-range::-webkit-slider-thumb {
width: 1rem;
height: 1rem;
margin-top: -0.25rem;
background-color: #e91e63;
border: 0;
border-radius: 1rem;
-webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-webkit-appearance: none;
appearance: none; }
@media (prefers-reduced-motion: reduce) {
.form-range::-webkit-slider-thumb {
-webkit-transition: none;
transition: none; } }
.form-range::-webkit-slider-thumb:active {
background-color: #f9c1d4; }
.form-range::-webkit-slider-runnable-track {
width: 100%;
height: 0.5rem;
color: transparent;
cursor: pointer;
background-color: #dee2e6;
border-color: transparent;
border-radius: 1rem; }
.form-range::-moz-range-thumb {
width: 1rem;
height: 1rem;
background-color: #e91e63;
border: 0;
border-radius: 1rem;
-moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-moz-appearance: none;
appearance: none; }
@media (prefers-reduced-motion: reduce) {
.form-range::-moz-range-thumb {
-moz-transition: none;
transition: none; } }
.form-range::-moz-range-thumb:active {
background-color: #f9c1d4; }
.form-range::-moz-range-track {
width: 100%;
height: 0.5rem;
color: transparent;
cursor: pointer;
background-color: #dee2e6;
border-color: transparent;
border-radius: 1rem; }
.form-range:disabled {
pointer-events: none; }
.form-range:disabled::-webkit-slider-thumb {
background-color: #adb5bd; }
.form-range:disabled::-moz-range-thumb {
background-color: #adb5bd; }
.form-floating {
position: relative; }
.form-floating > .form-control,
.form-floating > .form-select {
height: calc(3.5rem + 2px);
line-height: 1.25; }
.form-floating > label {
position: absolute;
top: 0;
left: 0;
height: 100%;
padding: 1rem 0;
pointer-events: none;
border: 1px solid transparent;
transform-origin: 0 0;
transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; }
@media (prefers-reduced-motion: reduce) {
.form-floating > label {
transition: none; } }
.form-floating > .form-control {
padding: 1rem 0; }
.form-floating > .form-control::-moz-placeholder {
color: transparent; }
.form-floating > .form-control:-ms-input-placeholder {
color: transparent; }
.form-floating > .form-control::placeholder {
color: transparent; }
.form-floating > .form-control:not(:-moz-placeholder-shown) {
padding-top: 1.625rem;
padding-bottom: 0.625rem; }
.form-floating > .form-control:not(:-ms-input-placeholder) {
padding-top: 1.625rem;
padding-bottom: 0.625rem; }
.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown) {
padding-top: 1.625rem;
padding-bottom: 0.625rem; }
.form-floating > .form-control:-webkit-autofill {
padding-top: 1.625rem;
padding-bottom: 0.625rem; }
.form-floating > .form-select {
padding-top: 1.625rem;
padding-bottom: 0.625rem; }
.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {
opacity: 0.65;
transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); }
.form-floating > .form-control:not(:-ms-input-placeholder) ~ label {
opacity: 0.65;
transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); }
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-select ~ label {
opacity: 0.65;
transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); }
.form-floating > .form-control:-webkit-autofill ~ label {
opacity: 0.65;
transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); }
.input-group {
position: relative;
display: flex;
flex-wrap: wrap;
align-items: stretch;
width: 100%; }
.input-group > .form-control,
.input-group > .form-select {
position: relative;
flex: 1 1 auto;
width: 1%;
min-width: 0; }
.input-group > .form-control:focus,
.input-group > .form-select:focus {
z-index: 3; }
.input-group .btn {
position: relative;
z-index: 2; }
.input-group .btn:focus {
z-index: 3; }
.input-group-text {
display: flex;
align-items: center;
padding: 0.5rem 0;
font-size: 0.875rem;
font-weight: 400;
line-height: 1.5rem;
color: #344767;
text-align: center;
white-space: nowrap;
background-color: transparent;
border: 1px solid #d2d6da;
border-radius: 0.375rem; }
.input-group-lg > .form-control,
.input-group-lg > .form-select,
.input-group-lg > .input-group-text,
.input-group-lg > .btn {
padding: 0.75rem 0.75rem;
font-size: 0.875rem;
border-radius: 0.5rem; }
.input-group-sm > .form-control,
.input-group-sm > .form-select,
.input-group-sm > .input-group-text,
.input-group-sm > .btn {
padding: 0.25rem 0.75rem;
font-size: 0.75rem;
border-radius: 0.125rem; }
.input-group-lg > .form-select,
.input-group-sm > .form-select {
padding-right: 1rem; }
.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu),
.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n + 3) {
border-top-right-radius: 0;
border-bottom-right-radius: 0; }
.input-group.has-validation > :nth-last-child(n + 3):not(.dropdown-toggle):not(.dropdown-menu),
.input-group.has-validation > .dropdown-toggle:nth-last-child(n + 4) {
border-top-right-radius: 0;
border-bottom-right-radius: 0; }
.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
margin-left: -1px;
border-top-left-radius: 0;
border-bottom-left-radius: 0; }
.valid-feedback {
display: none;
width: 100%;
margin-top: 0.25rem;
font-size: 0.875em;
color: #66d432; }
.valid-tooltip {
position: absolute;
top: 100%;
z-index: 5;
display: none;
max-width: 100%;
padding: 0.25rem 0.5rem;
margin-top: .1rem;
font-size: 0.875rem;
color: #000;
background-color: rgba(102, 212, 50, 0.9);
border-radius: 0.375rem; }
.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
display: block; }
.was-validated .form-control:valid, .form-control.is-valid {
border-color: #66d432;
padding-right: unset;
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 8'%3e%3cpath fill='%2366d432' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
background-repeat: no-repeat;
background-position: right 0.75rem center;
background-size: 1rem 1rem; }
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
border-color: #66d432;
box-shadow: 0 0 0 2px rgba(102, 212, 50, 0.25); }
.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
padding-right: unset;
background-position: top 0.75rem right 0.75rem; }
.was-validated .form-select:valid, .form-select.is-valid {
border-color: #66d432; }
.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
padding-right: 1rem;
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 8'%3e%3cpath fill='%2366d432' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
background-position: right 0 center, center right 1rem;
background-size: 16px 12px, 1rem 1rem; }
.was-validated .form-select:valid:focus, .form-select.is-valid:focus {
border-color: #66d432;
box-shadow: 0 0 0 2px rgba(102, 212, 50, 0.25); }
.was-validated .form-check-input:valid, .form-check-input.is-valid {
border-color: #66d432; }
.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {
background-color: #66d432; }
.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
box-shadow: 0 0 0 2px rgba(102, 212, 50, 0.25); }
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
color: #66d432; }
.form-check-inline .form-check-input ~ .valid-feedback {
margin-left: .5em; }
.was-validated .input-group .form-control:valid, .input-group .form-control.is-valid, .was-validated
.input-group .form-select:valid,
.input-group .form-select.is-valid {
z-index: 1; }
.was-validated .input-group .form-control:valid:focus, .input-group .form-control.is-valid:focus, .was-validated
.input-group .form-select:valid:focus,
.input-group .form-select.is-valid:focus {
z-index: 3; }
.invalid-feedback {
display: none;
width: 100%;
margin-top: 0.25rem;
font-size: 0.875em;
color: #fd5c70; }
.invalid-tooltip {
position: absolute;
top: 100%;
z-index: 5;
display: none;
max-width: 100%;
padding: 0.25rem 0.5rem;
margin-top: .1rem;
font-size: 0.875rem;
color: #000;
background-color: rgba(253, 92, 112, 0.9);
border-radius: 0.375rem; }
.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
display: block; }
.was-validated .form-control:invalid, .form-control.is-invalid {
border-color: #fd5c70;
padding-right: unset;
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23fd5c70' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23fd5c70' stroke='none'/%3e%3c/svg%3e");
background-repeat: no-repeat;
background-position: right 0.75rem center;
background-size: 1rem 1rem; }
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
border-color: #fd5c70;
box-shadow: 0 0 0 2px rgba(253, 92, 112, 0.25); }
.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
padding-right: unset;
background-position: top 0.75rem right 0.75rem; }
.was-validated .form-select:invalid, .form-select.is-invalid {
border-color: #fd5c70; }
.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
padding-right: 1rem;
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23fd5c70' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23fd5c70' stroke='none'/%3e%3c/svg%3e");
background-position: right 0 center, center right 1rem;
background-size: 16px 12px, 1rem 1rem; }
.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
border-color: #fd5c70;
box-shadow: 0 0 0 2px rgba(253, 92, 112, 0.25); }
.was-validated .form-check-input:invalid, .form-check-input.is-invalid {
border-color: #fd5c70; }
.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
background-color: #fd5c70; }
.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
box-shadow: 0 0 0 2px rgba(253, 92, 112, 0.25); }
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
color: #fd5c70; }
.form-check-inline .form-check-input ~ .invalid-feedback {
margin-left: .5em; }
.was-validated .input-group .form-control:invalid, .input-group .form-control.is-invalid, .was-validated
.input-group .form-select:invalid,
.input-group .form-select.is-invalid {
z-index: 2; }
.was-validated .input-group .form-control:invalid:focus, .input-group .form-control.is-invalid:focus, .was-validated
.input-group .form-select:invalid:focus,
.input-group .form-select.is-invalid:focus {
z-index: 3; }
.btn {
display: inline-block;
font-weight: 700;
line-height: 1.667;
color: #7b809a;
text-align: center;
vertical-align: middle;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
background-color: transparent;
border: 1px solid transparent;
padding: 0.625rem 1.5rem;
font-size: 0.75rem;
border-radius: 0.5rem;
transition: all 0.15s ease-in; }
@media (prefers-reduced-motion: reduce) {
.btn {
transition: none; } }
.btn:hover {
color: #7b809a; }
.btn-check:focus + .btn, .btn:focus {
outline: 0;
box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.09), 0 2px 3px -1px rgba(0, 0, 0, 0.07); }
.btn:disabled, .btn.disabled,
fieldset:disabled .btn {
pointer-events: none;
opacity: 0.65; }
.btn-primary {
color: #000;
background-color: #e91e63;
border-color: #e91e63; }
.btn-primary:hover {
color: #000;
background-color: #ec407a;
border-color: #eb3573; }
.btn-check:focus + .btn-primary, .btn-primary:focus {
color: #000;
background-color: #ec407a;
border-color: #eb3573;
box-shadow: 0 0 0 0.2rem rgba(198, 26, 84, 0.5); }
.btn-check:checked + .btn-primary,
.btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active,
.show > .btn-primary.dropdown-toggle {
color: #000;
background-color: #ed4b82;
border-color: #eb3573; }
.btn-check:checked + .btn-primary:focus,
.btn-check:active + .btn-primary:focus, .btn-primary:active:focus, .btn-primary.active:focus,
.show > .btn-primary.dropdown-toggle:focus {
box-shadow: 0 0 0 0.2rem rgba(198, 26, 84, 0.5); }
.btn-primary:disabled, .btn-primary.disabled {
color: #000;
background-color: #e91e63;
border-color: #e91e63; }
.btn-secondary {
color: #000;
background-color: #7b809a;
border-color: #7b809a; }
.btn-secondary:hover {
color: #000;
background-color: #8f93a9;
border-color: #888da4; }
.btn-check:focus + .btn-secondary, .btn-secondary:focus {
color: #000;
background-color: #8f93a9;
border-color: #888da4;
box-shadow: 0 0 0 0.2rem rgba(105, 109, 131, 0.5); }
.btn-check:checked + .btn-secondary,
.btn-check:active + .btn-secondary, .btn-secondary:active, .btn-secondary.active,
.show > .btn-secondary.dropdown-toggle {
color: #000;
background-color: #9599ae;
border-color: #888da4; }
.btn-check:checked + .btn-secondary:focus,
.btn-check:active + .btn-secondary:focus, .btn-secondary:active:focus, .btn-secondary.active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
box-shadow: 0 0 0 0.2rem rgba(105, 109, 131, 0.5); }
.btn-secondary:disabled, .btn-secondary.disabled {
color: #000;
background-color: #7b809a;
border-color: #7b809a; }
.btn-success {
color: #000;
background-color: #4CAF50;
border-color: #4CAF50; }
.btn-success:hover {
color: #000;
background-color: #67bb6a;
border-color: #5eb762; }
.btn-check:focus + .btn-success, .btn-success:focus {
color: #000;
background-color: #67bb6a;
border-color: #5eb762;
box-shadow: 0 0 0 0.2rem rgba(65, 149, 68, 0.5); }
.btn-check:checked + .btn-success,
.btn-check:active + .btn-success, .btn-success:active, .btn-success.active,
.show > .btn-success.dropdown-toggle {
color: #000;
background-color: #70bf73;
border-color: #5eb762; }
.btn-check:checked + .btn-success:focus,
.btn-check:active + .btn-success:focus, .btn-success:active:focus, .btn-success.active:focus,
.show > .btn-success.dropdown-toggle:focus {
box-shadow: 0 0 0 0.2rem rgba(65, 149, 68, 0.5); }
.btn-success:disabled, .btn-success.disabled {
color: #000;
background-color: #4CAF50;
border-color: #4CAF50; }
.btn-info {
color: #fff;
background-color: #1A73E8;
border-color: #1A73E8; }
.btn-info:hover {
color: #fff;
background-color: #1662c5;
border-color: #155cba; }
.btn-check:focus + .btn-info, .btn-info:focus {
color: #fff;
background-color: #1662c5;
border-color: #155cba;
box-shadow: 0 0 0 0.2rem rgba(60, 136, 235, 0.5); }
.btn-check:checked + .btn-info,
.btn-check:active + .btn-info, .btn-info:active, .btn-info.active,
.show > .btn-info.dropdown-toggle {
color: #fff;
background-color: #155cba;
border-color: #1456ae; }
.btn-check:checked + .btn-info:focus,
.btn-check:active + .btn-info:focus, .btn-info:active:focus, .btn-info.active:focus,
.show > .btn-info.dropdown-toggle:focus {
box-shadow: 0 0 0 0.2rem rgba(60, 136, 235, 0.5); }
.btn-info:disabled, .btn-info.disabled {
color: #fff;
background-color: #1A73E8;
border-color: #1A73E8; }
.btn-warning {
color: #000;
background-color: #fb8c00;
border-color: #fb8c00; }
.btn-warning:hover {
color: #000;
background-color: #fc9d26;
border-color: #fb981a; }
.btn-check:focus + .btn-warning, .btn-warning:focus {
color: #000;
background-color: #fc9d26;
border-color: #fb981a;
box-shadow: 0 0 0 0.2rem rgba(213, 119, 0, 0.5); }
.btn-check:checked + .btn-warning,
.btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active,
.show > .btn-warning.dropdown-toggle {
color: #000;
background-color: #fca333;
border-color: #fb981a; }
.btn-check:checked + .btn-warning:focus,
.btn-check:active + .btn-warning:focus, .btn-warning:active:focus, .btn-warning.active:focus,
.show > .btn-warning.dropdown-toggle:focus {
box-shadow: 0 0 0 0.2rem rgba(213, 119, 0, 0.5); }
.btn-warning:disabled, .btn-warning.disabled {
color: #000;
background-color: #fb8c00;
border-color: #fb8c00; }
.btn-danger {
color: #000;
background-color: #F44335;
border-color: #F44335; }
.btn-danger:hover {
color: #000;
background-color: #f65f53;
border-color: #f55649; }
.btn-check:focus + .btn-danger, .btn-danger:focus {
color: #000;
background-color: #f65f53;
border-color: #f55649;
box-shadow: 0 0 0 0.2rem rgba(207, 57, 45, 0.5); }
.btn-check:checked + .btn-danger,
.btn-check:active + .btn-danger, .btn-danger:active, .btn-danger.active,
.show > .btn-danger.dropdown-toggle {
color: #000;
background-color: #f6695d;
border-color: #f55649; }
.btn-check:checked + .btn-danger:focus,
.btn-check:active + .btn-danger:focus, .btn-danger:active:focus, .btn-danger.active:focus,
.show > .btn-danger.dropdown-toggle:focus {
box-shadow: 0 0 0 0.2rem rgba(207, 57, 45, 0.5); }
.btn-danger:disabled, .btn-danger.disabled {
color: #000;
background-color: #F44335;
border-color: #F44335; }
.btn-light {
color: #000;
background-color: #f0f2f5;
border-color: #f0f2f5; }
.btn-light:hover {
color: #000;
background-color: #f2f4f7;
border-color: #f2f3f6; }
.btn-check:focus + .btn-light, .btn-light:focus {
color: #000;
background-color: #f2f4f7;
border-color: #f2f3f6;
box-shadow: 0 0 0 0.2rem rgba(204, 206, 208, 0.5); }
.btn-check:checked + .btn-light,
.btn-check:active + .btn-light, .btn-light:active, .btn-light.active,
.show > .btn-light.dropdown-toggle {
color: #000;
background-color: #f3f5f7;
border-color: #f2f3f6; }
.btn-check:checked + .btn-light:focus,
.btn-check:active + .btn-light:focus, .btn-light:active:focus, .btn-light.active:focus,
.show > .btn-light.dropdown-toggle:focus {
box-shadow: 0 0 0 0.2rem rgba(204, 206, 208, 0.5); }
.btn-light:disabled, .btn-light.disabled {
color: #000;
background-color: #f0f2f5;
border-color: #f0f2f5; }
.btn-dark {
color: #fff;
background-color: #344767;
border-color: #344767; }
.btn-dark:hover {
color: #fff;
background-color: #2c3c58;
border-color: #2a3952; }
.btn-check:focus + .btn-dark, .btn-dark:focus {
color: #fff;
background-color: #2c3c58;
border-color: #2a3952;
box-shadow: 0 0 0 0.2rem rgba(82, 99, 126, 0.5); }
.btn-check:checked + .btn-dark,
.btn-check:active + .btn-dark, .btn-dark:active, .btn-dark.active,
.show > .btn-dark.dropdown-toggle {
color: #fff;
background-color: #2a3952;
border-color: #27354d; }
.btn-check:checked + .btn-dark:focus,
.btn-check:active + .btn-dark:focus, .btn-dark:active:focus, .btn-dark.active:focus,
.show > .btn-dark.dropdown-toggle:focus {
box-shadow: 0 0 0 0.2rem rgba(82, 99, 126, 0.5); }
.btn-dark:disabled, .btn-dark.disabled {
color: #fff;
background-color: #344767;
border-color: #344767; }
.btn-white {
color: #000;
background-color: #fff;
border-color: #fff; }
.btn-white:hover {
color: #000;
background-color: white;
border-color: white; }
.btn-check:focus + .btn-white, .btn-white:focus {
color: #000;
background-color: white;
border-color: white;
box-shadow: 0 0 0 0.2rem rgba(217, 217, 217, 0.5); }
.btn-check:checked + .btn-white,
.btn-check:active + .btn-white, .btn-white:active, .btn-white.active,
.show > .btn-white.dropdown-toggle {
color: #000;
background-color: white;
border-color: white; }
.btn-check:checked + .btn-white:focus,
.btn-check:active + .btn-white:focus, .btn-white:active:focus, .btn-white.active:focus,
.show > .btn-white.dropdown-toggle:focus {
box-shadow: 0 0 0 0.2rem rgba(217, 217, 217, 0.5); }
.btn-white:disabled, .btn-white.disabled {
color: #000;
background-color: #fff;
border-color: #fff; }
.btn-outline-primary {
color: #e91e63;
border-color: #e91e63; }
.btn-outline-primary:hover {
color: #000;
background-color: #e91e63;
border-color: #e91e63; }
.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus {
box-shadow: 0 0 0 0.2rem rgba(233, 30, 99, 0.5); }
.btn-check:checked + .btn-outline-primary,
.btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show {
color: #000;
background-color: #e91e63;
border-color: #e91e63; }
.btn-check:checked + .btn-outline-primary:focus,
.btn-check:active + .btn-outline-primary:focus, .btn-outline-primary:active:focus, .btn-outline-primary.active:focus, .btn-outline-primary.dropdown-toggle.show:focus {
box-shadow: 0 0 0 0.2rem rgba(233, 30, 99, 0.5); }
.btn-outline-primary:disabled, .btn-outline-primary.disabled {
color: #e91e63;
background-color: transparent; }
.btn-outline-secondary {
color: #7b809a;
border-color: #7b809a; }
.btn-outline-secondary:hover {
color: #000;
background-color: #7b809a;
border-color: #7b809a; }
.btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus {
box-shadow: 0 0 0 0.2rem rgba(123, 128, 154, 0.5); }
.btn-check:checked + .btn-outline-secondary,
.btn-check:active + .btn-outline-secondary, .btn-outline-secondary:active, .btn-outline-secondary.active, .btn-outline-secondary.dropdown-toggle.show {
color: #000;
background-color: #7b809a;
border-color: #7b809a; }
.btn-check:checked + .btn-outline-secondary:focus,
.btn-check:active + .btn-outline-secondary:focus, .btn-outline-secondary:active:focus, .btn-outline-secondary.active:focus, .btn-outline-secondary.dropdown-toggle.show:focus {
box-shadow: 0 0 0 0.2rem rgba(123, 128, 154, 0.5); }
.btn-outline-secondary:disabled, .btn-outline-secondary.disabled {
color: #7b809a;
background-color: transparent; }
.btn-outline-success {
color: #4CAF50;
border-color: #4CAF50; }
.btn-outline-success:hover {
color: #000;
background-color: #4CAF50;
border-color: #4CAF50; }
.btn-check:focus + .btn-outline-success, .btn-outline-success:focus {
box-shadow: 0 0 0 0.2rem rgba(76, 175, 80, 0.5); }
.btn-check:checked + .btn-outline-success,
.btn-check:active + .btn-outline-success, .btn-outline-success:active, .btn-outline-success.active, .btn-outline-success.dropdown-toggle.show {
color: #000;
background-color: #4CAF50;
border-color: #4CAF50; }
.btn-check:checked + .btn-outline-success:focus,
.btn-check:active + .btn-outline-success:focus, .btn-outline-success:active:focus, .btn-outline-success.active:focus, .btn-outline-success.dropdown-toggle.show:focus {
box-shadow: 0 0 0 0.2rem rgba(76, 175, 80, 0.5); }
.btn-outline-success:disabled, .btn-outline-success.disabled {
color: #4CAF50;
background-color: transparent; }
.btn-outline-info {
color: #1A73E8;
border-color: #1A73E8; }
.btn-outline-info:hover {
color: #fff;
background-color: #1A73E8;
border-color: #1A73E8; }
.btn-check:focus + .btn-outline-info, .btn-outline-info:focus {
box-shadow: 0 0 0 0.2rem rgba(26, 115, 232, 0.5); }
.btn-check:checked + .btn-outline-info,
.btn-check:active + .btn-outline-info, .btn-outline-info:active, .btn-outline-info.active, .btn-outline-info.dropdown-toggle.show {
color: #fff;
background-color: #1A73E8;
border-color: #1A73E8; }
.btn-check:checked + .btn-outline-info:focus,
.btn-check:active + .btn-outline-info:focus, .btn-outline-info:active:focus, .btn-outline-info.active:focus, .btn-outline-info.dropdown-toggle.show:focus {
box-shadow: 0 0 0 0.2rem rgba(26, 115, 232, 0.5); }
.btn-outline-info:disabled, .btn-outline-info.disabled {
color: #1A73E8;
background-color: transparent; }
.btn-outline-warning {
color: #fb8c00;
border-color: #fb8c00; }
.btn-outline-warning:hover {
color: #000;
background-color: #fb8c00;
border-color: #fb8c00; }
.btn-check:focus + .btn-outline-warning, .btn-outline-warning:focus {
box-shadow: 0 0 0 0.2rem rgba(251, 140, 0, 0.5); }
.btn-check:checked + .btn-outline-warning,
.btn-check:active + .btn-outline-warning, .btn-outline-warning:active, .btn-outline-warning.active, .btn-outline-warning.dropdown-toggle.show {
color: #000;
background-color: #fb8c00;
border-color: #fb8c00; }
.btn-check:checked + .btn-outline-warning:focus,
.btn-check:active + .btn-outline-warning:focus, .btn-outline-warning:active:focus, .btn-outline-warning.active:focus, .btn-outline-warning.dropdown-toggle.show:focus {
box-shadow: 0 0 0 0.2rem rgba(251, 140, 0, 0.5); }
.btn-outline-warning:disabled, .btn-outline-warning.disabled {
color: #fb8c00;
background-color: transparent; }
.btn-outline-danger {
color: #F44335;
border-color: #F44335; }
.btn-outline-danger:hover {
color: #000;
background-color: #F44335;
border-color: #F44335; }
.btn-check:focus + .btn-outline-danger, .btn-outline-danger:focus {
box-shadow: 0 0 0 0.2rem rgba(244, 67, 53, 0.5); }
.btn-check:checked + .btn-outline-danger,
.btn-check:active + .btn-outline-danger, .btn-outline-danger:active, .btn-outline-danger.active, .btn-outline-danger.dropdown-toggle.show {
color: #000;
background-color: #F44335;
border-color: #F44335; }
.btn-check:checked + .btn-outline-danger:focus,
.btn-check:active + .btn-outline-danger:focus, .btn-outline-danger:active:focus, .btn-outline-danger.active:focus, .btn-outline-danger.dropdown-toggle.show:focus {
box-shadow: 0 0 0 0.2rem rgba(244, 67, 53, 0.5); }
.btn-outline-danger:disabled, .btn-outline-danger.disabled {
color: #F44335;
background-color: transparent; }
.btn-outline-light {
color: #f0f2f5;
border-color: #f0f2f5; }
.btn-outline-light:hover {
color: #000;
background-color: #f0f2f5;
border-color: #f0f2f5; }
.btn-check:focus + .btn-outline-light, .btn-outline-light:focus {
box-shadow: 0 0 0 0.2rem rgba(240, 242, 245, 0.5); }
.btn-check:checked + .btn-outline-light,
.btn-check:active + .btn-outline-light, .btn-outline-light:active, .btn-outline-light.active, .btn-outline-light.dropdown-toggle.show {
color: #000;
background-color: #f0f2f5;
border-color: #f0f2f5; }
.btn-check:checked + .btn-outline-light:focus,
.btn-check:active + .btn-outline-light:focus, .btn-outline-light:active:focus, .btn-outline-light.active:focus, .btn-outline-light.dropdown-toggle.show:focus {
box-shadow: 0 0 0 0.2rem rgba(240, 242, 245, 0.5); }
.btn-outline-light:disabled, .btn-outline-light.disabled {
color: #f0f2f5;
background-color: transparent; }
.btn-outline-dark {
color: #344767;
border-color: #344767; }
.btn-outline-dark:hover {
color: #fff;
background-color: #344767;
border-color: #344767; }
.btn-check:focus + .btn-outline-dark, .btn-outline-dark:focus {
box-shadow: 0 0 0 0.2rem rgba(52, 71, 103, 0.5); }
.btn-check:checked + .btn-outline-dark,
.btn-check:active + .btn-outline-dark, .btn-outline-dark:active, .btn-outline-dark.active, .btn-outline-dark.dropdown-toggle.show {
color: #fff;
background-color: #344767;
border-color: #344767; }
.btn-check:checked + .btn-outline-dark:focus,
.btn-check:active + .btn-outline-dark:focus, .btn-outline-dark:active:focus, .btn-outline-dark.active:focus, .btn-outline-dark.dropdown-toggle.show:focus {
box-shadow: 0 0 0 0.2rem rgba(52, 71, 103, 0.5); }
.btn-outline-dark:disabled, .btn-outline-dark.disabled {
color: #344767;
background-color: transparent; }
.btn-outline-white {
color: #fff;
border-color: #fff; }
.btn-outline-white:hover {
color: #000;
background-color: #fff;
border-color: #fff; }
.btn-check:focus + .btn-outline-white, .btn-outline-white:focus {
box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.5); }
.btn-check:checked + .btn-outline-white,
.btn-check:active + .btn-outline-white, .btn-outline-white:active, .btn-outline-white.active, .btn-outline-white.dropdown-toggle.show {
color: #000;
background-color: #fff;
border-color: #fff; }
.btn-check:checked + .btn-outline-white:focus,
.btn-check:active + .btn-outline-white:focus, .btn-outline-white:active:focus, .btn-outline-white.active:focus, .btn-outline-white.dropdown-toggle.show:focus {
box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.5); }
.btn-outline-white:disabled, .btn-outline-white.disabled {
color: #fff;
background-color: transparent; }
.btn-link {
font-weight: 400;
color: #e91e63;
text-decoration: none; }
.btn-link:hover {
color: #e91e63;
text-decoration: none; }
.btn-link:focus {
text-decoration: none; }
.btn-link:disabled, .btn-link.disabled {
color: #6c757d; }
.btn-lg, .btn-group-lg > .btn {
padding: 0.75rem 1.75rem;
font-size: 0.875rem;
border-radius: 0.5rem; }
.btn-sm, .btn-group-sm > .btn {
padding: 0.375rem 1rem;
font-size: 0.75rem;
border-radius: 0.5rem; }
.fade {
transition: opacity 0.15s linear; }
@media (prefers-reduced-motion: reduce) {
.fade {
transition: none; } }
.fade:not(.show) {
opacity: 0; }
.collapse:not(.show) {
display: none; }
.collapsing {
height: 0;
overflow: hidden;
transition: height 0.35s ease; }
@media (prefers-reduced-motion: reduce) {
.collapsing {
transition: none; } }
.collapsing.collapse-horizontal {
width: 0;
height: auto;
transition: width 0.35s ease; }
@media (prefers-reduced-motion: reduce) {
.collapsing.collapse-horizontal {
transition: none; } }
.dropup,
.dropend,
.dropdown,
.dropstart {
position: relative; }
.dropdown-toggle {
white-space: nowrap; }
.dropdown-toggle::after {
display: inline-block;
margin-left: 0.255em;
vertical-align: 0.255em;
content: "";
border-top: 0.3em solid;
border-right: 0.3em solid transparent;
border-bottom: 0;
border-left: 0.3em solid transparent; }
.dropdown-toggle:empty::after {
margin-left: 0; }
.dropdown-menu {
position: absolute;
z-index: 1000;
display: none;
min-width: 11rem;
padding: 0.5rem 0;
margin: 0;
font-size: 0.875rem;
color: #7b809a;
text-align: left;
list-style: none;
background-color: #fff;
background-clip: padding-box;
border: 0 solid transparent;
border-radius: 0.375rem; }
.dropdown-menu[data-bs-popper] {
top: 100%;
left: 0;
margin-top: 1.625rem; }
.dropdown-menu-start {
--bs-position: start; }
.dropdown-menu-start[data-bs-popper] {
right: auto;
left: 0; }
.dropdown-menu-end {
--bs-position: end; }
.dropdown-menu-end[data-bs-popper] {
right: 0;
left: auto; }
@media (min-width: 576px) {
.dropdown-menu-sm-start {
--bs-position: start; }
.dropdown-menu-sm-start[data-bs-popper] {
right: auto;
left: 0; }
.dropdown-menu-sm-end {
--bs-position: end; }
.dropdown-menu-sm-end[data-bs-popper] {
right: 0;
left: auto; } }
@media (min-width: 768px) {
.dropdown-menu-md-start {
--bs-position: start; }
.dropdown-menu-md-start[data-bs-popper] {
right: auto;
left: 0; }
.dropdown-menu-md-end {
--bs-position: end; }
.dropdown-menu-md-end[data-bs-popper] {
right: 0;
left: auto; } }
@media (min-width: 992px) {
.dropdown-menu-lg-start {
--bs-position: start; }
.dropdown-menu-lg-start[data-bs-popper] {
right: auto;
left: 0; }
.dropdown-menu-lg-end {
--bs-position: end; }
.dropdown-menu-lg-end[data-bs-popper] {
right: 0;
left: auto; } }
@media (min-width: 1200px) {
.dropdown-menu-xl-start {
--bs-position: start; }
.dropdown-menu-xl-start[data-bs-popper] {
right: auto;
left: 0; }
.dropdown-menu-xl-end {
--bs-position: end; }
.dropdown-menu-xl-end[data-bs-popper] {
right: 0;
left: auto; } }
@media (min-width: 1400px) {
.dropdown-menu-xxl-start {
--bs-position: start; }
.dropdown-menu-xxl-start[data-bs-popper] {
right: auto;
left: 0; }
.dropdown-menu-xxl-end {
--bs-position: end; }
.dropdown-menu-xxl-end[data-bs-popper] {
right: 0;
left: auto; } }
.dropup .dropdown-menu[data-bs-popper] {
top: auto;
bottom: 100%;
margin-top: 0;
margin-bottom: 1.625rem; }
.dropup .dropdown-toggle::after {
display: inline-block;
margin-left: 0.255em;
vertical-align: 0.255em;
content: "";
border-top: 0;
border-right: 0.3em solid transparent;
border-bottom: 0.3em solid;
border-left: 0.3em solid transparent; }
.dropup .dropdown-toggle:empty::after {
margin-left: 0; }
.dropend .dropdown-menu[data-bs-popper] {
top: 0;
right: auto;
left: 100%;
margin-top: 0;
margin-left: 1.625rem; }
.dropend .dropdown-toggle::after {
display: inline-block;
margin-left: 0.255em;
vertical-align: 0.255em;
content: "";
border-top: 0.3em solid transparent;
border-right: 0;
border-bottom: 0.3em solid transparent;
border-left: 0.3em solid; }
.dropend .dropdown-toggle:empty::after {
margin-left: 0; }
.dropend .dropdown-toggle::after {
vertical-align: 0; }
.dropstart .dropdown-menu[data-bs-popper] {
top: 0;
right: 100%;
left: auto;
margin-top: 0;
margin-right: 1.625rem; }
.dropstart .dropdown-toggle::after {
display: inline-block;
margin-left: 0.255em;
vertical-align: 0.255em;
content: ""; }
.dropstart .dropdown-toggle::after {
display: none; }
.dropstart .dropdown-toggle::before {
display: inline-block;
margin-right: 0.255em;
vertical-align: 0.255em;
content: "";
border-top: 0.3em solid transparent;
border-right: 0.3em solid;
border-bottom: 0.3em solid transparent; }
.dropstart .dropdown-toggle:empty::after {
margin-left: 0; }
.dropstart .dropdown-toggle::before {
vertical-align: 0; }
.dropdown-divider {
height: 0;
margin: 0.5rem 0;
overflow: hidden;
border-top: 1px solid transparent; }
.dropdown-item {
display: block;
width: 100%;
padding: 0.3rem 1rem;
clear: both;
font-weight: 400;
color: #7b809a;
text-align: inherit;
white-space: nowrap;
background-color: transparent;
border: 0; }
.dropdown-item:hover, .dropdown-item:focus {
color: #344767;
background-color: #f0f2f5; }
.dropdown-item.active, .dropdown-item:active {
color: #7b809a;
text-decoration: none;
background-color: transparent; }
.dropdown-item.disabled, .dropdown-item:disabled {
color: #6c757d;
pointer-events: none;
background-color: transparent; }
.dropdown-menu.show {
display: block; }
.dropdown-header {
display: block;
padding: 0.5rem 1rem;
margin-bottom: 0;
font-size: 0.875rem;
color: #6c757d;
white-space: nowrap; }
.dropdown-item-text {
display: block;
padding: 0.3rem 1rem;
color: #7b809a; }
.dropdown-menu-dark {
color: #dee2e6;
background-color: #343a40;
border-color: transparent; }
.dropdown-menu-dark .dropdown-item {
color: #dee2e6; }
.dropdown-menu-dark .dropdown-item:hover, .dropdown-menu-dark .dropdown-item:focus {
color: #fff;
background-color: rgba(255, 255, 255, 0.15); }
.dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active {
color: #7b809a;
background-color: transparent; }
.dropdown-menu-dark .dropdown-item.disabled, .dropdown-menu-dark .dropdown-item:disabled {
color: #adb5bd; }
.dropdown-menu-dark .dropdown-divider {
border-color: transparent; }
.dropdown-menu-dark .dropdown-item-text {
color: #dee2e6; }
.dropdown-menu-dark .dropdown-header {
color: #adb5bd; }
.btn-group,
.btn-group-vertical {
position: relative;
display: inline-flex;
vertical-align: middle; }
.btn-group > .btn,
.btn-group-vertical > .btn {
position: relative;
flex: 1 1 auto; }
.btn-group > .btn-check:checked + .btn,
.btn-group > .btn-check:focus + .btn,
.btn-group > .btn:hover,
.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn-check:checked + .btn,
.btn-group-vertical > .btn-check:focus + .btn,
.btn-group-vertical > .btn:hover,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
z-index: 1; }
.btn-toolbar {
display: flex;
flex-wrap: wrap;
justify-content: flex-start; }
.btn-toolbar .input-group {
width: auto; }
.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
margin-left: -1px; }
.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
border-top-right-radius: 0;
border-bottom-right-radius: 0; }
.btn-group > .btn:nth-child(n + 3),
.btn-group > :not(.btn-check) + .btn,
.btn-group > .btn-group:not(:first-child) > .btn {
border-top-left-radius: 0;
border-bottom-left-radius: 0; }
.dropdown-toggle-split {
padding-right: 1.125rem;
padding-left: 1.125rem; }
.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropend .dropdown-toggle-split::after {
margin-left: 0; }
.dropstart .dropdown-toggle-split::before {
margin-right: 0; }
.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
padding-right: 0.75rem;
padding-left: 0.75rem; }
.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
padding-right: 1.3125rem;
padding-left: 1.3125rem; }
.btn-group-vertical {
flex-direction: column;
align-items: flex-start;
justify-content: center; }
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
width: 100%; }
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
margin-top: -1px; }
.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
border-bottom-right-radius: 0;
border-bottom-left-radius: 0; }
.btn-group-vertical > .btn ~ .btn,
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
border-top-left-radius: 0;
border-top-right-radius: 0; }
.nav {
display: flex;
flex-wrap: wrap;
padding-left: 0;
margin-bottom: 0;
list-style: none; }
.nav-link {
display: block;
padding: 0.5rem 1rem;
color: #e91e63;
transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; }
@media (prefers-reduced-motion: reduce) {
.nav-link {
transition: none; } }
.nav-link:hover, .nav-link:focus {
color: #e91e63; }
.nav-link.disabled {
color: #6c757d;
pointer-events: none;
cursor: default; }
.nav-tabs {
border-bottom: 1px solid #dee2e6; }
.nav-tabs .nav-link {
margin-bottom: -1px;
background: none;
border: 1px solid transparent;
border-top-left-radius: 0.375rem;
border-top-right-radius: 0.375rem; }
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
border-color: #f0f2f5 #f0f2f5 #dee2e6;
isolation: isolate; }
.nav-tabs .nav-link.disabled {
color: #6c757d;
background-color: transparent;
border-color: transparent; }
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
color: #495057;
background-color: #fff;
border-color: #dee2e6 #dee2e6 #fff; }
.nav-tabs .dropdown-menu {
margin-top: -1px;
border-top-left-radius: 0;
border-top-right-radius: 0; }
.nav-pills .nav-link {
background: none;
border: 0;
border-radius: 0.75rem; }
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
color: #344767;
background-color: #fff; }
.nav-fill > .nav-link,
.nav-fill .nav-item {
flex: 1 1 auto;
text-align: center; }
.nav-justified > .nav-link,
.nav-justified .nav-item {
flex-basis: 0;
flex-grow: 1;
text-align: center; }
.nav-fill .nav-item .nav-link,
.nav-justified .nav-item .nav-link {
width: 100%; }
.tab-content > .tab-pane {
display: none; }
.tab-content > .active {
display: block; }
.navbar {
position: relative;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
padding-top: 0.5rem;
padding-right: 1rem;
padding-bottom: 0.5rem;
padding-left: 1rem; }
.navbar > .container,
.navbar > .container-fluid, .navbar > .container-sm, .navbar > .container-md, .navbar > .container-lg, .navbar > .container-xl, .navbar > .container-xxl {
display: flex;
flex-wrap: inherit;
align-items: center;
justify-content: space-between; }
.navbar-brand {
padding-top: 0.40625rem;
padding-bottom: 0.40625rem;
margin-right: 1rem;
font-size: 1.125rem;
white-space: nowrap; }
.navbar-nav {
display: flex;
flex-direction: column;
padding-left: 0;
margin-bottom: 0;
list-style: none; }
.navbar-nav .nav-link {
padding-right: 0;
padding-left: 0; }
.navbar-nav .dropdown-menu {
position: static; }
.navbar-text {
padding-top: 0.5rem;
padding-bottom: 0.5rem; }
.navbar-collapse {
flex-basis: 100%;
flex-grow: 1;
align-items: center; }
.navbar-toggler {
padding: 0.25rem 0.75rem;
font-size: 1.125rem;
line-height: 1;
background-color: transparent;
border: 1px solid transparent;
border-radius: 0.5rem;
transition: box-shadow 0.15s ease-in-out; }
@media (prefers-reduced-motion: reduce) {
.navbar-toggler {
transition: none; } }
.navbar-toggler:hover {
text-decoration: none; }
.navbar-toggler:focus {
text-decoration: none;
outline: 0;
box-shadow: 0 0 0 0.2rem; }
.navbar-toggler-icon {
display: inline-block;
width: 1.5em;
height: 1.5em;
vertical-align: middle;
background-repeat: no-repeat;
background-position: center;
background-size: 100%; }
.navbar-nav-scroll {
max-height: var(--bs-scroll-height, 75vh);
overflow-y: auto; }
@media (min-width: 576px) {
.navbar-expand-sm {
flex-wrap: nowrap;
justify-content: flex-start; }
.navbar-expand-sm .navbar-nav {
flex-direction: row; }
.navbar-expand-sm .navbar-nav .dropdown-menu {
position: absolute; }
.navbar-expand-sm .navbar-nav .nav-link {
padding-right: 0.5rem;
padding-left: 0.5rem; }
.navbar-expand-sm .navbar-nav-scroll {
overflow: visible; }
.navbar-expand-sm .navbar-collapse {
display: flex !important;
flex-basis: auto; }
.navbar-expand-sm .navbar-toggler {
display: none; }
.navbar-expand-sm .offcanvas-header {
display: none; }
.navbar-expand-sm .offcanvas {
position: inherit;
bottom: 0;
z-index: 1000;
flex-grow: 1;
visibility: visible !important;
background-color: transparent;
border-right: 0;
border-left: 0;
transition: none;
transform: none; }
.navbar-expand-sm .offcanvas-top,
.navbar-expand-sm .offcanvas-bottom {
height: auto;
border-top: 0;
border-bottom: 0; }
.navbar-expand-sm .offcanvas-body {
display: flex;
flex-grow: 0;
padding: 0;
overflow-y: visible; } }
@media (min-width: 768px) {
.navbar-expand-md {
flex-wrap: nowrap;
justify-content: flex-start; }
.navbar-expand-md .navbar-nav {
flex-direction: row; }
.navbar-expand-md .navbar-nav .dropdown-menu {
position: absolute; }
.navbar-expand-md .navbar-nav .nav-link {
padding-right: 0.5rem;
padding-left: 0.5rem; }
.navbar-expand-md .navbar-nav-scroll {
overflow: visible; }
.navbar-expand-md .navbar-collapse {
display: flex !important;
flex-basis: auto; }
.navbar-expand-md .navbar-toggler {
display: none; }
.navbar-expand-md .offcanvas-header {
display: none; }
.navbar-expand-md .offcanvas {
position: inherit;
bottom: 0;
z-index: 1000;
flex-grow: 1;
visibility: visible !important;
background-color: transparent;
border-right: 0;
border-left: 0;
transition: none;
transform: none; }
.navbar-expand-md .offcanvas-top,
.navbar-expand-md .offcanvas-bottom {
height: auto;
border-top: 0;
border-bottom: 0; }
.navbar-expand-md .offcanvas-body {
display: flex;
flex-grow: 0;
padding: 0;
overflow-y: visible; } }
@media (min-width: 992px) {
.navbar-expand-lg {
flex-wrap: nowrap;
justify-content: flex-start; }
.navbar-expand-lg .navbar-nav {
flex-direction: row; }
.navbar-expand-lg .navbar-nav .dropdown-menu {
position: absolute; }
.navbar-expand-lg .navbar-nav .nav-link {
padding-right: 0.5rem;
padding-left: 0.5rem; }
.navbar-expand-lg .navbar-nav-scroll {
overflow: visible; }
.navbar-expand-lg .navbar-collapse {
display: flex !important;
flex-basis: auto; }
.navbar-expand-lg .navbar-toggler {
display: none; }
.navbar-expand-lg .offcanvas-header {
display: none; }
.navbar-expand-lg .offcanvas {
position: inherit;
bottom: 0;
z-index: 1000;
flex-grow: 1;
visibility: visible !important;
background-color: transparent;
border-right: 0;
border-left: 0;
transition: none;
transform: none; }
.navbar-expand-lg .offcanvas-top,
.navbar-expand-lg .offcanvas-bottom {
height: auto;
border-top: 0;
border-bottom: 0; }
.navbar-expand-lg .offcanvas-body {
display: flex;
flex-grow: 0;
padding: 0;
overflow-y: visible; } }
@media (min-width: 1200px) {
.navbar-expand-xl {
flex-wrap: nowrap;
justify-content: flex-start; }
.navbar-expand-xl .navbar-nav {
flex-direction: row; }
.navbar-expand-xl .navbar-nav .dropdown-menu {
position: absolute; }
.navbar-expand-xl .navbar-nav .nav-link {
padding-right: 0.5rem;
padding-left: 0.5rem; }
.navbar-expand-xl .navbar-nav-scroll {
overflow: visible; }
.navbar-expand-xl .navbar-collapse {
display: flex !important;
flex-basis: auto; }
.navbar-expand-xl .navbar-toggler {
display: none; }
.navbar-expand-xl .offcanvas-header {
display: none; }
.navbar-expand-xl .offcanvas {
position: inherit;
bottom: 0;
z-index: 1000;
flex-grow: 1;
visibility: visible !important;
background-color: transparent;
border-right: 0;
border-left: 0;
transition: none;
transform: none; }
.navbar-expand-xl .offcanvas-top,
.navbar-expand-xl .offcanvas-bottom {
height: auto;
border-top: 0;
border-bottom: 0; }
.navbar-expand-xl .offcanvas-body {
display: flex;
flex-grow: 0;
padding: 0;
overflow-y: visible; } }
@media (min-width: 1400px) {
.navbar-expand-xxl {
flex-wrap: nowrap;
justify-content: flex-start; }
.navbar-expand-xxl .navbar-nav {
flex-direction: row; }
.navbar-expand-xxl .navbar-nav .dropdown-menu {
position: absolute; }
.navbar-expand-xxl .navbar-nav .nav-link {
padding-right: 0.5rem;
padding-left: 0.5rem; }
.navbar-expand-xxl .navbar-nav-scroll {
overflow: visible; }
.navbar-expand-xxl .navbar-collapse {
display: flex !important;
flex-basis: auto; }
.navbar-expand-xxl .navbar-toggler {
display: none; }
.navbar-expand-xxl .offcanvas-header {
display: none; }
.navbar-expand-xxl .offcanvas {
position: inherit;
bottom: 0;
z-index: 1000;
flex-grow: 1;
visibility: visible !important;
background-color: transparent;
border-right: 0;
border-left: 0;
transition: none;
transform: none; }
.navbar-expand-xxl .offcanvas-top,
.navbar-expand-xxl .offcanvas-bottom {
height: auto;
border-top: 0;
border-bottom: 0; }
.navbar-expand-xxl .offcanvas-body {
display: flex;
flex-grow: 0;
padding: 0;
overflow-y: visible; } }
.navbar-expand {
flex-wrap: nowrap;
justify-content: flex-start; }
.navbar-expand .navbar-nav {
flex-direction: row; }
.navbar-expand .navbar-nav .dropdown-menu {
position: absolute; }
.navbar-expand .navbar-nav .nav-link {
padding-right: 0.5rem;
padding-left: 0.5rem; }
.navbar-expand .navbar-nav-scroll {
overflow: visible; }
.navbar-expand .navbar-collapse {
display: flex !important;
flex-basis: auto; }
.navbar-expand .navbar-toggler {
display: none; }
.navbar-expand .offcanvas-header {
display: none; }
.navbar-expand .offcanvas {
position: inherit;
bottom: 0;
z-index: 1000;
flex-grow: 1;
visibility: visible !important;
background-color: transparent;
border-right: 0;
border-left: 0;
transition: none;
transform: none; }
.navbar-expand .offcanvas-top,
.navbar-expand .offcanvas-bottom {
height: auto;
border-top: 0;
border-bottom: 0; }
.navbar-expand .offcanvas-body {
display: flex;
flex-grow: 0;
padding: 0;
overflow-y: visible; }
.navbar-light .navbar-brand {
color: rgba(52, 71, 103, 0.9); }
.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
color: rgba(52, 71, 103, 0.9); }
.navbar-light .navbar-nav .nav-link {
color: #344767; }
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
color: rgba(52, 71, 103, 0.7); }
.navbar-light .navbar-nav .nav-link.disabled {
color: rgba(52, 71, 103, 0.3); }
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .nav-link.active {
color: rgba(52, 71, 103, 0.9); }
.navbar-light .navbar-toggler {
color: #344767;
border-color: rgba(52, 71, 103, 0.1); }
.navbar-light .navbar-toggler-icon {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23344767' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }
.navbar-light .navbar-text {
color: #344767; }
.navbar-light .navbar-text a,
.navbar-light .navbar-text a:hover,
.navbar-light .navbar-text a:focus {
color: rgba(52, 71, 103, 0.9); }
.navbar-dark .navbar-brand {
color: #fff; }
.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
color: #fff; }
.navbar-dark .navbar-nav .nav-link {
color: rgba(255, 255, 255, 0.85); }
.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
color: rgba(255, 255, 255, 0.75); }
.navbar-dark .navbar-nav .nav-link.disabled {
color: rgba(255, 255, 255, 0.25); }
.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .nav-link.active {
color: #fff; }
.navbar-dark .navbar-toggler {
color: rgba(255, 255, 255, 0.85);
border-color: rgba(255, 255, 255, 0.1); }
.navbar-dark .navbar-toggler-icon {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.85%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }
.navbar-dark .navbar-text {
color: rgba(255, 255, 255, 0.85); }
.navbar-dark .navbar-text a,
.navbar-dark .navbar-text a:hover,
.navbar-dark .navbar-text a:focus {
color: #fff; }
.card {
position: relative;
display: flex;
flex-direction: column;
min-width: 0;
word-wrap: break-word;
background-color: #fff;
background-clip: border-box;
border: 0 solid rgba(0, 0, 0, 0.125);
border-radius: 0.75rem; }
.card > hr {
margin-right: 0;
margin-left: 0; }
.card > .list-group {
border-top: inherit;
border-bottom: inherit; }
.card > .list-group:first-child {
border-top-width: 0;
border-top-left-radius: 0.75rem;
border-top-right-radius: 0.75rem; }
.card > .list-group:last-child {
border-bottom-width: 0;
border-bottom-right-radius: 0.75rem;
border-bottom-left-radius: 0.75rem; }
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
border-top: 0; }
.card-body {
flex: 1 1 auto;
padding: 1rem 1rem; }
.card-title {
margin-bottom: 0.5rem; }
.card-subtitle {
margin-top: -0.25rem;
margin-bottom: 0; }
.card-text:last-child {
margin-bottom: 0; }
.card-link + .card-link {
margin-left: 1rem; }
.card-header {
padding: 0.5rem 1rem;
margin-bottom: 0;
background-color: #fff;
border-bottom: 0 solid rgba(0, 0, 0, 0.125); }
.card-header:first-child {
border-radius: 0.75rem 0.75rem 0 0; }
.card-footer {
padding: 0.5rem 1rem;
background-color: #fff;
border-top: 0 solid rgba(0, 0, 0, 0.125); }
.card-footer:last-child {
border-radius: 0 0 0.75rem 0.75rem; }
.card-header-tabs {
margin-right: -0.5rem;
margin-bottom: -0.5rem;
margin-left: -0.5rem;
border-bottom: 0; }
.card-header-pills {
margin-right: -0.5rem;
margin-left: -0.5rem; }
.card-img-overlay {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
padding: 1rem;
border-radius: 0.75rem; }
.card-img,
.card-img-top,
.card-img-bottom {
width: 100%; }
.card-img,
.card-img-top {
border-top-left-radius: 0.75rem;
border-top-right-radius: 0.75rem; }
.card-img,
.card-img-bottom {
border-bottom-right-radius: 0.75rem;
border-bottom-left-radius: 0.75rem; }
.card-group > .card {
margin-bottom: 0.75rem; }
@media (min-width: 576px) {
.card-group {
display: flex;
flex-flow: row wrap; }
.card-group > .card {
flex: 1 0 0%;
margin-bottom: 0; }
.card-group > .card + .card {
margin-left: 0;
border-left: 0; }
.card-group > .card:not(:last-child) {
border-top-right-radius: 0;
border-bottom-right-radius: 0; }
.card-group > .card:not(:last-child) .card-img-top,
.card-group > .card:not(:last-child) .card-header {
border-top-right-radius: 0; }
.card-group > .card:not(:last-child) .card-img-bottom,
.card-group > .card:not(:last-child) .card-footer {
border-bottom-right-radius: 0; }
.card-group > .card:not(:first-child) {
border-top-left-radius: 0;
border-bottom-left-radius: 0; }
.card-group > .card:not(:first-child) .card-img-top,
.card-group > .card:not(:first-child) .card-header {
border-top-left-radius: 0; }
.card-group > .card:not(:first-child) .card-img-bottom,
.card-group > .card:not(:first-child) .card-footer {
border-bottom-left-radius: 0; } }
.accordion-button {
position: relative;
display: flex;
align-items: center;
width: 100%;
padding: 1rem 0rem;
font-size: 1rem;
color: #7b809a;
text-align: left;
background-color: transparent;
border: 0;
border-radius: 0;
overflow-anchor: none;
transition: all 0.15s ease-in, border-radius 0.15s ease; }
@media (prefers-reduced-motion: reduce) {
.accordion-button {
transition: none; } }
.accordion-button:not(.collapsed) {
color: #344767;
background-color: transparent;
box-shadow: inset 0 0 0 rgba(0, 0, 0, 0.125); }
.accordion-button:not(.collapsed)::after {
background-image: none;
transform: rotate(180deg); }
.accordion-button::after {
flex-shrink: 0;
width: 1rem;
height: 1rem;
margin-left: auto;
content: "";
background-image: none;
background-repeat: no-repeat;
background-size: 1rem;
transition: transform 0.2s ease-in-out; }
@media (prefers-reduced-motion: reduce) {
.accordion-button::after {
transition: none; } }
.accordion-button:hover {
z-index: 2; }
.accordion-button:focus {
z-index: 3;
border-color: transparent;
outline: 0;
box-shadow: none; }
.accordion-header {
margin-bottom: 0; }
.accordion-item {
background-color: transparent;
border: 0 solid rgba(0, 0, 0, 0.125); }
.accordion-item:first-of-type {
border-top-left-radius: 0.125rem;
border-top-right-radius: 0.125rem; }
.accordion-item:first-of-type .accordion-button {
border-top-left-radius: 0.125rem;
border-top-right-radius: 0.125rem; }
.accordion-item:not(:first-of-type) {
border-top: 0; }
.accordion-item:last-of-type {
border-bottom-right-radius: 0.125rem;
border-bottom-left-radius: 0.125rem; }
.accordion-item:last-of-type .accordion-button.collapsed {
border-bottom-right-radius: 0.125rem;
border-bottom-left-radius: 0.125rem; }
.accordion-item:last-of-type .accordion-collapse {
border-bottom-right-radius: 0.125rem;
border-bottom-left-radius: 0.125rem; }
.accordion-body {
padding: 1rem 0rem; }
.accordion-flush .accordion-collapse {
border-width: 0; }
.accordion-flush .accordion-item {
border-right: 0;
border-left: 0;
border-radius: 0; }
.accordion-flush .accordion-item:first-child {
border-top: 0; }
.accordion-flush .accordion-item:last-child {
border-bottom: 0; }
.accordion-flush .accordion-item .accordion-button {
border-radius: 0; }
.breadcrumb {
display: flex;
flex-wrap: wrap;
padding: 0.5rem 1rem;
margin-bottom: 1rem;
list-style: none;
background-color: #f0f2f5;
border-radius: 0.375rem; }
.breadcrumb-item + .breadcrumb-item {
padding-left: 0.5rem; }
.breadcrumb-item + .breadcrumb-item::before {
float: left;
padding-right: 0.5rem;
color: #6c757d;
content: var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */; }
.breadcrumb-item.active {
color: #6c757d; }
.pagination {
display: flex;
padding-left: 0;
list-style: none; }
.page-link {
position: relative;
display: block;
color: #e91e63;
background-color: #fff;
border: 1px solid #dee2e6;
transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
@media (prefers-reduced-motion: reduce) {
.page-link {
transition: none; } }
.page-link:hover {
z-index: 2;
color: #e91e63;
background-color: #f0f2f5;
border-color: #dee2e6; }
.page-link:focus {
z-index: 3;
color: #e91e63;
background-color: #f0f2f5;
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(233, 30, 99, 0.25); }
.page-item:not(:first-child) .page-link {
margin-left: -1px; }
.page-item.active .page-link {
z-index: 3;
color: #fff;
background-color: #e91e63;
border-color: #e91e63; }
.page-item.disabled .page-link {
color: #6c757d;
pointer-events: none;
background-color: #fff;
border-color: #dee2e6; }
.page-link {
padding: 0.375rem 0.75rem; }
.page-item:first-child .page-link {
border-top-left-radius: 0.375rem;
border-bottom-left-radius: 0.375rem; }
.page-item:last-child .page-link {
border-top-right-radius: 0.375rem;
border-bottom-right-radius: 0.375rem; }
.pagination-lg .page-link {
padding: 0.75rem 1.5rem;
font-size: 1.125rem; }
.pagination-lg .page-item:first-child .page-link {
border-top-left-radius: 0.5rem;
border-bottom-left-radius: 0.5rem; }
.pagination-lg .page-item:last-child .page-link {
border-top-right-radius: 0.5rem;
border-bottom-right-radius: 0.5rem; }
.pagination-sm .page-link {
padding: 0.25rem 0.5rem;
font-size: 0.875rem; }
.pagination-sm .page-item:first-child .page-link {
border-top-left-radius: 0.125rem;
border-bottom-left-radius: 0.125rem; }
.pagination-sm .page-item:last-child .page-link {
border-top-right-radius: 0.125rem;
border-bottom-right-radius: 0.125rem; }
.badge {
display: inline-block;
padding: 0.55em 0.9em;
font-size: 0.75em;
font-weight: 700;
line-height: 1;
color: #fff;
text-align: center;
white-space: nowrap;
vertical-align: baseline;
border-radius: 0.45rem; }
.badge:empty {
display: none; }
.btn .badge {
position: relative;
top: -1px; }
.alert {
position: relative;
padding: 1rem 1rem;
margin-bottom: 1rem;
border: 0 solid transparent;
border-radius: 0.375rem; }
.alert-heading {
color: inherit; }
.alert-link {
font-weight: 600; }
.alert-dismissible {
padding-right: 3rem; }
.alert-dismissible .btn-close {
position: absolute;
top: 0;
right: 0;
z-index: 2;
padding: 1.25rem 1rem; }
.alert-primary {
color: #8c123b;
background-color: #fbd2e0;
border-color: #f8bcd0; }
.alert-primary .alert-link {
color: #700e2f; }
.alert-secondary {
color: #4a4d5c;
background-color: #e5e6eb;
border-color: #d7d9e1; }
.alert-secondary .alert-link {
color: #3b3e4a; }
.alert-success {
color: #2e6930;
background-color: #dbefdc;
border-color: #c9e7cb; }
.alert-success .alert-link {
color: #255426; }
.alert-info {
color: #10458b;
background-color: #d1e3fa;
border-color: #bad5f8; }
.alert-info .alert-link {
color: #0d376f; }
.alert-warning {
color: #975400;
background-color: #fee8cc;
border-color: #feddb3; }
.alert-warning .alert-link {
color: #794300; }
.alert-danger {
color: #922820;
background-color: #fdd9d7;
border-color: #fcc7c2; }
.alert-danger .alert-link {
color: #75201a; }
.alert-light {
color: #606162;
background-color: #fcfcfd;
border-color: #fbfbfc; }
.alert-light .alert-link {
color: #4d4e4e; }
.alert-dark {
color: #1f2b3e;
background-color: #d6dae1;
border-color: #c2c8d1; }
.alert-dark .alert-link {
color: #192232; }
.alert-white {
color: #666666;
background-color: white;
border-color: white; }
.alert-white .alert-link {
color: #525252; }
@-webkit-keyframes progress-bar-stripes {
0% {
background-position-x: 6px; } }
@keyframes progress-bar-stripes {
0% {
background-position-x: 6px; } }
.progress {
display: flex;
height: 6px;
overflow: hidden;
font-size: 0.75rem;
background-color: #f0f2f5;
border-radius: 0.125rem; }
.progress-bar {
display: flex;
flex-direction: column;
justify-content: center;
overflow: hidden;
color: #fff;
text-align: center;
white-space: nowrap;
background-color: #e91e63;
transition: width 0.6s ease; }
@media (prefers-reduced-motion: reduce) {
.progress-bar {
transition: none; } }
.progress-bar-striped {
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-size: 6px 6px; }
.progress-bar-animated {
-webkit-animation: 1s linear infinite progress-bar-stripes;
animation: 1s linear infinite progress-bar-stripes; }
@media (prefers-reduced-motion: reduce) {
.progress-bar-animated {
-webkit-animation: none;
animation: none; } }
.list-group {
display: flex;
flex-direction: column;
padding-left: 0;
margin-bottom: 0;
border-radius: 0.375rem; }
.list-group-numbered {
list-style-type: none;
counter-reset: section; }
.list-group-numbered > li::before {
content: counters(section, ".") ". ";
counter-increment: section; }
.list-group-item-action {
width: 100%;
color: #495057;
text-align: inherit; }
.list-group-item-action:hover, .list-group-item-action:focus {
z-index: 1;
color: #495057;
text-decoration: none;
background-color: #f8f9fa; }
.list-group-item-action:active {
color: #7b809a;
background-color: #f0f2f5; }
.list-group-item {
position: relative;
display: block;
padding: 0.5rem 1rem;
color: inherit;
background-color: #fff;
border: 1px solid rgba(0, 0, 0, 0.125); }
.list-group-item:first-child {
border-top-left-radius: inherit;
border-top-right-radius: inherit; }
.list-group-item:last-child {
border-bottom-right-radius: inherit;
border-bottom-left-radius: inherit; }
.list-group-item.disabled, .list-group-item:disabled {
color: #6c757d;
pointer-events: none;
background-color: #fff; }
.list-group-item.active {
z-index: 2;
color: #fff;
background-color: #e91e63;
border-color: #e91e63; }
.list-group-item + .list-group-item {
border-top-width: 0; }
.list-group-item + .list-group-item.active {
margin-top: -1px;
border-top-width: 1px; }
.list-group-horizontal {
flex-direction: row; }
.list-group-horizontal > .list-group-item:first-child {
border-bottom-left-radius: 0.375rem;
border-top-right-radius: 0; }
.list-group-horizontal > .list-group-item:last-child {
border-top-right-radius: 0.375rem;
border-bottom-left-radius: 0; }
.list-group-horizontal > .list-group-item.active {
margin-top: 0; }
.list-group-horizontal > .list-group-item + .list-group-item {
border-top-width: 1px;
border-left-width: 0; }
.list-group-horizontal > .list-group-item + .list-group-item.active {
margin-left: -1px;
border-left-width: 1px; }
@media (min-width: 576px) {
.list-group-horizontal-sm {
flex-direction: row; }
.list-group-horizontal-sm > .list-group-item:first-child {
border-bottom-left-radius: 0.375rem;
border-top-right-radius: 0; }
.list-group-horizontal-sm > .list-group-item:last-child {
border-top-right-radius: 0.375rem;
border-bottom-left-radius: 0; }
.list-group-horizontal-sm > .list-group-item.active {
margin-top: 0; }
.list-group-horizontal-sm > .list-group-item + .list-group-item {
border-top-width: 1px;
border-left-width: 0; }
.list-group-horizontal-sm > .list-group-item + .list-group-item.active {
margin-left: -1px;
border-left-width: 1px; } }
@media (min-width: 768px) {
.list-group-horizontal-md {
flex-direction: row; }
.list-group-horizontal-md > .list-group-item:first-child {
border-bottom-left-radius: 0.375rem;
border-top-right-radius: 0; }
.list-group-horizontal-md > .list-group-item:last-child {
border-top-right-radius: 0.375rem;
border-bottom-left-radius: 0; }
.list-group-horizontal-md > .list-group-item.active {
margin-top: 0; }
.list-group-horizontal-md > .list-group-item + .list-group-item {
border-top-width: 1px;
border-left-width: 0; }
.list-group-horizontal-md > .list-group-item + .list-group-item.active {
margin-left: -1px;
border-left-width: 1px; } }
@media (min-width: 992px) {
.list-group-horizontal-lg {
flex-direction: row; }
.list-group-horizontal-lg > .list-group-item:first-child {
border-bottom-left-radius: 0.375rem;
border-top-right-radius: 0; }
.list-group-horizontal-lg > .list-group-item:last-child {
border-top-right-radius: 0.375rem;
border-bottom-left-radius: 0; }
.list-group-horizontal-lg > .list-group-item.active {
margin-top: 0; }
.list-group-horizontal-lg > .list-group-item + .list-group-item {
border-top-width: 1px;
border-left-width: 0; }
.list-group-horizontal-lg > .list-group-item + .list-group-item.active {
margin-left: -1px;
border-left-width: 1px; } }
@media (min-width: 1200px) {
.list-group-horizontal-xl {
flex-direction: row; }
.list-group-horizontal-xl > .list-group-item:first-child {
border-bottom-left-radius: 0.375rem;
border-top-right-radius: 0; }
.list-group-horizontal-xl > .list-group-item:last-child {
border-top-right-radius: 0.375rem;
border-bottom-left-radius: 0; }
.list-group-horizontal-xl > .list-group-item.active {
margin-top: 0; }
.list-group-horizontal-xl > .list-group-item + .list-group-item {
border-top-width: 1px;
border-left-width: 0; }
.list-group-horizontal-xl > .list-group-item + .list-group-item.active {
margin-left: -1px;
border-left-width: 1px; } }
@media (min-width: 1400px) {
.list-group-horizontal-xxl {
flex-direction: row; }
.list-group-horizontal-xxl > .list-group-item:first-child {
border-bottom-left-radius: 0.375rem;
border-top-right-radius: 0; }
.list-group-horizontal-xxl > .list-group-item:last-child {
border-top-right-radius: 0.375rem;
border-bottom-left-radius: 0; }
.list-group-horizontal-xxl > .list-group-item.active {
margin-top: 0; }
.list-group-horizontal-xxl > .list-group-item + .list-group-item {
border-top-width: 1px;
border-left-width: 0; }
.list-group-horizontal-xxl > .list-group-item + .list-group-item.active {
margin-left: -1px;
border-left-width: 1px; } }
.list-group-flush {
border-radius: 0; }
.list-group-flush > .list-group-item {
border-width: 0 0 1px; }
.list-group-flush > .list-group-item:last-child {
border-bottom-width: 0; }
.list-group-item-primary {
color: #8c123b;
background-color: #fbd2e0; }
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
color: #8c123b;
background-color: #e2bdca; }
.list-group-item-primary.list-group-item-action.active {
color: #fff;
background-color: #8c123b;
border-color: #8c123b; }
.list-group-item-secondary {
color: #4a4d5c;
background-color: #e5e6eb; }
.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
color: #4a4d5c;
background-color: #cecfd4; }
.list-group-item-secondary.list-group-item-action.active {
color: #fff;
background-color: #4a4d5c;
border-color: #4a4d5c; }
.list-group-item-success {
color: #2e6930;
background-color: #dbefdc; }
.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
color: #2e6930;
background-color: #c5d7c6; }
.list-group-item-success.list-group-item-action.active {
color: #fff;
background-color: #2e6930;
border-color: #2e6930; }
.list-group-item-info {
color: #10458b;
background-color: #d1e3fa; }
.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
color: #10458b;
background-color: #bccce1; }
.list-group-item-info.list-group-item-action.active {
color: #fff;
background-color: #10458b;
border-color: #10458b; }
.list-group-item-warning {
color: #975400;
background-color: #fee8cc; }
.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
color: #975400;
background-color: #e5d1b8; }
.list-group-item-warning.list-group-item-action.active {
color: #fff;
background-color: #975400;
border-color: #975400; }
.list-group-item-danger {
color: #922820;
background-color: #fdd9d7; }
.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
color: #922820;
background-color: #e4c3c2; }
.list-group-item-danger.list-group-item-action.active {
color: #fff;
background-color: #922820;
border-color: #922820; }
.list-group-item-light {
color: #606162;
background-color: #fcfcfd; }
.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
color: #606162;
background-color: #e3e3e4; }
.list-group-item-light.list-group-item-action.active {
color: #fff;
background-color: #606162;
border-color: #606162; }
.list-group-item-dark {
color: #1f2b3e;
background-color: #d6dae1; }
.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
color: #1f2b3e;
background-color: #c1c4cb; }
.list-group-item-dark.list-group-item-action.active {
color: #fff;
background-color: #1f2b3e;
border-color: #1f2b3e; }
.list-group-item-white {
color: #666666;
background-color: white; }
.list-group-item-white.list-group-item-action:hover, .list-group-item-white.list-group-item-action:focus {
color: #666666;
background-color: #e6e6e6; }
.list-group-item-white.list-group-item-action.active {
color: #fff;
background-color: #666666;
border-color: #666666; }
.btn-close {
box-sizing: content-box;
width: 1em;
height: 1em;
padding: 0.25em 0.25em;
color: #fff;
background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
border: 0;
border-radius: 0.25rem;
opacity: 0.5; }
.btn-close:hover {
color: #fff;
text-decoration: none;
opacity: 0.75; }
.btn-close:focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(233, 30, 99, 0.25);
opacity: 1; }
.btn-close:disabled, .btn-close.disabled {
pointer-events: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
opacity: 0.25; }
.btn-close-white {
filter: invert(1) grayscale(100%) brightness(200%); }
.toast {
width: 350px;
max-width: 100%;
font-size: 0.875rem;
pointer-events: auto;
background-color: rgba(255, 255, 255, 0.85);
background-clip: padding-box;
border: 0 solid transparent;
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
border-radius: 0.375rem; }
.toast.showing {
opacity: 0; }
.toast:not(.show) {
display: none; }
.toast-container {
width: -webkit-max-content;
width: -moz-max-content;
width: max-content;
max-width: 100%;
pointer-events: none; }
.toast-container > :not(:last-child) {
margin-bottom: 1.5rem; }
.toast-header {
display: flex;
align-items: center;
padding: 0.75rem 0.75rem;
color: #344767;
background-color: rgba(255, 255, 255, 0.85);
background-clip: padding-box;
border-bottom: 0 solid rgba(0, 0, 0, 0.05);
border-top-left-radius: 0.375rem;
border-top-right-radius: 0.375rem; }
.toast-header .btn-close {
margin-right: -0.375rem;
margin-left: 0.75rem; }
.toast-body {
padding: 0.75rem;
word-wrap: break-word; }
.modal {
position: fixed;
top: 0;
left: 0;
z-index: 1050;
display: none;
width: 100%;
height: 100%;
overflow-x: hidden;
overflow-y: auto;
outline: 0; }
.modal-dialog {
position: relative;
width: auto;
margin: 0.5rem;
pointer-events: none; }
.modal.fade .modal-dialog {
transition: transform 0.3s ease-out;
transform: translate(0, -50px); }
@media (prefers-reduced-motion: reduce) {
.modal.fade .modal-dialog {
transition: none; } }
.modal.show .modal-dialog {
transform: none; }
.modal.modal-static .modal-dialog {
transform: scale(1.02); }
.modal-dialog-scrollable {
height: calc(100% - 1rem); }
.modal-dialog-scrollable .modal-content {
max-height: 100%;
overflow: hidden; }
.modal-dialog-scrollable .modal-body {
overflow-y: auto; }
.modal-dialog-centered {
display: flex;
align-items: center;
min-height: calc(100% - 1rem); }
.modal-content {
position: relative;
display: flex;
flex-direction: column;
width: 100%;
pointer-events: auto;
background-color: #fff;
background-clip: padding-box;
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 0.5rem;
outline: 0; }
.modal-backdrop {
position: fixed;
top: 0;
left: 0;
z-index: 1040;
width: 100vw;
height: 100vh;
background-color: #000; }
.modal-backdrop.fade {
opacity: 0; }
.modal-backdrop.show {
opacity: 0.5; }
.modal-header {
display: flex;
flex-shrink: 0;
align-items: center;
justify-content: space-between;
padding: 1rem 1rem;
border-bottom: 1px solid #dee2e6;
border-top-left-radius: calc(0.5rem - 1px);
border-top-right-radius: calc(0.5rem - 1px); }
.modal-header .btn-close {
padding: 0.5rem 0.5rem;
margin: -0.5rem -0.5rem -0.5rem auto; }
.modal-title {
margin-bottom: 0;
line-height: 1.5; }
.modal-body {
position: relative;
flex: 1 1 auto;
padding: 1rem; }
.modal-footer {
display: flex;
flex-wrap: wrap;
flex-shrink: 0;
align-items: center;
justify-content: flex-end;
padding: 0.75rem;
border-top: 1px solid #dee2e6;
border-bottom-right-radius: calc(0.5rem - 1px);
border-bottom-left-radius: calc(0.5rem - 1px); }
.modal-footer > * {
margin: 0.25rem; }
@media (min-width: 576px) {
.modal-dialog {
max-width: 500px;
margin: 1.75rem auto; }
.modal-dialog-scrollable {
height: calc(100% - 3.5rem); }
.modal-dialog-centered {
min-height: calc(100% - 3.5rem); }
.modal-sm {
max-width: 300px; } }
@media (min-width: 992px) {
.modal-lg,
.modal-xl {
max-width: 800px; } }
@media (min-width: 1200px) {
.modal-xl {
max-width: 1140px; } }
.modal-fullscreen {
width: 100vw;
max-width: none;
height: 100%;
margin: 0; }
.modal-fullscreen .modal-content {
height: 100%;
border: 0;
border-radius: 0; }
.modal-fullscreen .modal-header {
border-radius: 0; }
.modal-fullscreen .modal-body {
overflow-y: auto; }
.modal-fullscreen .modal-footer {
border-radius: 0; }
@media (max-width: 575.98px) {
.modal-fullscreen-sm-down {
width: 100vw;
max-width: none;
height: 100%;
margin: 0; }
.modal-fullscreen-sm-down .modal-content {
height: 100%;
border: 0;
border-radius: 0; }
.modal-fullscreen-sm-down .modal-header {
border-radius: 0; }
.modal-fullscreen-sm-down .modal-body {
overflow-y: auto; }
.modal-fullscreen-sm-down .modal-footer {
border-radius: 0; } }
@media (max-width: 767.98px) {
.modal-fullscreen-md-down {
width: 100vw;
max-width: none;
height: 100%;
margin: 0; }
.modal-fullscreen-md-down .modal-content {
height: 100%;
border: 0;
border-radius: 0; }
.modal-fullscreen-md-down .modal-header {
border-radius: 0; }
.modal-fullscreen-md-down .modal-body {
overflow-y: auto; }
.modal-fullscreen-md-down .modal-footer {
border-radius: 0; } }
@media (max-width: 991.98px) {
.modal-fullscreen-lg-down {
width: 100vw;
max-width: none;
height: 100%;
margin: 0; }
.modal-fullscreen-lg-down .modal-content {
height: 100%;
border: 0;
border-radius: 0; }
.modal-fullscreen-lg-down .modal-header {
border-radius: 0; }
.modal-fullscreen-lg-down .modal-body {
overflow-y: auto; }
.modal-fullscreen-lg-down .modal-footer {
border-radius: 0; } }
@media (max-width: 1199.98px) {
.modal-fullscreen-xl-down {
width: 100vw;
max-width: none;
height: 100%;
margin: 0; }
.modal-fullscreen-xl-down .modal-content {
height: 100%;
border: 0;
border-radius: 0; }
.modal-fullscreen-xl-down .modal-header {
border-radius: 0; }
.modal-fullscreen-xl-down .modal-body {
overflow-y: auto; }
.modal-fullscreen-xl-down .modal-footer {
border-radius: 0; } }
@media (max-width: 1399.98px) {
.modal-fullscreen-xxl-down {
width: 100vw;
max-width: none;
height: 100%;
margin: 0; }
.modal-fullscreen-xxl-down .modal-content {
height: 100%;
border: 0;
border-radius: 0; }
.modal-fullscreen-xxl-down .modal-header {
border-radius: 0; }
.modal-fullscreen-xxl-down .modal-body {
overflow-y: auto; }
.modal-fullscreen-xxl-down .modal-footer {
border-radius: 0; } }
.tooltip {
position: absolute;
z-index: 1070;
display: block;
margin: 0;
font-family: var(--bs-font-sans-serif);
font-style: normal;
font-weight: 400;
line-height: 1.5;
text-align: left;
text-align: start;
text-decoration: none;
text-shadow: none;
text-transform: none;
letter-spacing: normal;
word-break: normal;
word-spacing: normal;
white-space: normal;
line-break: auto;
font-size: 0.875rem;
word-wrap: break-word;
opacity: 0; }
.tooltip.show {
opacity: 0.9; }
.tooltip .tooltip-arrow {
position: absolute;
display: block;
width: 0.8rem;
height: 0.4rem; }
.tooltip .tooltip-arrow::before {
position: absolute;
content: "";
border-color: transparent;
border-style: solid; }
.bs-tooltip-top, .bs-tooltip-auto[data-popper-placement^="top"] {
padding: 0.4rem 0; }
.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow {
bottom: 0; }
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before {
top: -1px;
border-width: 0.4rem 0.4rem 0;
border-top-color: #000; }
.bs-tooltip-end, .bs-tooltip-auto[data-popper-placement^="right"] {
padding: 0 0.4rem; }
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow {
left: 0;
width: 0.4rem;
height: 0.8rem; }
.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow::before {
right: -1px;
border-width: 0.4rem 0.4rem 0.4rem 0;
border-right-color: #000; }
.bs-tooltip-bottom, .bs-tooltip-auto[data-popper-placement^="bottom"] {
padding: 0.4rem 0; }
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow {
top: 0; }
.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow::before {
bottom: -1px;
border-width: 0 0.4rem 0.4rem;
border-bottom-color: #000; }
.bs-tooltip-start, .bs-tooltip-auto[data-popper-placement^="left"] {
padding: 0 0.4rem; }
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow {
right: 0;
width: 0.4rem;
height: 0.8rem; }
.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow::before {
left: -1px;
border-width: 0.4rem 0 0.4rem 0.4rem;
border-left-color: #000; }
.tooltip-inner {
max-width: 200px;
padding: 0.25rem 0.5rem;
color: #fff;
text-align: center;
background-color: #000;
border-radius: 0.375rem; }
.popover {
position: absolute;
top: 0;
left: 0 /* rtl:ignore */;
z-index: 1060;
display: block;
max-width: 276px;
font-family: var(--bs-font-sans-serif);
font-style: normal;
font-weight: 400;
line-height: 1.5;
text-align: left;
text-align: start;
text-decoration: none;
text-shadow: none;
text-transform: none;
letter-spacing: normal;
word-break: normal;
word-spacing: normal;
white-space: normal;
line-break: auto;
font-size: 0.75rem;
word-wrap: break-word;
background-color: #fff;
background-clip: padding-box;
border: 0px solid rgba(0, 0, 0, 0.2);
border-radius: 0.5rem; }
.popover .popover-arrow {
position: absolute;
display: block;
width: 1rem;
height: 0.5rem; }
.popover .popover-arrow::before, .popover .popover-arrow::after {
position: absolute;
display: block;
content: "";
border-color: transparent;
border-style: solid; }
.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^="top"] > .popover-arrow {
bottom: calc(-0.5rem - 0px); }
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^="top"] > .popover-arrow::before {
bottom: 0;
border-width: 0.5rem 0.5rem 0;
border-top-color: rgba(0, 0, 0, 0.25); }
.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^="top"] > .popover-arrow::after {
bottom: 0px;
border-width: 0.5rem 0.5rem 0;
border-top-color: #fff; }
.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^="right"] > .popover-arrow {
left: calc(-0.5rem - 0px);
width: 0.5rem;
height: 1rem; }
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^="right"] > .popover-arrow::before {
left: 0;
border-width: 0.5rem 0.5rem 0.5rem 0;
border-right-color: rgba(0, 0, 0, 0.25); }
.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^="right"] > .popover-arrow::after {
left: 0px;
border-width: 0.5rem 0.5rem 0.5rem 0;
border-right-color: #fff; }
.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^="bottom"] > .popover-arrow {
top: calc(-0.5rem - 0px); }
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^="bottom"] > .popover-arrow::before {
top: 0;
border-width: 0 0.5rem 0.5rem 0.5rem;
border-bottom-color: rgba(0, 0, 0, 0.25); }
.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^="bottom"] > .popover-arrow::after {
top: 0px;
border-width: 0 0.5rem 0.5rem 0.5rem;
border-bottom-color: #fff; }
.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^="bottom"] .popover-header::before {
position: absolute;
top: 0;
left: 50%;
display: block;
width: 1rem;
margin-left: -0.5rem;
content: "";
border-bottom: 0px solid #f0f2f5; }
.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^="left"] > .popover-arrow {
right: calc(-0.5rem - 0px);
width: 0.5rem;
height: 1rem; }
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^="left"] > .popover-arrow::before {
right: 0;
border-width: 0.5rem 0 0.5rem 0.5rem;
border-left-color: rgba(0, 0, 0, 0.25); }
.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^="left"] > .popover-arrow::after {
right: 0px;
border-width: 0.5rem 0 0.5rem 0.5rem;
border-left-color: #fff; }
.popover-header {
padding: 0.5rem 1rem;
margin-bottom: 0;
font-size: 1rem;
color: #344767;
background-color: #f0f2f5;
border-bottom: 0px solid rgba(0, 0, 0, 0.2);
border-top-left-radius: calc(0.5rem - 0px);
border-top-right-radius: calc(0.5rem - 0px); }
.popover-header:empty {
display: none; }
.popover-body {
padding: 1rem 1rem;
color: #7b809a; }
.carousel {
position: relative; }
.carousel.pointer-event {
touch-action: pan-y; }
.carousel-inner {
position: relative;
width: 100%;
overflow: hidden; }
.carousel-inner::after {
display: block;
clear: both;
content: ""; }
.carousel-item {
position: relative;
display: none;
float: left;
width: 100%;
margin-right: -100%;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transition: transform 0.6s ease-in-out; }
@media (prefers-reduced-motion: reduce) {
.carousel-item {
transition: none; } }
.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
display: block; }
/* rtl:begin:ignore */
.carousel-item-next:not(.carousel-item-start),
.active.carousel-item-end {
transform: translateX(100%); }
.carousel-item-prev:not(.carousel-item-end),
.active.carousel-item-start {
transform: translateX(-100%); }
/* rtl:end:ignore */
.carousel-fade .carousel-item {
opacity: 0;
transition-property: opacity;
transform: none; }
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-start,
.carousel-fade .carousel-item-prev.carousel-item-end {
z-index: 1;
opacity: 1; }
.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
z-index: 0;
opacity: 0;
transition: opacity 0s 0.6s; }
@media (prefers-reduced-motion: reduce) {
.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
transition: none; } }
.carousel-control-prev,
.carousel-control-next {
position: absolute;
top: 0;
bottom: 0;
z-index: 1;
display: flex;
align-items: center;
justify-content: center;
width: 15%;
padding: 0;
color: #fff;
text-align: center;
background: none;
border: 0;
opacity: 0.5;
transition: opacity 0.15s ease; }
@media (prefers-reduced-motion: reduce) {
.carousel-control-prev,
.carousel-control-next {
transition: none; } }
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
color: #fff;
text-decoration: none;
outline: 0;
opacity: 0.9; }
.carousel-control-prev {
left: 0; }
.carousel-control-next {
right: 0; }
.carousel-control-prev-icon,
.carousel-control-next-icon {
display: inline-block;
width: 2rem;
height: 2rem;
background-repeat: no-repeat;
background-position: 50%;
background-size: 100% 100%; }
/* rtl:options: {
"autoRename": true,
"stringMap":[ {
"name" : "prev-next",
"search" : "prev",
"replace" : "next"
} ]
} */
.carousel-control-prev-icon {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e"); }
.carousel-control-next-icon {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); }
.carousel-indicators {
position: absolute;
right: 0;
bottom: 0;
left: 0;
z-index: 2;
display: flex;
justify-content: center;
padding: 0;
margin-right: 15%;
margin-bottom: 1rem;
margin-left: 15%;
list-style: none; }
.carousel-indicators [data-bs-target] {
box-sizing: content-box;
flex: 0 1 auto;
width: 30px;
height: 3px;
padding: 0;
margin-right: 3px;
margin-left: 3px;
text-indent: -999px;
cursor: pointer;
background-color: #fff;
background-clip: padding-box;
border: 0;
border-top: 10px solid transparent;
border-bottom: 10px solid transparent;
opacity: 0.5;
transition: opacity 0.6s ease; }
@media (prefers-reduced-motion: reduce) {
.carousel-indicators [data-bs-target] {
transition: none; } }
.carousel-indicators .active {
opacity: 1; }
.carousel-caption {
position: absolute;
right: 15%;
bottom: 1.25rem;
left: 15%;
padding-top: 1.25rem;
padding-bottom: 1.25rem;
color: #fff;
text-align: center; }
.carousel-dark .carousel-control-prev-icon,
.carousel-dark .carousel-control-next-icon {
filter: invert(1) grayscale(100); }
.carousel-dark .carousel-indicators [data-bs-target] {
background-color: #000; }
.carousel-dark .carousel-caption {
color: #000; }
@-webkit-keyframes spinner-border {
to {
transform: rotate(360deg) /* rtl:ignore */; } }
@keyframes spinner-border {
to {
transform: rotate(360deg) /* rtl:ignore */; } }
.spinner-border {
display: inline-block;
width: 2rem;
height: 2rem;
vertical-align: -0.125em;
border: 0.25em solid currentColor;
border-right-color: transparent;
border-radius: 50%;
-webkit-animation: 0.75s linear infinite spinner-border;
animation: 0.75s linear infinite spinner-border; }
.spinner-border-sm {
width: 1rem;
height: 1rem;
border-width: 0.2em; }
@-webkit-keyframes spinner-grow {
0% {
transform: scale(0); }
50% {
opacity: 1;
transform: none; } }
@keyframes spinner-grow {
0% {
transform: scale(0); }
50% {
opacity: 1;
transform: none; } }
.spinner-grow {
display: inline-block;
width: 2rem;
height: 2rem;
vertical-align: -0.125em;
background-color: currentColor;
border-radius: 50%;
opacity: 0;
-webkit-animation: 0.75s linear infinite spinner-grow;
animation: 0.75s linear infinite spinner-grow; }
.spinner-grow-sm {
width: 1rem;
height: 1rem; }
@media (prefers-reduced-motion: reduce) {
.spinner-border,
.spinner-grow {
-webkit-animation-duration: 1.5s;
animation-duration: 1.5s; } }
.offcanvas {
position: fixed;
bottom: 0;
z-index: 1045;
display: flex;
flex-direction: column;
max-width: 100%;
visibility: hidden;
background-color: #fff;
background-clip: padding-box;
outline: 0;
transition: transform 0.3s ease-in-out; }
@media (prefers-reduced-motion: reduce) {
.offcanvas {
transition: none; } }
.offcanvas-backdrop {
position: fixed;
top: 0;
left: 0;
z-index: 1040;
width: 100vw;
height: 100vh;
background-color: #000; }
.offcanvas-backdrop.fade {
opacity: 0; }
.offcanvas-backdrop.show {
opacity: 0.5; }
.offcanvas-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 1rem 1rem; }
.offcanvas-header .btn-close {
padding: 0.5rem 0.5rem;
margin-top: -0.5rem;
margin-right: -0.5rem;
margin-bottom: -0.5rem; }
.offcanvas-title {
margin-bottom: 0;
line-height: 1.5; }
.offcanvas-body {
flex-grow: 1;
padding: 1rem 1rem;
overflow-y: auto; }
.offcanvas-start {
top: 0;
left: 0;
width: 400px;
border-right: 1px solid rgba(0, 0, 0, 0.2);
transform: translateX(-100%); }
.offcanvas-end {
top: 0;
right: 0;
width: 400px;
border-left: 1px solid rgba(0, 0, 0, 0.2);
transform: translateX(100%); }
.offcanvas-top {
top: 0;
right: 0;
left: 0;
height: 30vh;
max-height: 100%;
border-bottom: 1px solid rgba(0, 0, 0, 0.2);
transform: translateY(-100%); }
.offcanvas-bottom {
right: 0;
left: 0;
height: 30vh;
max-height: 100%;
border-top: 1px solid rgba(0, 0, 0, 0.2);
transform: translateY(100%); }
.offcanvas.show {
transform: none; }
.placeholder {
display: inline-block;
min-height: 1em;
vertical-align: middle;
cursor: wait;
background-color: currentColor;
opacity: 0.5; }
.placeholder.btn::before {
display: inline-block;
content: ""; }
.placeholder-xs {
min-height: .6em; }
.placeholder-sm {
min-height: .8em; }
.placeholder-lg {
min-height: 1.2em; }
.placeholder-glow .placeholder {
-webkit-animation: placeholder-glow 2s ease-in-out infinite;
animation: placeholder-glow 2s ease-in-out infinite; }
@-webkit-keyframes placeholder-glow {
50% {
opacity: 0.2; } }
@keyframes placeholder-glow {
50% {
opacity: 0.2; } }
.placeholder-wave {
-webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
-webkit-mask-size: 200% 100%;
mask-size: 200% 100%;
-webkit-animation: placeholder-wave 2s linear infinite;
animation: placeholder-wave 2s linear infinite; }
@-webkit-keyframes placeholder-wave {
100% {
-webkit-mask-position: -200% 0%;
mask-position: -200% 0%; } }
@keyframes placeholder-wave {
100% {
-webkit-mask-position: -200% 0%;
mask-position: -200% 0%; } }
.clearfix::after {
display: block;
clear: both;
content: ""; }
.link-primary {
color: #e91e63; }
.link-primary:hover, .link-primary:focus {
color: #ed4b82; }
.link-secondary {
color: #7b809a; }
.link-secondary:hover, .link-secondary:focus {
color: #9599ae; }
.link-success {
color: #4CAF50; }
.link-success:hover, .link-success:focus {
color: #70bf73; }
.link-info {
color: #1A73E8; }
.link-info:hover, .link-info:focus {
color: #155cba; }
.link-warning {
color: #fb8c00; }
.link-warning:hover, .link-warning:focus {
color: #fca333; }
.link-danger {
color: #F44335; }
.link-danger:hover, .link-danger:focus {
color: #f6695d; }
.link-light {
color: #f0f2f5; }
.link-light:hover, .link-light:focus {
color: #f3f5f7; }
.link-dark {
color: #344767; }
.link-dark:hover, .link-dark:focus {
color: #2a3952; }
.link-white {
color: #fff; }
.link-white:hover, .link-white:focus {
color: white; }
.ratio {
position: relative;
width: 100%; }
.ratio::before {
display: block;
padding-top: var(--bs-aspect-ratio);
content: ""; }
.ratio > * {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%; }
.ratio-1x1 {
--bs-aspect-ratio: 100%; }
.ratio-4x3 {
--bs-aspect-ratio: calc(3 / 4 * 100%); }
.ratio-16x9 {
--bs-aspect-ratio: calc(9 / 16 * 100%); }
.ratio-21x9 {
--bs-aspect-ratio: calc(9 / 21 * 100%); }
.fixed-top {
position: fixed;
top: 0;
right: 0;
left: 0;
z-index: 1030; }
.fixed-bottom {
position: fixed;
right: 0;
bottom: 0;
left: 0;
z-index: 1030; }
.sticky-top {
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 1020; }
@media (min-width: 576px) {
.sticky-sm-top {
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 1020; } }
@media (min-width: 768px) {
.sticky-md-top {
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 1020; } }
@media (min-width: 992px) {
.sticky-lg-top {
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 1020; } }
@media (min-width: 1200px) {
.sticky-xl-top {
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 1020; } }
@media (min-width: 1400px) {
.sticky-xxl-top {
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 1020; } }
.hstack {
display: flex;
flex-direction: row;
align-items: center;
align-self: stretch; }
.vstack {
display: flex;
flex: 1 1 auto;
flex-direction: column;
align-self: stretch; }
.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
position: absolute !important;
width: 1px !important;
height: 1px !important;
padding: 0 !important;
margin: -1px !important;
overflow: hidden !important;
clip: rect(0, 0, 0, 0) !important;
white-space: nowrap !important;
border: 0 !important; }
.stretched-link::after {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1;
content: ""; }
.text-truncate {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap; }
.vr {
display: inline-block;
align-self: stretch;
width: 1px;
min-height: 1em;
background-color: currentColor;
opacity: 0.25; }
.align-baseline {
vertical-align: baseline !important; }
.align-top {
vertical-align: top !important; }
.align-middle {
vertical-align: middle !important; }
.align-bottom {
vertical-align: bottom !important; }
.align-text-bottom {
vertical-align: text-bottom !important; }
.align-text-top {
vertical-align: text-top !important; }
.float-start {
float: left !important; }
.float-end {
float: right !important; }
.float-none {
float: none !important; }
.opacity-0 {
opacity: 0 !important; }
.opacity-1 {
opacity: 0.1 !important; }
.opacity-2 {
opacity: 0.2 !important; }
.opacity-3 {
opacity: 0.3 !important; }
.opacity-4 {
opacity: 0.4 !important; }
.opacity-5 {
opacity: 0.5 !important; }
.opacity-6 {
opacity: 0.6 !important; }
.opacity-7 {
opacity: 0.7 !important; }
.opacity-8 {
opacity: 0.8 !important; }
.opacity-9 {
opacity: 0.9 !important; }
.opacity-10 {
opacity: 1 !important; }
.overflow-auto {
overflow: auto !important; }
.overflow-hidden {
overflow: hidden !important; }
.overflow-visible {
overflow: visible !important; }
.overflow-scroll {
overflow: scroll !important; }
.d-inline {
display: inline !important; }
.d-inline-block {
display: inline-block !important; }
.d-block {
display: block !important; }
.d-grid {
display: grid !important; }
.d-table {
display: table !important; }
.d-table-row {
display: table-row !important; }
.d-table-cell {
display: table-cell !important; }
.d-flex {
display: flex !important; }
.d-inline-flex {
display: inline-flex !important; }
.d-none {
display: none !important; }
.shadow {
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06) !important; }
.shadow-sm {
box-shadow: 0 0.3125rem 0.625rem 0 rgba(0, 0, 0, 0.12) !important; }
.shadow-lg {
box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05) !important; }
.shadow-xl {
box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04) !important; }
.shadow-none {
box-shadow: none !important; }
.position-static {
position: static !important; }
.position-relative {
position: relative !important; }
.position-absolute {
position: absolute !important; }
.position-fixed {
position: fixed !important; }
.position-sticky {
position: -webkit-sticky !important;
position: sticky !important; }
.top-0 {
top: 0 !important; }
.top-1 {
top: 1% !important; }
.top-2 {
top: 2% !important; }
.top-3 {
top: 3% !important; }
.top-4 {
top: 4% !important; }
.top-5 {
top: 5% !important; }
.top-6 {
top: 6% !important; }
.top-7 {
top: 7% !important; }
.top-8 {
top: 8% !important; }
.top-9 {
top: 9% !important; }
.top-10 {
top: 10% !important; }
.top-50 {
top: 50% !important; }
.top-100 {
top: 100% !important; }
.bottom-0 {
bottom: 0 !important; }
.bottom-1 {
bottom: 1% !important; }
.bottom-2 {
bottom: 2% !important; }
.bottom-3 {
bottom: 3% !important; }
.bottom-4 {
bottom: 4% !important; }
.bottom-5 {
bottom: 5% !important; }
.bottom-6 {
bottom: 6% !important
gitextract_epoal5j9/
├── .vscode/
│ └── settings.json
├── CHANGELOG.md
├── ISSUE_TEMPLATE.md
├── README.md
├── changelog.md
├── composer.json
├── license.md
└── src/
├── MaterialPreset.php
├── MaterialPresetServiceProvider.php
└── material-stubs/
├── app/
│ ├── Console/
│ │ └── Kernel.php
│ ├── Exceptions/
│ │ └── Handler.php
│ ├── Http/
│ │ ├── Controllers/
│ │ │ ├── Controller.php
│ │ │ ├── DashboardController.php
│ │ │ ├── ProfileController.php
│ │ │ ├── RegisterController.php
│ │ │ └── SessionsController.php
│ │ ├── Kernel.php
│ │ └── Middleware/
│ │ ├── Authenticate.php
│ │ ├── EncryptCookies.php
│ │ ├── PreventRequestsDuringMaintenance.php
│ │ ├── RedirectIfAuthenticated.php
│ │ ├── TrimStrings.php
│ │ ├── TrustHosts.php
│ │ ├── TrustProxies.php
│ │ └── VerifyCsrfToken.php
│ ├── Models/
│ │ └── User.php
│ └── Providers/
│ ├── AppServiceProvider.php
│ ├── AuthServiceProvider.php
│ ├── BroadcastServiceProvider.php
│ ├── EventServiceProvider.php
│ └── RouteServiceProvider.php
├── database/
│ └── seeders/
│ └── DatabaseSeeder.php
├── migrations/
│ └── 2014_10_12_000000_create_users_table.php
├── resources/
│ ├── assets/
│ │ ├── css/
│ │ │ ├── material-dashboard.css
│ │ │ ├── nucleo-icons.css
│ │ │ └── nucleo-svg.css
│ │ └── js/
│ │ ├── app.js
│ │ └── bootstrap.js
│ ├── material/
│ │ ├── assets/
│ │ │ ├── css/
│ │ │ │ ├── demo.css
│ │ │ │ ├── docs.css
│ │ │ │ ├── material-dashboard.css
│ │ │ │ ├── nucleo-icons.css
│ │ │ │ └── nucleo-svg.css
│ │ │ ├── js/
│ │ │ │ ├── datatables.js
│ │ │ │ ├── docs.js
│ │ │ │ ├── jkanban.js
│ │ │ │ ├── material-dashboard.js
│ │ │ │ ├── multistep-form.js
│ │ │ │ ├── plugins/
│ │ │ │ │ ├── Chart.extension.js
│ │ │ │ │ ├── bootstrap-notify.js
│ │ │ │ │ └── world.js
│ │ │ │ └── prism.js
│ │ │ └── scss/
│ │ │ ├── material-dashboard/
│ │ │ │ ├── _accordion.scss
│ │ │ │ ├── _alert.scss
│ │ │ │ ├── _avatars.scss
│ │ │ │ ├── _backgrounds.scss
│ │ │ │ ├── _badge.scss
│ │ │ │ ├── _breadcrumbs.scss
│ │ │ │ ├── _buttons.scss
│ │ │ │ ├── _cards-extend.scss
│ │ │ │ ├── _cards.scss
│ │ │ │ ├── _components.scss
│ │ │ │ ├── _dark-version.scss
│ │ │ │ ├── _dropdown-extend.scss
│ │ │ │ ├── _dropdown.scss
│ │ │ │ ├── _dropup.scss
│ │ │ │ ├── _fixed-plugin.scss
│ │ │ │ ├── _floating-elements.scss
│ │ │ │ ├── _footer.scss
│ │ │ │ ├── _forms.scss
│ │ │ │ ├── _gradients.scss
│ │ │ │ ├── _header.scss
│ │ │ │ ├── _icons.scss
│ │ │ │ ├── _info-areas.scss
│ │ │ │ ├── _list-check.scss
│ │ │ │ ├── _misc-extend.scss
│ │ │ │ ├── _misc.scss
│ │ │ │ ├── _nav.scss
│ │ │ │ ├── _navbar-vertical.scss
│ │ │ │ ├── _navbar.scss
│ │ │ │ ├── _pagination.scss
│ │ │ │ ├── _popovers.scss
│ │ │ │ ├── _progress.scss
│ │ │ │ ├── _ripple.scss
│ │ │ │ ├── _rtl-extend.scss
│ │ │ │ ├── _rtl.scss
│ │ │ │ ├── _social-buttons.scss
│ │ │ │ ├── _tables.scss
│ │ │ │ ├── _tilt.scss
│ │ │ │ ├── _timeline.scss
│ │ │ │ ├── _tooltips.scss
│ │ │ │ ├── _typography.scss
│ │ │ │ ├── _utilities-extend.scss
│ │ │ │ ├── _utilities.scss
│ │ │ │ ├── _variables.scss
│ │ │ │ ├── badges/
│ │ │ │ │ ├── _badge-circle.scss
│ │ │ │ │ ├── _badge-dot.scss
│ │ │ │ │ ├── _badge-floating.scss
│ │ │ │ │ └── _badge.scss
│ │ │ │ ├── bootstrap/
│ │ │ │ │ ├── _accordion.scss
│ │ │ │ │ ├── _alert.scss
│ │ │ │ │ ├── _badge.scss
│ │ │ │ │ ├── _breadcrumb.scss
│ │ │ │ │ ├── _button-group.scss
│ │ │ │ │ ├── _buttons.scss
│ │ │ │ │ ├── _card.scss
│ │ │ │ │ ├── _carousel.scss
│ │ │ │ │ ├── _close.scss
│ │ │ │ │ ├── _containers.scss
│ │ │ │ │ ├── _dropdown.scss
│ │ │ │ │ ├── _forms.scss
│ │ │ │ │ ├── _functions.scss
│ │ │ │ │ ├── _grid.scss
│ │ │ │ │ ├── _helpers.scss
│ │ │ │ │ ├── _images.scss
│ │ │ │ │ ├── _list-group.scss
│ │ │ │ │ ├── _mixins.scss
│ │ │ │ │ ├── _modal.scss
│ │ │ │ │ ├── _nav.scss
│ │ │ │ │ ├── _navbar.scss
│ │ │ │ │ ├── _offcanvas.scss
│ │ │ │ │ ├── _pagination.scss
│ │ │ │ │ ├── _placeholders.scss
│ │ │ │ │ ├── _popover.scss
│ │ │ │ │ ├── _progress.scss
│ │ │ │ │ ├── _reboot.scss
│ │ │ │ │ ├── _root.scss
│ │ │ │ │ ├── _spinners.scss
│ │ │ │ │ ├── _tables.scss
│ │ │ │ │ ├── _toasts.scss
│ │ │ │ │ ├── _tooltip.scss
│ │ │ │ │ ├── _transitions.scss
│ │ │ │ │ ├── _type.scss
│ │ │ │ │ ├── _utilities.scss
│ │ │ │ │ ├── _variables.scss
│ │ │ │ │ ├── bootstrap-grid.scss
│ │ │ │ │ ├── bootstrap-reboot.scss
│ │ │ │ │ ├── bootstrap-utilities.scss
│ │ │ │ │ ├── bootstrap.scss
│ │ │ │ │ ├── forms/
│ │ │ │ │ │ ├── _floating-labels.scss
│ │ │ │ │ │ ├── _form-check.scss
│ │ │ │ │ │ ├── _form-control.scss
│ │ │ │ │ │ ├── _form-range.scss
│ │ │ │ │ │ ├── _form-select.scss
│ │ │ │ │ │ ├── _form-text.scss
│ │ │ │ │ │ ├── _input-group.scss
│ │ │ │ │ │ ├── _labels.scss
│ │ │ │ │ │ └── _validation.scss
│ │ │ │ │ ├── helpers/
│ │ │ │ │ │ ├── _clearfix.scss
│ │ │ │ │ │ ├── _colored-links.scss
│ │ │ │ │ │ ├── _position.scss
│ │ │ │ │ │ ├── _ratio.scss
│ │ │ │ │ │ ├── _stacks.scss
│ │ │ │ │ │ ├── _stretched-link.scss
│ │ │ │ │ │ ├── _text-truncation.scss
│ │ │ │ │ │ ├── _visually-hidden.scss
│ │ │ │ │ │ └── _vr.scss
│ │ │ │ │ ├── mixins/
│ │ │ │ │ │ ├── _alert.scss
│ │ │ │ │ │ ├── _backdrop.scss
│ │ │ │ │ │ ├── _border-radius.scss
│ │ │ │ │ │ ├── _box-shadow.scss
│ │ │ │ │ │ ├── _breakpoints.scss
│ │ │ │ │ │ ├── _buttons.scss
│ │ │ │ │ │ ├── _caret.scss
│ │ │ │ │ │ ├── _clearfix.scss
│ │ │ │ │ │ ├── _color-scheme.scss
│ │ │ │ │ │ ├── _container.scss
│ │ │ │ │ │ ├── _deprecate.scss
│ │ │ │ │ │ ├── _forms.scss
│ │ │ │ │ │ ├── _gradients.scss
│ │ │ │ │ │ ├── _grid.scss
│ │ │ │ │ │ ├── _image.scss
│ │ │ │ │ │ ├── _list-group.scss
│ │ │ │ │ │ ├── _lists.scss
│ │ │ │ │ │ ├── _pagination.scss
│ │ │ │ │ │ ├── _reset-text.scss
│ │ │ │ │ │ ├── _resize.scss
│ │ │ │ │ │ ├── _table-variants.scss
│ │ │ │ │ │ ├── _text-truncate.scss
│ │ │ │ │ │ ├── _transition.scss
│ │ │ │ │ │ ├── _utilities.scss
│ │ │ │ │ │ └── _visually-hidden.scss
│ │ │ │ │ ├── utilities/
│ │ │ │ │ │ └── _api.scss
│ │ │ │ │ └── vendor/
│ │ │ │ │ └── _rfs.scss
│ │ │ │ ├── cards/
│ │ │ │ │ ├── card-background.scss
│ │ │ │ │ ├── card-blog.scss
│ │ │ │ │ ├── card-horizontal.scss
│ │ │ │ │ ├── card-pricing.scss
│ │ │ │ │ ├── card-profile.scss
│ │ │ │ │ └── card-rotate.scss
│ │ │ │ ├── custom/
│ │ │ │ │ ├── _styles.scss
│ │ │ │ │ └── _variables.scss
│ │ │ │ ├── forms/
│ │ │ │ │ ├── _form-check.scss
│ │ │ │ │ ├── _form-select.scss
│ │ │ │ │ ├── _form-switch.scss
│ │ │ │ │ ├── _forms.scss
│ │ │ │ │ ├── _input-group.scss
│ │ │ │ │ ├── _inputs.scss
│ │ │ │ │ └── _labels.scss
│ │ │ │ ├── mixins/
│ │ │ │ │ ├── _badge.scss
│ │ │ │ │ ├── _buttons.scss
│ │ │ │ │ ├── _colored-shadows.scss
│ │ │ │ │ ├── _hover.scss
│ │ │ │ │ ├── _social-buttons.scss
│ │ │ │ │ ├── _vendor.scss
│ │ │ │ │ └── mixins.scss
│ │ │ │ ├── plugins/
│ │ │ │ │ ├── free/
│ │ │ │ │ │ ├── _flatpickr.scss
│ │ │ │ │ │ ├── _nouislider.scss
│ │ │ │ │ │ ├── _perfect-scrollbar.scss
│ │ │ │ │ │ ├── _prism.scss
│ │ │ │ │ │ └── plugins.scss
│ │ │ │ │ └── pro/
│ │ │ │ │ ├── _carousel-slick.scss
│ │ │ │ │ ├── _choices.scss
│ │ │ │ │ ├── _datatable-extend.scss
│ │ │ │ │ ├── _datatable.scss
│ │ │ │ │ ├── _dragula.scss
│ │ │ │ │ ├── _dropzone.scss
│ │ │ │ │ ├── _fullcalendar-extend.scss
│ │ │ │ │ ├── _fullcalendar.scss
│ │ │ │ │ ├── _glidejs.scss
│ │ │ │ │ ├── _highlight.scss
│ │ │ │ │ ├── _kanban.scss
│ │ │ │ │ ├── _leaflet.scss
│ │ │ │ │ ├── _list-check.scss
│ │ │ │ │ ├── _photoswipe.scss
│ │ │ │ │ ├── _quill.scss
│ │ │ │ │ ├── _rating-widget.scss
│ │ │ │ │ ├── _sweetalert2-extend.scss
│ │ │ │ │ ├── _sweetalert2.scss
│ │ │ │ │ ├── _vector-map.scss
│ │ │ │ │ ├── multi-step.scss
│ │ │ │ │ └── plugins-extend.scss
│ │ │ │ ├── theme-pro.scss
│ │ │ │ ├── theme.scss
│ │ │ │ └── variables/
│ │ │ │ ├── _animations.scss
│ │ │ │ ├── _avatars.scss
│ │ │ │ ├── _badge.scss
│ │ │ │ ├── _breadcrumb.scss
│ │ │ │ ├── _cards-extend.scss
│ │ │ │ ├── _cards.scss
│ │ │ │ ├── _choices.scss
│ │ │ │ ├── _dark-version.scss
│ │ │ │ ├── _dropdowns.scss
│ │ │ │ ├── _fixed-plugin.scss
│ │ │ │ ├── _form-switch.scss
│ │ │ │ ├── _full-calendar.scss
│ │ │ │ ├── _header.scss
│ │ │ │ ├── _info-areas.scss
│ │ │ │ ├── _misc-extend.scss
│ │ │ │ ├── _misc.scss
│ │ │ │ ├── _navbar-vertical.scss
│ │ │ │ ├── _navbar.scss
│ │ │ │ ├── _pagination.scss
│ │ │ │ ├── _ripple.scss
│ │ │ │ ├── _rtl.scss
│ │ │ │ ├── _social-buttons.scss
│ │ │ │ ├── _table.scss
│ │ │ │ ├── _timeline.scss
│ │ │ │ ├── _utilities-extend.scss
│ │ │ │ ├── _utilities.scss
│ │ │ │ └── _virtual-reality.scss
│ │ │ └── material-dashboard.scss
│ │ └── documentation/
│ │ ├── components/
│ │ │ ├── alerts.html
│ │ │ ├── badge.html
│ │ │ ├── buttons.html
│ │ │ ├── cards.html
│ │ │ ├── carousel.html
│ │ │ ├── collapse.html
│ │ │ ├── dropdowns.html
│ │ │ ├── forms.html
│ │ │ ├── input-group.html
│ │ │ ├── list-group.html
│ │ │ ├── modal.html
│ │ │ ├── navbar.html
│ │ │ ├── navs.html
│ │ │ ├── pagination.html
│ │ │ ├── popovers.html
│ │ │ ├── progress.html
│ │ │ ├── social-buttons.html
│ │ │ ├── spinners.html
│ │ │ ├── tables.html
│ │ │ └── tooltips.html
│ │ ├── foundation/
│ │ │ ├── colors.html
│ │ │ ├── grid.html
│ │ │ ├── icons.html
│ │ │ ├── typography.html
│ │ │ └── utilities.html
│ │ ├── getting-started/
│ │ │ ├── bootstrap.html
│ │ │ ├── build-tools.html
│ │ │ ├── installation.html
│ │ │ ├── license.html
│ │ │ └── overview.html
│ │ ├── laravel/
│ │ │ ├── forgot-password.html
│ │ │ ├── login.html
│ │ │ ├── sign-up.html
│ │ │ ├── user-management.html
│ │ │ └── user-profile.html
│ │ └── plugins/
│ │ ├── charts.html
│ │ ├── choices.html
│ │ ├── countUpJs.html
│ │ ├── datatables.html
│ │ ├── datepicker.html
│ │ ├── dropzone.html
│ │ ├── fullcalendar.html
│ │ ├── kanban.html
│ │ ├── photo-swipe.html
│ │ ├── quill.html
│ │ ├── sliders.html
│ │ ├── sweet-alerts.html
│ │ └── wizard.html
│ └── views/
│ ├── components/
│ │ ├── footers/
│ │ │ ├── auth.blade.php
│ │ │ └── guest.blade.php
│ │ ├── layout.blade.php
│ │ ├── navbars/
│ │ │ ├── navs/
│ │ │ │ ├── auth.blade.php
│ │ │ │ └── guest.blade.php
│ │ │ └── sidebar.blade.php
│ │ └── plugins.blade.php
│ ├── dashboard/
│ │ └── index.blade.php
│ ├── errors/
│ │ ├── 401.blade.php
│ │ ├── 403.blade.php
│ │ ├── 404.blade.php
│ │ ├── 405.blade.php
│ │ ├── 419.blade.php
│ │ ├── 429.blade.php
│ │ ├── 500.blade.php
│ │ └── 503.blade.php
│ ├── pages/
│ │ ├── billing.blade.php
│ │ ├── laravel-examples/
│ │ │ ├── user-management.blade.php
│ │ │ └── user-profile.blade.php
│ │ ├── notifications.blade.php
│ │ ├── profile.blade.php
│ │ ├── rtl.blade.php
│ │ ├── static-sign-in.blade.php
│ │ ├── static-sign-up.blade.php
│ │ ├── tables.blade.php
│ │ └── virtual-reality.blade.php
│ ├── register/
│ │ └── create.blade.php
│ ├── sessions/
│ │ ├── create.blade.php
│ │ └── password/
│ │ ├── reset.blade.php
│ │ └── verify.blade.php
│ └── welcome.blade.php
└── webpack.mix.js
SYMBOL INDEX (211 symbols across 34 files)
FILE: src/MaterialPreset.php
class MaterialPreset (line 8) | class MaterialPreset extends Preset
method install (line 17) | public static function install()
method deleteResource (line 32) | private static function deleteResource($resource)
method copyFile (line 44) | private static function copyFile($file, $destination)
method copyDirectory (line 56) | private static function copyDirectory($directory, $destination)
method updateAssets (line 66) | protected static function updateAssets()
method updateWelcomePage (line 81) | protected static function updateWelcomePage()
method addComponents (line 95) | protected static function addComponents()
method updateAuthViews (line 106) | protected static function updateAuthViews()
method addPages (line 134) | public static function addPages()
FILE: src/MaterialPresetServiceProvider.php
class MaterialPresetServiceProvider (line 8) | class MaterialPresetServiceProvider extends ServiceProvider
method boot (line 15) | public function boot()
method register (line 29) | public function register()
FILE: src/material-stubs/app/Console/Kernel.php
class Kernel (line 8) | class Kernel extends ConsoleKernel
method schedule (line 25) | protected function schedule(Schedule $schedule)
method commands (line 35) | protected function commands()
FILE: src/material-stubs/app/Exceptions/Handler.php
class Handler (line 8) | class Handler extends ExceptionHandler
method register (line 35) | public function register()
FILE: src/material-stubs/app/Http/Controllers/Controller.php
class Controller (line 10) | class Controller extends BaseController
FILE: src/material-stubs/app/Http/Controllers/DashboardController.php
class DashboardController (line 7) | class DashboardController extends Controller
method index (line 9) | public function index()
FILE: src/material-stubs/app/Http/Controllers/ProfileController.php
class ProfileController (line 7) | class ProfileController extends Controller
method create (line 9) | public function create()
method update (line 14) | public function update()
FILE: src/material-stubs/app/Http/Controllers/RegisterController.php
class RegisterController (line 8) | class RegisterController extends Controller
method create (line 10) | public function create()
method store (line 15) | public function store(){
FILE: src/material-stubs/app/Http/Controllers/SessionsController.php
class SessionsController (line 13) | class SessionsController extends Controller
method create (line 15) | public function create()
method store (line 20) | public function store()
method show (line 39) | public function show(){
method update (line 54) | public function update(){
method destroy (line 80) | public function destroy()
FILE: src/material-stubs/app/Http/Kernel.php
class Kernel (line 7) | class Kernel extends HttpKernel
FILE: src/material-stubs/app/Http/Middleware/Authenticate.php
class Authenticate (line 7) | class Authenticate extends Middleware
method redirectTo (line 15) | protected function redirectTo($request)
FILE: src/material-stubs/app/Http/Middleware/EncryptCookies.php
class EncryptCookies (line 7) | class EncryptCookies extends Middleware
FILE: src/material-stubs/app/Http/Middleware/PreventRequestsDuringMaintenance.php
class PreventRequestsDuringMaintenance (line 7) | class PreventRequestsDuringMaintenance extends Middleware
FILE: src/material-stubs/app/Http/Middleware/RedirectIfAuthenticated.php
class RedirectIfAuthenticated (line 10) | class RedirectIfAuthenticated
method handle (line 20) | public function handle(Request $request, Closure $next, ...$guards)
FILE: src/material-stubs/app/Http/Middleware/TrimStrings.php
class TrimStrings (line 7) | class TrimStrings extends Middleware
FILE: src/material-stubs/app/Http/Middleware/TrustHosts.php
class TrustHosts (line 7) | class TrustHosts extends Middleware
method hosts (line 14) | public function hosts()
FILE: src/material-stubs/app/Http/Middleware/TrustProxies.php
class TrustProxies (line 8) | class TrustProxies extends Middleware
FILE: src/material-stubs/app/Http/Middleware/VerifyCsrfToken.php
class VerifyCsrfToken (line 7) | class VerifyCsrfToken extends Middleware
FILE: src/material-stubs/app/Models/User.php
class User (line 12) | class User extends Authenticatable
method setPasswordAttribute (line 50) | public function setPasswordAttribute($password)
FILE: src/material-stubs/app/Providers/AppServiceProvider.php
class AppServiceProvider (line 7) | class AppServiceProvider extends ServiceProvider
method register (line 14) | public function register()
method boot (line 24) | public function boot()
FILE: src/material-stubs/app/Providers/AuthServiceProvider.php
class AuthServiceProvider (line 8) | class AuthServiceProvider extends ServiceProvider
method boot (line 24) | public function boot()
FILE: src/material-stubs/app/Providers/BroadcastServiceProvider.php
class BroadcastServiceProvider (line 8) | class BroadcastServiceProvider extends ServiceProvider
method boot (line 15) | public function boot()
FILE: src/material-stubs/app/Providers/EventServiceProvider.php
class EventServiceProvider (line 10) | class EventServiceProvider extends ServiceProvider
method boot (line 28) | public function boot()
FILE: src/material-stubs/app/Providers/RouteServiceProvider.php
class RouteServiceProvider (line 11) | class RouteServiceProvider extends ServiceProvider
method boot (line 36) | public function boot()
method configureRateLimiting (line 57) | protected function configureRateLimiting()
FILE: src/material-stubs/database/seeders/DatabaseSeeder.php
class DatabaseSeeder (line 9) | class DatabaseSeeder extends Seeder
method run (line 16) | public function run()
FILE: src/material-stubs/migrations/2014_10_12_000000_create_users_table.php
class CreateUsersTable (line 7) | class CreateUsersTable extends Migration
method up (line 14) | public function up()
method down (line 35) | public function down()
FILE: src/material-stubs/resources/material/assets/js/datatables.js
function a (line 7) | function a(r,h){if(!s[r]){if(!e[r]){var o="function"==typeof require&&re...
function e (line 7) | function e(t,e){return t(e={exports:{}},e.exports),e.exports}
function u (line 7) | function u(t){this.$L=y(t.locale,null,!0),this.parse(t)}
method constructor (line 7) | constructor(t,e={}){if(this.initialized=!1,this.options={...c,...e,lay...
method extend (line 7) | static extend(t,e){"function"==typeof e?u.prototype[t]=e:u[t]=e}
method init (line 7) | init(t){if(this.initialized||this.table.classList.contains("dataTable-...
method render (line 7) | render(t){if(t){switch(t){case"page":this.renderPage();break;case"page...
method renderPage (line 7) | renderPage(){if(this.hasHeadings&&(n(this.header),this.activeHeadings....
method renderPager (line 7) | renderPager(){if(n(this.pagers),this.totalPages>1){const t="pager",e=d...
method renderHeader (line 7) | renderHeader(){this.labels=[],this.headings&&this.headings.length&&thi...
method bindEvents (line 7) | bindEvents(){const t=this.options;if(t.perPageSelect){const e=this.wra...
method onResize (line 7) | onResize(){this.rect=this.container.getBoundingClientRect(),this.rect....
method setColumns (line 7) | setColumns(t){t||this.data.forEach((t=>{Array.from(t.cells).forEach((t...
method destroy (line 7) | destroy(){this.table.innerHTML=this.initialLayout,this.table.classList...
method update (line 7) | update(){this.wrapper.classList.remove("dataTable-empty"),this.paginat...
method paginate (line 7) | paginate(){const t=this.options.perPage;let e=this.activeRows;return t...
method fixColumns (line 7) | fixColumns(){if((this.options.scrollY.length||this.options.fixedColumn...
method fixHeight (line 7) | fixHeight(){this.options.fixedHeight&&(this.container.style.height=nul...
method search (line 7) | search(t){return!!this.hasRows&&(t=t.toLowerCase(),this.currentPage=1,...
method page (line 7) | page(t){return t!=this.currentPage&&(isNaN(t)||(this.currentPage=parse...
method sortColumn (line 7) | sortColumn(t,e){this.columns().sort(t,e)}
method insert (line 7) | insert(t){let e=[];if(i(t)){if(t.headings&&!this.hasHeadings&&!this.ha...
method refresh (line 7) | refresh(){this.options.searchable&&(this.input.value="",this.searching...
method clear (line 7) | clear(t){this.body&&n(this.body);let e=this.body;this.body||(e=this.ta...
method export (line 7) | export(t){if(!this.hasHeadings&&!this.hasRows)return!1;const e=this.ac...
method import (line 7) | import(t){let e=!1;if(!i(t))return!1;const s={lineDelimiter:"\n",colum...
method print (line 7) | print(){const t=this.activeHeadings,e=this.activeRows,s=a("table"),i=a...
method setMessage (line 7) | setMessage(t){let e=1;this.hasRows?e=this.data[0].cells.length:this.ac...
method columns (line 7) | columns(t){return new l(this,t)}
method rows (line 7) | rows(t){return new o(this,t)}
method on (line 7) | on(t,e){this.events=this.events||{},this.events[t]=this.events[t]||[],...
method off (line 7) | off(t,e){this.events=this.events||{},t in this.events!=0&&this.events[...
method emit (line 7) | emit(t){if(this.events=this.events||{},t in this.events!=0)for(let e=0...
class o (line 7) | class o{constructor(t,e){return this.dt=t,this.rows=e,this}build(t){cons...
method constructor (line 7) | constructor(t,e){return this.dt=t,this.rows=e,this}
method build (line 7) | build(t){const e=a("tr");let s=this.dt.headings;return s.length||(s=t....
method render (line 7) | render(t){return t}
method add (line 7) | add(t){if(Array.isArray(t)){const e=this.dt;Array.isArray(t[0])?t.forE...
method remove (line 7) | remove(t){const e=this.dt;Array.isArray(t)?(t.sort(((t,e)=>e-t)),t.for...
method update (line 7) | update(){this.dt.data.forEach(((t,e)=>{t.dataIndex=e}))}
class l (line 7) | class l{constructor(t){return this.dt=t,this}swap(t){if(t.length&&2===t....
method constructor (line 7) | constructor(t){return this.dt=t,this}
method swap (line 7) | swap(t){if(t.length&&2===t.length){const e=[];this.dt.headings.forEach...
method order (line 7) | order(t){let e,s,i,a,n,r,h;const o=[[],[],[],[]],l=this.dt;t.forEach((...
method hide (line 7) | hide(t){if(t.length){const e=this.dt;t.forEach((t=>{e.hiddenColumns.in...
method show (line 7) | show(t){if(t.length){let e;const s=this.dt;t.forEach((t=>{e=s.hiddenCo...
method visible (line 7) | visible(t){let e;const s=this.dt;return t=t||s.headings.map((t=>t.orig...
method add (line 7) | add(t){let e;const s=document.createElement("th");if(!this.dt.headings...
method remove (line 7) | remove(t){Array.isArray(t)?(t.sort(((t,e)=>e-t)),t.forEach((t=>this.re...
method filter (line 7) | filter(t,e,s,i){const a=this.dt;if(a.filterState||(a.filterState={orig...
method sort (line 7) | sort(e,s,i){const a=this.dt;if(a.hasHeadings&&(e<0||e>a.headings.lengt...
method rebuild (line 7) | rebuild(){let t,e,s,i;const a=this.dt,n=[];a.activeRows=[],a.activeHea...
class u (line 7) | class u{constructor(t,e={}){if(this.initialized=!1,this.options={...c,.....
method constructor (line 7) | constructor(t,e={}){if(this.initialized=!1,this.options={...c,...e,lay...
method extend (line 7) | static extend(t,e){"function"==typeof e?u.prototype[t]=e:u[t]=e}
method init (line 7) | init(t){if(this.initialized||this.table.classList.contains("dataTable-...
method render (line 7) | render(t){if(t){switch(t){case"page":this.renderPage();break;case"page...
method renderPage (line 7) | renderPage(){if(this.hasHeadings&&(n(this.header),this.activeHeadings....
method renderPager (line 7) | renderPager(){if(n(this.pagers),this.totalPages>1){const t="pager",e=d...
method renderHeader (line 7) | renderHeader(){this.labels=[],this.headings&&this.headings.length&&thi...
method bindEvents (line 7) | bindEvents(){const t=this.options;if(t.perPageSelect){const e=this.wra...
method onResize (line 7) | onResize(){this.rect=this.container.getBoundingClientRect(),this.rect....
method setColumns (line 7) | setColumns(t){t||this.data.forEach((t=>{Array.from(t.cells).forEach((t...
method destroy (line 7) | destroy(){this.table.innerHTML=this.initialLayout,this.table.classList...
method update (line 7) | update(){this.wrapper.classList.remove("dataTable-empty"),this.paginat...
method paginate (line 7) | paginate(){const t=this.options.perPage;let e=this.activeRows;return t...
method fixColumns (line 7) | fixColumns(){if((this.options.scrollY.length||this.options.fixedColumn...
method fixHeight (line 7) | fixHeight(){this.options.fixedHeight&&(this.container.style.height=nul...
method search (line 7) | search(t){return!!this.hasRows&&(t=t.toLowerCase(),this.currentPage=1,...
method page (line 7) | page(t){return t!=this.currentPage&&(isNaN(t)||(this.currentPage=parse...
method sortColumn (line 7) | sortColumn(t,e){this.columns().sort(t,e)}
method insert (line 7) | insert(t){let e=[];if(i(t)){if(t.headings&&!this.hasHeadings&&!this.ha...
method refresh (line 7) | refresh(){this.options.searchable&&(this.input.value="",this.searching...
method clear (line 7) | clear(t){this.body&&n(this.body);let e=this.body;this.body||(e=this.ta...
method export (line 7) | export(t){if(!this.hasHeadings&&!this.hasRows)return!1;const e=this.ac...
method import (line 7) | import(t){let e=!1;if(!i(t))return!1;const s={lineDelimiter:"\n",colum...
method print (line 7) | print(){const t=this.activeHeadings,e=this.activeRows,s=a("table"),i=a...
method setMessage (line 7) | setMessage(t){let e=1;this.hasRows?e=this.data[0].cells.length:this.ac...
method columns (line 7) | columns(t){return new l(this,t)}
method rows (line 7) | rows(t){return new o(this,t)}
method on (line 7) | on(t,e){this.events=this.events||{},this.events[t]=this.events[t]||[],...
method off (line 7) | off(t,e){this.events=this.events||{},t in this.events!=0&&this.events[...
method emit (line 7) | emit(t){if(this.events=this.events||{},t in this.events!=0)for(let e=0...
FILE: src/material-stubs/resources/material/assets/js/docs.js
function dropdownEvent (line 23) | function dropdownEvent(event) {
FILE: src/material-stubs/resources/material/assets/js/jkanban.js
function r (line 1) | function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==...
function __extendDefaults (line 433) | function __extendDefaults(source, properties) {
function __setBoard (line 443) | function __setBoard() {
function __onclickHandler (line 455) | function __onclickHandler(nodeItem, clickfn) {
function __onButtonClickHandler (line 463) | function __onButtonClickHandler(nodeItem, boardId) {
function __findBoardJSON (line 472) | function __findBoardJSON(id) {
function __appendCustomProperties (line 482) | function __appendCustomProperties(element, parentObject) {
function __updateBoardsOrder (line 495) | function __updateBoardsOrder() {
function __buildItemTitle (line 502) | function __buildItemTitle(title) {
function addEventEasy (line 621) | function addEventEasy (el, type, fn, capturing) {
function addEventHard (line 625) | function addEventHard (el, type, fn) {
function removeEventEasy (line 629) | function removeEventEasy (el, type, fn, capturing) {
function removeEventHard (line 633) | function removeEventHard (el, type, fn) {
function fabricateEvent (line 640) | function fabricateEvent (el, type, model) {
function wrapperFactory (line 662) | function wrapperFactory (el, type, fn) {
function wrap (line 673) | function wrap (el, type, fn) {
function unwrap (line 684) | function unwrap (el, type, fn) {
function find (line 693) | function find (el, type, fn) {
function useNative (line 726) | function useNative () {
function lookupClass (line 780) | function lookupClass (className) {
function addClass (line 790) | function addClass (el, className) {
function rmClass (line 799) | function rmClass (el, className) {
function dragula (line 818) | function dragula (initialContainers, options) {
function touchy (line 1304) | function touchy (el, op, type, fn) {
function whichMouseButton (line 1330) | function whichMouseButton (e) {
function getOffset (line 1340) | function getOffset (el) {
function getScroll (line 1348) | function getScroll (scrollProp, offsetProp) {
function getElementBehindPoint (line 1358) | function getElementBehindPoint (point, x, y) {
function never (line 1368) | function never () { return false; }
function always (line 1369) | function always () { return true; }
function getRectWidth (line 1370) | function getRectWidth (rect) { return rect.width || (rect.right - rect.l...
function getRectHeight (line 1371) | function getRectHeight (rect) { return rect.height || (rect.bottom - rec...
function getParent (line 1372) | function getParent (el) { return el.parentNode === doc ? null : el.paren...
function isInput (line 1373) | function isInput (el) { return el.tagName === 'INPUT' || el.tagName === ...
function isEditable (line 1374) | function isEditable (el) {
function nextEl (line 1381) | function nextEl (el) {
function getEventHost (line 1392) | function getEventHost (e) {
function getCoord (line 1405) | function getCoord (coord, e) {
function defaultSetTimout (line 1432) | function defaultSetTimout() {
function defaultClearTimeout (line 1435) | function defaultClearTimeout () {
function runTimeout (line 1458) | function runTimeout(fun) {
function runClearTimeout (line 1483) | function runClearTimeout(marker) {
function cleanUpNextTick (line 1515) | function cleanUpNextTick() {
function drainQueue (line 1530) | function drainQueue() {
function Item (line 1568) | function Item(fun, array) {
function noop (line 1582) | function noop() {}
function Timeout (line 1636) | function Timeout(id, clearFn) {
FILE: src/material-stubs/resources/material/assets/js/material-dashboard.js
function focused (line 41) | function focused(el) {
function defocused (line 48) | function defocused(el) {
function setAttributes (line 55) | function setAttributes(el, options) {
function sidebarColor (line 124) | function sidebarColor(a) {
function sidebarType (line 150) | function sidebarType(a) {
function navbarFixed (line 233) | function navbarFixed(el) {
function navbarMinimize (line 252) | function navbarMinimize(el) {
function navbarBlurOnScroll (line 267) | function navbarBlurOnScroll(id) {
function debounce (line 350) | function debounce(func, wait, immediate) {
function initNavs (line 392) | function initNavs() {
function getEventTarget (line 532) | function getEventTarget(e) {
function toggleSidenav (line 602) | function toggleSidenav() {
function navbarColorOnResize (line 624) | function navbarColorOnResize() {
function sidenavTypeOnResize (line 641) | function sidenavTypeOnResize() {
function darkMode (line 656) | function darkMode(el) {
FILE: src/material-stubs/resources/material/assets/js/plugins/Chart.extension.js
function cornerAt (line 82) | function cornerAt(index) {
FILE: src/material-stubs/resources/material/assets/js/plugins/bootstrap-notify.js
function isDuplicateNotification (line 81) | function isDuplicateNotification(notification) {
function Notify (line 106) | function Notify(element, content, options) {
FILE: src/material-stubs/resources/material/assets/js/plugins/world.js
function t (line 44) | function t(t) {
function h (line 92) | function h(t, e) {
function l (line 97) | function l(t, e, i) {
function c (line 103) | function c(t) {
function u (line 111) | function u(t, e) {
function p (line 119) | function p(t, e, i) {
function m (line 181) | function m(t, e) {
function g (line 185) | function g(t, e) {
function t (line 191) | function t(t, e) {
function e (line 214) | function e(e, i, s) {
function e (line 230) | function e(e, i) {
function e (line 238) | function e(e, i) {
function e (line 247) | function e(e) {
function k (line 282) | function k(t, e, i) {
function t (line 296) | function t() {}
function e (line 321) | function e(e) {
function e (line 356) | function e(e) {
function j (line 376) | function j(t, e) {
function e (line 380) | function e(e) {
function t (line 426) | function t(t) {
function t (line 455) | function t(t) {
function t (line 471) | function t(t, e, i) {
function t (line 537) | function t(t, e) {
function t (line 832) | function t(e) {
function t (line 996) | function t(t) {
FILE: src/material-stubs/resources/material/assets/js/prism.js
function insertHighlightedCode (line 282) | function insertHighlightedCode(highlightedCode) {
function Token (line 512) | function Token(type, content, alias, matchedStr, greedy) {
function highlightAutomaticallyCallback (line 591) | function highlightAutomaticallyCallback() {
Condensed preview — 342 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (5,996K chars).
[
{
"path": ".vscode/settings.json",
"chars": 188,
"preview": "{\n \"workbench.colorCustomizations\": {\n \"activityBar.background\": \"#511B26\",\n \"titleBar.activeBackground"
},
{
"path": "CHANGELOG.md",
"chars": 738,
"preview": "# Changelog\nAll notable changes to `Material Dashboard Laravel` frontend preset for Laravel will be documented in this f"
},
{
"path": "ISSUE_TEMPLATE.md",
"chars": 1044,
"preview": "# Prerequisites\n\nPlease answer the following questions for yourself before submitting an issue.\n\n- [ ] I am running the "
},
{
"path": "README.md",
"chars": 17437,
"preview": "# [Material Dashboard 2 Laravel - Free](https://material-dashboard-laravel.creative-tim.com)\n\n 2022 Creative Tim (https://www.creative-tim.com)\n\nPermission is hereby granted, free of charg"
},
{
"path": "src/MaterialPreset.php",
"chars": 6910,
"preview": "<?php\n\nnamespace LaravelFrontendPresets\\MaterialPreset;\n\nuse Illuminate\\Filesystem\\Filesystem;\nuse Laravel\\Ui\\Presets\\Pr"
},
{
"path": "src/MaterialPresetServiceProvider.php",
"chars": 659,
"preview": "<?php\n\nnamespace LaravelFrontendPresets\\MaterialPreset;\n\nuse Illuminate\\Support\\ServiceProvider;\nuse Laravel\\Ui\\UiComman"
},
{
"path": "src/material-stubs/app/Console/Kernel.php",
"chars": 827,
"preview": "<?php\n\nnamespace App\\Console;\n\nuse Illuminate\\Console\\Scheduling\\Schedule;\nuse Illuminate\\Foundation\\Console\\Kernel as C"
},
{
"path": "src/material-stubs/app/Exceptions/Handler.php",
"chars": 787,
"preview": "<?php\n\nnamespace App\\Exceptions;\n\nuse Illuminate\\Foundation\\Exceptions\\Handler as ExceptionHandler;\nuse Throwable;\n\nclas"
},
{
"path": "src/material-stubs/app/Http/Controllers/Controller.php",
"chars": 361,
"preview": "<?php\n\nnamespace App\\Http\\Controllers;\n\nuse Illuminate\\Foundation\\Auth\\Access\\AuthorizesRequests;\nuse Illuminate\\Foundat"
},
{
"path": "src/material-stubs/app/Http/Controllers/DashboardController.php",
"chars": 199,
"preview": "<?php\n\nnamespace App\\Http\\Controllers;\n\nuse Illuminate\\Http\\Request;\n\nclass DashboardController extends Controller\n{\n "
},
{
"path": "src/material-stubs/app/Http/Controllers/ProfileController.php",
"chars": 684,
"preview": "<?php\n\nnamespace App\\Http\\Controllers;\n\nuse Illuminate\\Http\\Request;\n\nclass ProfileController extends Controller\n{\n p"
},
{
"path": "src/material-stubs/app/Http/Controllers/RegisterController.php",
"chars": 598,
"preview": "<?php\n\nnamespace App\\Http\\Controllers;\n\nuse Illuminate\\Http\\Request;\nuse App\\Models\\User;\n\nclass RegisterController exte"
},
{
"path": "src/material-stubs/app/Http/Controllers/SessionsController.php",
"chars": 2186,
"preview": "<?php\n\nnamespace App\\Http\\Controllers;\n\nUse Str;\nUse Hash;\nuse Illuminate\\Auth\\Events\\PasswordReset;\nuse App\\Models\\User"
},
{
"path": "src/material-stubs/app/Http/Kernel.php",
"chars": 2484,
"preview": "<?php\n\nnamespace App\\Http;\n\nuse Illuminate\\Foundation\\Http\\Kernel as HttpKernel;\n\nclass Kernel extends HttpKernel\n{\n "
},
{
"path": "src/material-stubs/app/Http/Middleware/Authenticate.php",
"chars": 469,
"preview": "<?php\n\nnamespace App\\Http\\Middleware;\n\nuse Illuminate\\Auth\\Middleware\\Authenticate as Middleware;\n\nclass Authenticate ex"
},
{
"path": "src/material-stubs/app/Http/Middleware/EncryptCookies.php",
"chars": 294,
"preview": "<?php\n\nnamespace App\\Http\\Middleware;\n\nuse Illuminate\\Cookie\\Middleware\\EncryptCookies as Middleware;\n\nclass EncryptCook"
},
{
"path": "src/material-stubs/app/Http/Middleware/PreventRequestsDuringMaintenance.php",
"chars": 353,
"preview": "<?php\n\nnamespace App\\Http\\Middleware;\n\nuse Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance as Mid"
},
{
"path": "src/material-stubs/app/Http/Middleware/RedirectIfAuthenticated.php",
"chars": 734,
"preview": "<?php\n\nnamespace App\\Http\\Middleware;\n\nuse App\\Providers\\RouteServiceProvider;\nuse Closure;\nuse Illuminate\\Http\\Request;"
},
{
"path": "src/material-stubs/app/Http/Middleware/TrimStrings.php",
"chars": 368,
"preview": "<?php\n\nnamespace App\\Http\\Middleware;\n\nuse Illuminate\\Foundation\\Http\\Middleware\\TrimStrings as Middleware;\n\nclass TrimS"
},
{
"path": "src/material-stubs/app/Http/Middleware/TrustHosts.php",
"chars": 354,
"preview": "<?php\n\nnamespace App\\Http\\Middleware;\n\nuse Illuminate\\Http\\Middleware\\TrustHosts as Middleware;\n\nclass TrustHosts extend"
},
{
"path": "src/material-stubs/app/Http/Middleware/TrustProxies.php",
"chars": 636,
"preview": "<?php\n\nnamespace App\\Http\\Middleware;\n\nuse Illuminate\\Http\\Middleware\\TrustProxies as Middleware;\nuse Illuminate\\Http\\Re"
},
{
"path": "src/material-stubs/app/Http/Middleware/VerifyCsrfToken.php",
"chars": 307,
"preview": "<?php\n\nnamespace App\\Http\\Middleware;\n\nuse Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken as Middleware;\n\nclass V"
},
{
"path": "src/material-stubs/app/Models/User.php",
"chars": 1137,
"preview": "<?php\n\nnamespace App\\Models;\n\nuse Illuminate\\Contracts\\Auth\\MustVerifyEmail;\nuse Illuminate\\Database\\Eloquent\\Factories\\"
},
{
"path": "src/material-stubs/app/Providers/AppServiceProvider.php",
"chars": 403,
"preview": "<?php\n\nnamespace App\\Providers;\n\nuse Illuminate\\Support\\ServiceProvider;\n\nclass AppServiceProvider extends ServiceProvid"
},
{
"path": "src/material-stubs/app/Providers/AuthServiceProvider.php",
"chars": 585,
"preview": "<?php\n\nnamespace App\\Providers;\n\nuse Illuminate\\Foundation\\Support\\Providers\\AuthServiceProvider as ServiceProvider;\nuse"
},
{
"path": "src/material-stubs/app/Providers/BroadcastServiceProvider.php",
"chars": 380,
"preview": "<?php\n\nnamespace App\\Providers;\n\nuse Illuminate\\Support\\Facades\\Broadcast;\nuse Illuminate\\Support\\ServiceProvider;\n\nclas"
},
{
"path": "src/material-stubs/app/Providers/EventServiceProvider.php",
"chars": 685,
"preview": "<?php\n\nnamespace App\\Providers;\n\nuse Illuminate\\Auth\\Events\\Registered;\nuse Illuminate\\Auth\\Listeners\\SendEmailVerificat"
},
{
"path": "src/material-stubs/app/Providers/RouteServiceProvider.php",
"chars": 1685,
"preview": "<?php\n\nnamespace App\\Providers;\n\nuse Illuminate\\Cache\\RateLimiting\\Limit;\nuse Illuminate\\Foundation\\Support\\Providers\\Ro"
},
{
"path": "src/material-stubs/database/seeders/DatabaseSeeder.php",
"chars": 412,
"preview": "<?php\n\nnamespace Database\\Seeders;\n\nuse Illuminate\\Database\\Seeder;\nuse App\\Models\\User;\n\n\nclass DatabaseSeeder extends "
},
{
"path": "src/material-stubs/migrations/2014_10_12_000000_create_users_table.php",
"chars": 946,
"preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
},
{
"path": "src/material-stubs/resources/assets/css/material-dashboard.css",
"chars": 479995,
"preview": "/*!\n * Bootstrap v5.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2021 The Bootstrap Authors\n * Copyright 2011-2021 "
},
{
"path": "src/material-stubs/resources/assets/css/nucleo-icons.css",
"chars": 8821,
"preview": "/*--------------------------------\n\nhermes-dashboard-icons Web Font - built using nucleoapp.com\nLicense - nucleoapp.com/"
},
{
"path": "src/material-stubs/resources/assets/css/nucleo-svg.css",
"chars": 2253,
"preview": "/* Generated using nucleoapp.com */\n/* --------------------------------\n\nIcon colors\n\n-------------------------------- *"
},
{
"path": "src/material-stubs/resources/assets/js/app.js",
"chars": 24,
"preview": "require('./bootstrap');\n"
},
{
"path": "src/material-stubs/resources/assets/js/bootstrap.js",
"chars": 869,
"preview": "window._ = require('lodash');\n\n/**\n * We'll load the axios HTTP library which allows us to easily issue requests\n * to o"
},
{
"path": "src/material-stubs/resources/material/assets/css/demo.css",
"chars": 854,
"preview": "@media (min-width: 992px){\n.navbar.navbar-hover .nav-item.dropdown:hover>.dropdown-menu,\n.navbar.navbar-hover .nav-item."
},
{
"path": "src/material-stubs/resources/material/assets/css/docs.css",
"chars": 27937,
"preview": ".ct-docs-typography, [class*=\"ct-docs\"] {\n font-family: Open Sans, sans-serif;\n}\n\n.ct-docs-navbar {\n position: relativ"
},
{
"path": "src/material-stubs/resources/material/assets/css/material-dashboard.css",
"chars": 480668,
"preview": "/*!\n * Bootstrap v5.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2021 The Bootstrap Authors\n * Copyright 2011-2021 "
},
{
"path": "src/material-stubs/resources/material/assets/css/nucleo-icons.css",
"chars": 8821,
"preview": "/*--------------------------------\n\nhermes-dashboard-icons Web Font - built using nucleoapp.com\nLicense - nucleoapp.com/"
},
{
"path": "src/material-stubs/resources/material/assets/css/nucleo-svg.css",
"chars": 2253,
"preview": "/* Generated using nucleoapp.com */\n/* --------------------------------\n\nIcon colors\n\n-------------------------------- *"
},
{
"path": "src/material-stubs/resources/material/assets/js/datatables.js",
"chars": 37318,
"preview": "/**\n * Minified by jsDelivr using Terser v5.3.5.\n * Original file: /npm/simple-datatables@3.0.2/dist/umd/simple-datatabl"
},
{
"path": "src/material-stubs/resources/material/assets/js/docs.js",
"chars": 1585,
"preview": "(function () {\n let navbarToggler = document.getElementsByClassName(\"ct-docs-navbar-toggler\")[0];\n navbarToggler.addEv"
},
{
"path": "src/material-stubs/resources/material/assets/js/jkanban.js",
"chars": 50769,
"preview": "(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)ret"
},
{
"path": "src/material-stubs/resources/material/assets/js/material-dashboard.js",
"chars": 27542,
"preview": "\"use strict\";\n(function() {\n var isWindows = navigator.platform.indexOf('Win') > -1 ? true : false;\n\n if (isWindows) {"
},
{
"path": "src/material-stubs/resources/material/assets/js/multistep-form.js",
"chars": 3839,
"preview": "//DOM elements\nconst DOMstrings = {\n stepsBtnClass: 'multisteps-form__progress-btn',\n stepsBtns: document.querySelecto"
},
{
"path": "src/material-stubs/resources/material/assets/js/plugins/Chart.extension.js",
"chars": 3734,
"preview": "//\n// Chart extension for making the bars rounded\n// Code from: https://codepen.io/jedtrow/full/ygRYgo\n//\n\nChart.element"
},
{
"path": "src/material-stubs/resources/material/assets/js/plugins/bootstrap-notify.js",
"chars": 15612,
"preview": "/*\n\n\n\n Creative Tim Modifications\n\n Lines: 238, 239 was changed from top: 5px to top: 50% and we added margin-to"
},
{
"path": "src/material-stubs/resources/material/assets/js/plugins/world.js",
"chars": 260124,
"preview": "! function(t, e) {\n \"object\" == typeof exports && \"undefined\" != typeof module ? module.exports = e() : \"function\" == t"
},
{
"path": "src/material-stubs/resources/material/assets/js/prism.js",
"chars": 26804,
"preview": "\n/* **********************************************\n Begin prism-core.js\n********************************************"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_accordion.scss",
"chars": 415,
"preview": ".accordion {\n .accordion-button {\n margin: 0 auto;\n font-size: inherit !important;\n }\n\n div {\n button[aria-e"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_alert.scss",
"chars": 291,
"preview": "@each $state, $value in $theme-gradient-colors {\n .alert-#{$state} {\n @include gradient-directional(nth($value, 1) 0"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_avatars.scss",
"chars": 1928,
"preview": "//\n// Avatar\n//\n\n// General styles\n\n.avatar {\n\tcolor: $white;\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-cont"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_backgrounds.scss",
"chars": 316,
"preview": ".bg-primary-soft{\n background: rgba($primary-gradient, .03);\n}\n\n.bg-info-soft{\n background: rgba($info-gradient, .03);"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_badge.scss",
"chars": 132,
"preview": "@each $prop, $value in $theme-colors {\n .badge.bg-#{$prop} {\n background: $value;\n }\n}\n.badge {\n text-transform: u"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_breadcrumbs.scss",
"chars": 732,
"preview": "//\n// Breadcrumb\n//\n\n.breadcrumb-item {\n font-size: $font-size-sm;\n &.text-white{\n &::before {\n colo"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_buttons.scss",
"chars": 3543,
"preview": ".btn {\n margin-bottom: $btn-margin-bottom;\n letter-spacing: $btn-letter-spacing;\n text-transform: uppercase;\n backgr"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_cards-extend.scss",
"chars": 120,
"preview": "@import 'cards/card-blog';\n@import 'cards/card-horizontal';\n@import 'cards/card-profile';\n@import 'cards/card-pricing';\n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_cards.scss",
"chars": 1279,
"preview": ".card {\n box-shadow: $card-box-shadow;\n\n &[data-animation=\"true\"] {\n .card-header {\n @include transform-transl"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_components.scss",
"chars": 126,
"preview": "// Badges\n@import \"badges/badge\";\n@import \"badges/badge-circle\";\n@import \"badges/badge-dot\";\n@import \"badges/badge-float"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_dark-version.scss",
"chars": 4622,
"preview": ".dark-version {\n background-color: $dark-version-bg-color !important;\n\n .main-content {\n background-color: $dark-ve"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_dropdown-extend.scss",
"chars": 490,
"preview": "// MultiLevel Dropdown Style\n\n.dropdown-menu li {\n position: relative;\n}\n\n// End MultiLevel Dropdown Style\n\n.dropdown-i"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_dropdown.scss",
"chars": 6598,
"preview": "@include media-breakpoint-up(lg) {\n .dropdown,\n .dropup,\n .dropstart,\n .dropend {\n .dropdown-menu {\n box-sha"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_dropup.scss",
"chars": 1060,
"preview": ".dropup {\n .dropdown-menu {\n box-shadow: $dropdown-box-shadow;\n transition: $dropdown-transition;\n cursor: poi"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_fixed-plugin.scss",
"chars": 1254,
"preview": ".fixed-plugin{\n .fixed-plugin-button{\n background: $white;\n border-radius: $fixed-plugin-radius;\n bottom: $fix"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_floating-elements.scss",
"chars": 1142,
"preview": ".floating-man {\n width: $floating-man-width;\n}\n\n.fadeIn1 {\n animation-duration: $fade-in-1-animation-duration;\n}\n.fade"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_footer.scss",
"chars": 316,
"preview": ".footer {\n .nav-link {\n color: $dark;\n font-weight: $font-weight-normal;\n font-size: $font-size-sm;\n paddin"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_forms.scss",
"chars": 749,
"preview": ".input-group {\n @include border-radius($input-border-radius, 0);\n\n &,\n .input-group-text {\n transition: $input-tra"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_gradients.scss",
"chars": 540,
"preview": "@each $prop, $value in $theme-gradient-colors {\n .bg-gradient-#{$prop} {\n @include gradient-directional(nth($value, "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_header.scss",
"chars": 621,
"preview": ".page-header {\n padding: $page-header-padding;\n position: $page-header-position;\n overflow: $page-header-overflow;\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_icons.scss",
"chars": 671,
"preview": ".material-icons {\n font-family: 'Material Icons Round';\n font-weight: normal;\n font-style: normal;\n font-size: 20px;"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_info-areas.scss",
"chars": 2819,
"preview": ".icon-shape {\n width: $icon-md-width;\n height: $icon-md-width;\n background-position: $icon-shape-bg-position;\n borde"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_list-check.scss",
"chars": 481,
"preview": "// Checklist item\n// contains the checklist entry info and checkbox\n\n.checklist-item {\n &:before {\n content: \""
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_misc-extend.scss",
"chars": 4019,
"preview": "\n// Perspective effect\n.change-perspective {\n transform: $transform-perspective;\n}\n\n.change-perspective-inverse {\n tra"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_misc.scss",
"chars": 7021,
"preview": "// Blur effect\n\n.blur {\n box-shadow: $blur-box-shadow;\n -webkit-backdrop-filter: $blur-backdrop-filter;\n backdrop-fil"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_nav.scss",
"chars": 2546,
"preview": ".nav {\n &.nav-pills {\n background: $nav-pills-background;\n border-radius: $nav-pills-border-radius;\n position:"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_navbar-vertical.scss",
"chars": 15355,
"preview": "//\n// Vertical navbar + Sidenav\n//\n\n.navbar-vertical {\n .navbar-brand > img,\n .navbar-brand-img {\n max-width: 100%;"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_navbar.scss",
"chars": 4256,
"preview": ".navbar {\n box-shadow: $navbar-box-shadow;\n\n .navbar-brand {\n color: $dark;\n @include font-size($font-size-sm);\n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_pagination.scss",
"chars": 1165,
"preview": ".page-item {\n &.active .page-link {\n box-shadow: $pagination-active-box-shadow;\n }\n\n .page-link,\n span {\n disp"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_popovers.scss",
"chars": 125,
"preview": ".popover {\n box-shadow: $popover-box-shadow;\n}\n\n// popover title\n.popover {\n .popover-header {\n font-weight: 600;\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_progress.scss",
"chars": 233,
"preview": ".progress-bar {\n height: $progress-bar-height;\n border-radius: $border-radius-sm;\n}\n\n.progress {\n overflow: visible;\n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_ripple.scss",
"chars": 250,
"preview": "// Ripple effect\n\n.ripple {\n display: block;\n position: absolute;\n background: rgba($white, .3);\n border-radius: 100"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_rtl-extend.scss",
"chars": 1297,
"preview": "@include media-breakpoint-up(lg) {\n .rtl {\n .navbar-vertical {\n .navbar-nav {\n .collapse,\n .colla"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_rtl.scss",
"chars": 2060,
"preview": "// breadcrumb\n\n.rtl {\n .breadcrumb {\n .breadcrumb-item + .breadcrumb-item::before {\n float: right;\n paddin"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_social-buttons.scss",
"chars": 1121,
"preview": ".btn {\n // social buttons\n &.btn-facebook {\n @include social-buttons-color($facebook, $facebook-states);\n }\n &.bt"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_tables.scss",
"chars": 963,
"preview": "// General styles\n\n.table {\n thead th {\n padding: $table-head-spacer-y $table-head-spacer-x;\n text-transform: $ta"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_tilt.scss",
"chars": 289,
"preview": "// Tilt Animation\n.tilt {\n -webkit-transform-style: $tilt-transform-style;\n transform-style: $tilt-transform-style;\n\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_timeline.scss",
"chars": 2299,
"preview": "//\n// Timeline\n//\n\n\n.timeline {\n position: relative;\n\n // Axis\n\n &:before {\n content: '';\n positi"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_tooltips.scss",
"chars": 239,
"preview": ".bs-tooltip-auto[x-placement^=right] .tooltip-arrow,\n.bs-tooltip-right .tooltip-arrow {\n left: $tooltip-arrow-left;\n}\n\n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_typography.scss",
"chars": 4991,
"preview": "html *{\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\nbody {\n font-weight: $font-w"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_utilities-extend.scss",
"chars": 195,
"preview": "@each $name, $value in $max-width-dim{\n .max-width-#{$name} {\n max-width: $value !important;\n }\n}\n\n@each $name, $va"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_utilities.scss",
"chars": 17758,
"preview": "@import \"./bootstrap/functions\";\n@import \"./bootstrap/variables\";\n@import \"./bootstrap/utilities\";\n\n$utilities: (\n // s"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/_variables.scss",
"chars": 71785,
"preview": "// Variables\n//\n// Variables should follow the `$component-state-property-size` formula for\n// consistent naming. Ex: $n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/badges/_badge-circle.scss",
"chars": 594,
"preview": "//\n// Circle badge\n//\n\n\n// General styles\n\n.badge-circle {\n text-align: center;\n display: inline-flex;\n align-i"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/badges/_badge-dot.scss",
"chars": 798,
"preview": "//\n// Dot badge\n//\n\n\n// General styles\n\n.badge-dot {\n padding-left: 0;\n padding-right: 0;\n background: transpar"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/badges/_badge-floating.scss",
"chars": 322,
"preview": "//\n// Badge floating\n//\n\n\n.btn {\n .badge-floating {\n position: absolute;\n top: -$badge-floating-top;\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/badges/_badge.scss",
"chars": 1247,
"preview": "//\n// Badge\n//\n\n\n// General styles\n\n.badge {\n\n\n a {\n color: $white;\n }\n}\n\n\n// Size variations\n\n.badge-sm{\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_accordion.scss",
"chars": 2621,
"preview": "//\n// Base styles\n//\n\n.accordion-button {\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_alert.scss",
"chars": 1474,
"preview": "//\n// Base styles\n//\n\n.alert {\n position: relative;\n padding: $alert-padding-y $alert-padding-x;\n margin-bottom: $ale"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_badge.scss",
"chars": 624,
"preview": "// Base class\n//\n// Requires one of the contextual, color modifier classes for `color` and\n// `background-color`.\n\n.badg"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_breadcrumb.scss",
"chars": 923,
"preview": ".breadcrumb {\n display: flex;\n flex-wrap: wrap;\n padding: $breadcrumb-padding-y $breadcrumb-padding-x;\n margin-botto"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_button-group.scss",
"chars": 2969,
"preview": "// Make the div behave like a button\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-flex;\n v"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_buttons.scss",
"chars": 2232,
"preview": "//\n// Base styles\n//\n\n.btn {\n display: inline-block;\n font-family: $btn-font-family;\n font-weight: $btn-font-weight;\n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_card.scss",
"chars": 4800,
"preview": "//\n// Base styles\n//\n\n.card {\n position: relative;\n display: flex;\n flex-direction: column;\n min-width: 0; // See ht"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_carousel.scss",
"chars": 5625,
"preview": "// Notes on the classes:\n//\n// 1. .carousel.pointer-event should ideally be pan-y (to allow for users to scroll vertical"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_close.scss",
"chars": 1127,
"preview": "// transparent background and border properties included for button version.\n// iOS requires the button element instead "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_containers.scss",
"chars": 1196,
"preview": "// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n@if $enable-grid"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_dropdown.scss",
"chars": 5501,
"preview": "// The dropdown wrapper (`<div>`)\n.dropup,\n.dropend,\n.dropdown,\n.dropstart {\n position: relative;\n}\n\n.dropdown-toggle {"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_forms.scss",
"chars": 256,
"preview": "@import \"forms/labels\";\n@import \"forms/form-text\";\n@import \"forms/form-control\";\n@import \"forms/form-select\";\n@import \"f"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_functions.scss",
"chars": 10621,
"preview": "// Bootstrap functions\n//\n// Utility mixins and functions for evaluating source code across our variables, maps, and mix"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_grid.scss",
"chars": 602,
"preview": "// Row\n//\n// Rows contain your columns.\n\n@if $enable-grid-classes {\n .row {\n @include make-row();\n\n > * {\n @"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_helpers.scss",
"chars": 266,
"preview": "@import \"helpers/clearfix\";\n@import \"helpers/colored-links\";\n@import \"helpers/ratio\";\n@import \"helpers/position\";\n@impor"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_images.scss",
"chars": 1158,
"preview": "// Responsive images (ensure images don't scale beyond their parents)\n//\n// This is purposefully opt-in via an explicit "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_list-group.scss",
"chars": 4552,
"preview": "// Base class\n//\n// Easily usable on <ul>, <ol>, or <div>.\n\n.list-group {\n display: flex;\n flex-direction: column;\n\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_mixins.scss",
"chars": 899,
"preview": "// Toggles\n//\n// Used in conjunction with global variables to enable certain theme features.\n\n// Vendor\n@import \"vendor/"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_modal.scss",
"chars": 5658,
"preview": "// .modal-open - body class for killing the scroll\n// .modal - container to scroll within\n// .modal-dialo"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_nav.scss",
"chars": 2668,
"preview": "// Base class\n//\n// Kickstart any navigation component with a set of style resets. Works with\n// `<nav>`s, `<ul>`s or `<"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_navbar.scss",
"chars": 7536,
"preview": "// Contents\n//\n// Navbar\n// Navbar brand\n// Navbar nav\n// Navbar text\n// Responsive navbar\n// Navbar position\n// Navbar "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_offcanvas.scss",
"chars": 1933,
"preview": ".offcanvas {\n position: fixed;\n bottom: 0;\n z-index: $zindex-offcanvas;\n display: flex;\n flex-direction: column;\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_pagination.scss",
"chars": 1681,
"preview": ".pagination {\n display: flex;\n @include list-unstyled();\n}\n\n.page-link {\n position: relative;\n display: block;\n col"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_placeholders.scss",
"chars": 859,
"preview": ".placeholder {\n display: inline-block;\n min-height: 1em;\n vertical-align: middle;\n cursor: wait;\n background-color:"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_popover.scss",
"chars": 4402,
"preview": ".popover {\n position: absolute;\n top: 0;\n left: 0 #{\"/* rtl:ignore */\"};\n z-index: $zindex-popover;\n display: block"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_progress.scss",
"chars": 1169,
"preview": "// Disable animation if transitions are disabled\n\n// scss-docs-start progress-keyframes\n@if $enable-transitions {\n @key"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_reboot.scss",
"chars": 12571,
"preview": "// stylelint-disable declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix\n\n\n// Reboot\n//\n// "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_root.scss",
"chars": 1880,
"preview": ":root {\n // Note: Custom variable values only support SassScript inside `#{}`.\n\n // Colors\n //\n // Generate palettes"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_spinners.scss",
"chars": 1521,
"preview": "//\n// Rotating border\n//\n\n// scss-docs-start spinner-border-keyframes\n@keyframes spinner-border {\n to { transform: rota"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_tables.scss",
"chars": 4215,
"preview": "//\n// Basic Bootstrap table\n//\n\n.table {\n --#{$variable-prefix}table-bg: #{$table-bg};\n --#{$variable-prefix}table-acc"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_toasts.scss",
"chars": 1168,
"preview": ".toast {\n width: $toast-max-width;\n max-width: 100%;\n @include font-size($toast-font-size);\n color: $toast-color;\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_tooltip.scss",
"chars": 2608,
"preview": "// Base class\n.tooltip {\n position: absolute;\n z-index: $zindex-tooltip;\n display: block;\n margin: $tooltip-margin;\n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_transitions.scss",
"chars": 425,
"preview": ".fade {\n @include transition($transition-fade);\n\n &:not(.show) {\n opacity: 0;\n }\n}\n\n// scss-docs-start collapse-cl"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_type.scss",
"chars": 1344,
"preview": "//\n// Headings\n//\n.h1 {\n @extend h1;\n}\n\n.h2 {\n @extend h2;\n}\n\n.h3 {\n @extend h3;\n}\n\n.h4 {\n @extend h4;\n}\n\n.h5 {\n @e"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_utilities.scss",
"chars": 14038,
"preview": "// stylelint-disable indentation\n\n// Utilities\n\n$utilities: () !default;\n// stylelint-disable-next-line scss/dollar-vari"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/_variables.scss",
"chars": 67864,
"preview": "// Variables\n//\n// Variables should follow the `$component-state-property-size` formula for\n// consistent naming. Ex: $n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/bootstrap-grid.scss",
"chars": 1351,
"preview": "/*!\n * Bootstrap Grid v5.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2021 The Bootstrap Authors\n * Copyright 2011-"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/bootstrap-reboot.scss",
"chars": 425,
"preview": "/*!\n * Bootstrap Reboot v5.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2021 The Bootstrap Authors\n * Copyright 201"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/bootstrap-utilities.scss",
"chars": 393,
"preview": "/*!\n * Bootstrap Utilities v5.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2021 The Bootstrap Authors\n * Copyright "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/bootstrap.scss",
"chars": 1061,
"preview": "/*!\n * Bootstrap v5.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2021 The Bootstrap Authors\n * Copyright 2011-2021 "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/forms/_floating-labels.scss",
"chars": 1755,
"preview": ".form-floating {\n position: relative;\n\n > .form-control,\n > .form-select {\n height: $form-floating-height;\n lin"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/forms/_form-check.scss",
"chars": 3866,
"preview": "//\n// Check/radio\n//\n\n.form-check {\n display: block;\n min-height: $form-check-min-height;\n padding-left: $form-check-"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/forms/_form-control.scss",
"chars": 6738,
"preview": "//\n// General form controls (plus a few specific high-level interventions)\n//\n\n.form-control {\n display: block;\n width"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/forms/_form-range.scss",
"chars": 2796,
"preview": "// Range\n//\n// Style range inputs the same across browsers. Vendor-specific rules for pseudo\n// elements cannot be mixed"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/forms/_form-select.scss",
"chars": 2375,
"preview": "// Select\n//\n// Replaces the browser default select with a custom one, mostly pulled from\n// https://primer.github.io/.\n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/forms/_form-text.scss",
"chars": 219,
"preview": "//\n// Form text\n//\n\n.form-text {\n margin-top: $form-text-margin-top;\n @include font-size($form-text-font-size);\n font"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/forms/_input-group.scss",
"chars": 3364,
"preview": "//\n// Base styles\n//\n\n.input-group {\n position: relative;\n display: flex;\n flex-wrap: wrap; // For form validation fe"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/forms/_labels.scss",
"chars": 1142,
"preview": "//\n// Labels\n//\n\n.form-label {\n margin-bottom: $form-label-margin-bottom;\n @include font-size($form-label-font-size);\n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/forms/_validation.scss",
"chars": 478,
"preview": "// Form validation\n//\n// Provide feedback to users when form field values are valid or invalid. Works\n// primarily for c"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/helpers/_clearfix.scss",
"chars": 37,
"preview": ".clearfix {\n @include clearfix();\n}\n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/helpers/_colored-links.scss",
"chars": 326,
"preview": "@each $color, $value in $theme-colors {\n .link-#{$color} {\n color: $value;\n\n @if $link-shade-percentage != 0 {\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/helpers/_position.scss",
"chars": 501,
"preview": "// Shorthand\n\n.fixed-top {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: $zindex-fixed;\n}\n\n.fixed-botto"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/helpers/_ratio.scss",
"chars": 417,
"preview": "// Credit: Nicolas Gallagher and SUIT CSS.\n\n.ratio {\n position: relative;\n width: 100%;\n\n &::before {\n display: bl"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/helpers/_stacks.scss",
"chars": 245,
"preview": "// scss-docs-start stacks\n.hstack {\n display: flex;\n flex-direction: row;\n align-items: center;\n align-self: stretch"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/helpers/_stretched-link.scss",
"chars": 223,
"preview": "//\n// Stretched link\n//\n\n.stretched-link {\n &::#{$stretched-link-pseudo-element} {\n position: absolute;\n top: 0;\n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/helpers/_text-truncation.scss",
"chars": 73,
"preview": "//\n// Text truncation\n//\n\n.text-truncate {\n @include text-truncate();\n}\n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/helpers/_visually-hidden.scss",
"chars": 136,
"preview": "//\n// Visually hidden\n//\n\n.visually-hidden,\n.visually-hidden-focusable:not(:focus):not(:focus-within) {\n @include visua"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/helpers/_vr.scss",
"chars": 147,
"preview": ".vr {\n display: inline-block;\n align-self: stretch;\n width: 1px;\n min-height: 1em;\n background-color: currentColor;"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_alert.scss",
"chars": 268,
"preview": "// scss-docs-start alert-variant-mixin\n@mixin alert-variant($background, $border, $color) {\n color: $color;\n @include "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_backdrop.scss",
"chars": 328,
"preview": "// Shared between modals and offcanvases\n@mixin overlay-backdrop($zindex, $backdrop-bg, $backdrop-opacity) {\n position:"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_border-radius.scss",
"chars": 2031,
"preview": "// stylelint-disable property-disallowed-list\n// Single side border-radius\n\n// Helper function to replace negative value"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_box-shadow.scss",
"chars": 398,
"preview": "@mixin box-shadow($shadow...) {\n @if $enable-shadows {\n $result: ();\n\n @each $value in $shadow {\n @if $value"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_breakpoints.scss",
"chars": 4484,
"preview": "// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order f"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_buttons.scss",
"chars": 4225,
"preview": "// Button variants\n//\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_caret.scss",
"chars": 1473,
"preview": "// scss-docs-start caret-mixins\n@mixin caret-down {\n border-top: $caret-width solid;\n border-right: $caret-width solid"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_clearfix.scss",
"chars": 147,
"preview": "// scss-docs-start clearfix\n@mixin clearfix() {\n &::after {\n display: block;\n clear: both;\n content: \"\";\n }\n}"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_color-scheme.scss",
"chars": 167,
"preview": "// scss-docs-start mixin-color-scheme\n@mixin color-scheme($name) {\n @media (prefers-color-scheme: #{$name}) {\n @cont"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_container.scss",
"chars": 265,
"preview": "// Container mixins\n\n@mixin make-container($gutter: $container-padding-x) {\n width: 100%;\n padding-right: var(--#{$var"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_deprecate.scss",
"chars": 613,
"preview": "// Deprecate mixin\n//\n// This mixin can be used to deprecate mixins or functions.\n// `$enable-deprecation-messages` is a"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_forms.scss",
"chars": 3888,
"preview": "// This mixin uses an `if()` technique to be compatible with Dart Sass\n// See https://github.com/sass/sass/issues/1873#i"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_gradients.scss",
"chars": 1965,
"preview": "// Gradients\n\n// scss-docs-start gradient-bg-mixin\n@mixin gradient-bg($color: null) {\n background-color: $color;\n\n @if"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_grid.scss",
"chars": 4842,
"preview": "// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n@mixin make-row($gutter: $grid-gutter-width) {\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_image.scss",
"chars": 395,
"preview": "// Image Mixins\n// - Responsive image\n// - Retina image\n\n\n// Responsive image\n//\n// Keep images from scaling beyond the "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_list-group.scss",
"chars": 509,
"preview": "// List Groups\n\n// scss-docs-start list-group-mixin\n@mixin list-group-item-variant($state, $background, $color) {\n .lis"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_lists.scss",
"chars": 168,
"preview": "// Lists\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n@mixin list-unst"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_pagination.scss",
"chars": 741,
"preview": "// Pagination\n\n// scss-docs-start pagination-mixin\n@mixin pagination-size($padding-y, $padding-x, $font-size, $border-ra"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_reset-text.scss",
"chars": 495,
"preview": "@mixin reset-text {\n font-family: $font-family-base;\n // We deliberately do NOT reset font-size or overflow-wrap / wor"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_resize.scss",
"chars": 202,
"preview": "// Resize anything\n\n@mixin resizable($direction) {\n overflow: auto; // Per CSS3 UI, `resize` only applies when `overflo"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_table-variants.scss",
"chars": 980,
"preview": "// scss-docs-start table-variant\n@mixin table-variant($state, $background) {\n .table-#{$state} {\n $color: color-cont"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_text-truncate.scss",
"chars": 168,
"preview": "// Text truncate\n// Requires inline-block or block for proper styling\n\n@mixin text-truncate() {\n overflow: hidden;\n te"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_transition.scss",
"chars": 661,
"preview": "// stylelint-disable property-disallowed-list\n@mixin transition($transition...) {\n @if length($transition) == 0 {\n $"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_utilities.scss",
"chars": 2990,
"preview": "// Utility generator\n// Used to generate utilities & print utilities\n@mixin generate-utility($utility, $infix, $is-rfs-m"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/mixins/_visually-hidden.scss",
"chars": 1012,
"preview": "// stylelint-disable declaration-no-important\n\n// Hide content visually while keeping it accessible to assistive technol"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/utilities/_api.scss",
"chars": 1737,
"preview": "// Loop over each breakpoint\n@each $breakpoint in map-keys($grid-breakpoints) {\n\n // Generate media query if needed\n @"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/bootstrap/vendor/_rfs.scss",
"chars": 10029,
"preview": "// stylelint-disable property-blacklist, scss/dollar-variable-default\n\n// SCSS RFS mixin\n//\n// Automated responsive valu"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/cards/card-background.scss",
"chars": 2003,
"preview": ".card {\n &.card-background {\n align-items: $card-bg-align-items;\n\n .full-background {\n background-position: "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/cards/card-blog.scss",
"chars": 193,
"preview": ".card {\n &.card-blog {\n .card-image {\n box-shadow: $box-shadow;\n\n .img {\n width: 100%;\n }\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/cards/card-horizontal.scss",
"chars": 345,
"preview": ".card {\n &.card-horizontal {\n box-shadow: none;\n\n .card-image {\n border-radius: $card-border-radius;\n\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/cards/card-pricing.scss",
"chars": 1002,
"preview": ".card {\n &.card-pricing {\n .card-body {\n padding: $card-pricing-body-padding;\n }\n .table {\n tr {\n "
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/cards/card-profile.scss",
"chars": 1449,
"preview": ".card {\n &.card-profile {\n .card-body {\n padding: $card-profile-body-padding;\n }\n\n .card-avatar {\n m"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/cards/card-rotate.scss",
"chars": 2977,
"preview": ".rotating-card-container {\n @include perspective(800px);\n\n .card-rotate {\n background: transparent;\n box-shadow:"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/custom/_styles.scss",
"chars": 0,
"preview": ""
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/custom/_variables.scss",
"chars": 0,
"preview": ""
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/forms/_form-check.scss",
"chars": 1911,
"preview": ".form-check:not(.form-switch) .form-check-input {\n float: initial !important;\n margin-left: auto !important;\n\n &[type"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/forms/_form-select.scss",
"chars": 50,
"preview": ".form-select {\n transition: $input-transition;\n}\n"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/forms/_form-switch.scss",
"chars": 1208,
"preview": ".form-switch{\n .form-check-input{\n position: relative;\n background-color: $form-switch-bg-color;\n height: $for"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/forms/_forms.scss",
"chars": 127,
"preview": "@import 'input-group';\n@import 'form-check';\n@import 'form-switch';\n@import 'form-select';\n@import 'labels';\n@import 'in"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/forms/_input-group.scss",
"chars": 7174,
"preview": ".input-group {\n @include border-radius(0, 0);\n\n &:not(.has-validation) {\n > :not(:last-child):not(.dropdown-toggle)"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/forms/_inputs.scss",
"chars": 877,
"preview": ".form-control {\n border: none;\n\n &.is-invalid {\n border: $input-border-width solid $input-border-color;\n padding"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/forms/_labels.scss",
"chars": 386,
"preview": "//\n// Labels\n//\n\nlabel,\n.form-label {\n font-size: $form-label-font-size;\n font-weight: $form-label-font-weight;\n marg"
},
{
"path": "src/material-stubs/resources/material/assets/scss/material-dashboard/mixins/_badge.scss",
"chars": 272,
"preview": "@mixin badge-variant($bg) {\n\tcolor: saturate(darken($bg, 10%), 10);\n background-color: lighten($bg, 32%);\n\n \t&[href]"
}
]
// ... and 142 more files (download for full content)
About this extraction
This page contains the full source code of the creativetimofficial/material-dashboard-laravel GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 342 files (5.4 MB), approximately 1.4M tokens, and a symbol index with 211 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.