/*
    Bootflat 1.0.1
    Designed & Built by flathemes, http://www.flathemes.com
    Licensed under MIT License, http://opensource.org/licenses/mit-license.html

    Thanks for supporting our website and enjoy!
*/
/*------------------------------------*\
    $default-square
\*------------------------------------*/
.img-thumbnail-square,
.btn-square,
.btn-group-square .btn,
.btn-group-square .dropdown-menu,
.btn-group-square .btn,
.btn-group-square .btn:first-child:not(:last-child),
.btn-group-square .btn:last-child:not(:first-child),
.table-bordered-square,
.table-bordered-square tr:first-child th:first-child,
.table-bordered-square tr:first-child th:last-child,
.table-bordered-square tr:last-child td:first-child,
.table-bordered-square tr:last-child td:last-child,
.input-group-square .btn,
.input-group-square .dropdown-menu,
.input-group-square .form-control,
.input-group-square .input-group-addon,
.dropdown-menu-square,
.dropdown-menu-square .dropdown-submenu .dropdown-menu,
.form-square .form-control,
.form-square .btn,
.form-control-square,
.label-square,
.badge-square,
.alert-square,
.alert-square .btn,
.progress-square,
.breadcrumb-square,
.tooltip-square .tooltip-inner,
.popover-square,
.nav-list-panel-square,
.nav-tabs-square li > a,
.tabs-below .nav-tabs-square li > a,
.tabs-right .nav-tabs-square li > a,
.tabs-left .nav-tabs-square li > a,
.nav-tabs-square .dropdown-menu,
.tabs-below .nav-tabs-square .dropdown-menu,
.nav-pills-square li a,
.nav-pills-square .dropdown-menu,
.navbar-square,
.navbar-square .dropdown-menu,
.pagination-square li:first-child a, 
.pagination-square li:first-child span,
.pagination-square li:last-child a, 
.pagination-square li:last-child span,
.pager-square li a:hover,
.pager-square li a:focus,
.panel-group-square .panel,
.panel-group-square .panel-heading,
.panel-group-square .panel-body,
/*------------------------------------*\
    $extend-square
\*------------------------------------*/
.breadcrumb-arrow-square li:first-child a {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
}


