From 2079cdcf3c1570fd630214a22d2d9ddc532a2b74 Mon Sep 17 00:00:00 2001 From: Pierre Date: Mon, 20 Jan 2020 15:45:51 +0100 Subject: [PATCH] =?UTF-8?q?on=20remplace=20knacss=20par=20bootstrap=204=20?= =?UTF-8?q?all=C3=A9g=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bootstrap/assets_js/popper.min.js | 5 + bootstrap/css/_alert.scss | 51 + bootstrap/css/_badge.scss | 47 + bootstrap/css/_breadcrumb.scss | 38 + bootstrap/css/_button-group.scss | 212 + bootstrap/css/_buttons.scss | 137 + bootstrap/css/_card.scss | 270 + bootstrap/css/_carousel.scss | 191 + bootstrap/css/_close.scss | 29 + bootstrap/css/_code.scss | 62 + bootstrap/css/_custom-forms.scss | 256 + bootstrap/css/_dropdown.scss | 131 + bootstrap/css/_forms.scss | 358 + bootstrap/css/_functions.scss | 86 + bootstrap/css/_grid.scss | 52 + bootstrap/css/_images.scss | 42 + bootstrap/css/_input-group.scss | 209 + bootstrap/css/_jumbotron.scss | 16 + bootstrap/css/_list-group.scss | 114 + bootstrap/css/_media.scss | 8 + bootstrap/css/_mixins.scss | 42 + bootstrap/css/_modal.scss | 171 + bootstrap/css/_nav.scss | 118 + bootstrap/css/_navbar.scss | 306 + bootstrap/css/_pagination.scss | 64 + bootstrap/css/_popover.scss | 194 + bootstrap/css/_print.scss | 110 + bootstrap/css/_progress.scss | 32 + bootstrap/css/_reboot.scss | 504 + bootstrap/css/_root.scss | 19 + bootstrap/css/_tables.scss | 180 + bootstrap/css/_tooltip.scss | 107 + bootstrap/css/_transitions.scss | 36 + bootstrap/css/_type.scss | 125 + bootstrap/css/_utilities.scss | 14 + bootstrap/css/_variables.scss | 873 ++ bootstrap/css/bootstrap.scss | 42 + bootstrap/css/mixins/_alert.scss | 13 + bootstrap/css/mixins/_background-variant.scss | 20 + bootstrap/css/mixins/_badge.scss | 12 + bootstrap/css/mixins/_border-radius.scss | 35 + bootstrap/css/mixins/_box-shadow.scss | 5 + bootstrap/css/mixins/_breakpoints.scss | 119 + bootstrap/css/mixins/_buttons.scss | 99 + bootstrap/css/mixins/_caret.scss | 65 + bootstrap/css/mixins/_clearfix.scss | 7 + bootstrap/css/mixins/_float.scss | 11 + bootstrap/css/mixins/_forms.scss | 116 + bootstrap/css/mixins/_gradients.scss | 45 + bootstrap/css/mixins/_grid-framework.scss | 69 + bootstrap/css/mixins/_grid.scss | 52 + bootstrap/css/mixins/_hover.scss | 61 + bootstrap/css/mixins/_image.scss | 36 + bootstrap/css/mixins/_list-group.scss | 24 + bootstrap/css/mixins/_lists.scss | 7 + bootstrap/css/mixins/_nav-divider.scss | 10 + bootstrap/css/mixins/_navbar-align.scss | 10 + bootstrap/css/mixins/_pagination.scss | 22 + bootstrap/css/mixins/_reset-text.scss | 17 + bootstrap/css/mixins/_resize.scss | 6 + bootstrap/css/mixins/_screen-reader.scss | 35 + bootstrap/css/mixins/_size.scss | 6 + bootstrap/css/mixins/_table-row.scss | 30 + bootstrap/css/mixins/_text-emphasis.scss | 14 + bootstrap/css/mixins/_text-hide.scss | 8 + bootstrap/css/mixins/_text-truncate.scss | 8 + bootstrap/css/mixins/_transition.scss | 9 + bootstrap/css/mixins/_visibility.scss | 7 + bootstrap/css/utilities/_align.scss | 8 + bootstrap/css/utilities/_background.scss | 19 + bootstrap/css/utilities/_borders.scss | 54 + bootstrap/css/utilities/_clearfix.scss | 3 + bootstrap/css/utilities/_display.scss | 56 + bootstrap/css/utilities/_embed.scss | 52 + bootstrap/css/utilities/_flex.scss | 46 + bootstrap/css/utilities/_float.scss | 9 + bootstrap/css/utilities/_position.scss | 36 + bootstrap/css/utilities/_screenreaders.scss | 11 + bootstrap/css/utilities/_sizing.scss | 12 + bootstrap/css/utilities/_spacing.scss | 51 + bootstrap/css/utilities/_text.scss | 52 + bootstrap/css/utilities/_visibility.scss | 11 + bootstrap/dist_js/bootstrap.bundle.js | 6328 +++++++++ bootstrap/dist_js/bootstrap.bundle.min.js | 7 + bootstrap/js_dist/alert.js | 176 + bootstrap/js_dist/button.js | 167 + bootstrap/js_dist/carousel.js | 504 + bootstrap/js_dist/collapse.js | 371 + bootstrap/js_dist/dropdown.js | 455 + bootstrap/js_dist/index.js | 23 + bootstrap/js_dist/modal.js | 580 + bootstrap/js_dist/scrollspy.js | 315 + bootstrap/js_dist/tab.js | 259 + bootstrap/js_dist/tooltip.js | 664 + bootstrap/js_dist/util.js | 152 + css/_body.scss | 10 - css/_menu_spip.scss | 153 - css/_sq_balint.scss | 862 +- css/_utilitaires.scss | 5 - css/_variables.scss | 11 + css/knacss/_config/_mixins.scss | 58 - css/knacss/_config/_variables.scss | 228 - css/knacss/_knacss.scss | 64 - css/knacss/_library/_base.scss | 274 - css/knacss/_library/_grillade-flex.scss | 146 - css/knacss/_library/_grillade-grid.scss | 118 - css/knacss/_library/_layout.scss | 65 - css/knacss/_library/_print.scss | 98 - css/knacss/_library/_responsive.scss | 284 - css/knacss/_library/_utilities.scss | 462 - css/knacss/_library/_wordpress.scss | 248 - css/knacss/_vendor/_reboot.scss | 334 - css/knacss/components/_alerts.scss | 55 - css/knacss/components/_arrows.scss | 34 - css/knacss/components/_badges.scss | 51 - css/knacss/components/_buttons.scss | 158 - css/knacss/components/_checkbox.scss | 119 - css/knacss/components/_forms.scss | 114 - css/knacss/components/_media.scss | 26 - css/knacss/components/_skip-links.scss | 25 - css/knacss/components/_tables.scss | 52 - css/knacss/components/_tabs.scss | 52 - css/knacss/components/_tags.scss | 52 - css/mon_site.css | 11570 +++++++++++----- css/mon_site.scss | 8 +- inclure/head.html | 2 + js/a_compresser/balint.js | 1 + 127 files changed, 24911 insertions(+), 7478 deletions(-) create mode 100644 bootstrap/assets_js/popper.min.js create mode 100644 bootstrap/css/_alert.scss create mode 100644 bootstrap/css/_badge.scss create mode 100644 bootstrap/css/_breadcrumb.scss create mode 100644 bootstrap/css/_button-group.scss create mode 100644 bootstrap/css/_buttons.scss create mode 100644 bootstrap/css/_card.scss create mode 100644 bootstrap/css/_carousel.scss create mode 100644 bootstrap/css/_close.scss create mode 100644 bootstrap/css/_code.scss create mode 100644 bootstrap/css/_custom-forms.scss create mode 100644 bootstrap/css/_dropdown.scss create mode 100644 bootstrap/css/_forms.scss create mode 100644 bootstrap/css/_functions.scss create mode 100644 bootstrap/css/_grid.scss create mode 100644 bootstrap/css/_images.scss create mode 100644 bootstrap/css/_input-group.scss create mode 100644 bootstrap/css/_jumbotron.scss create mode 100644 bootstrap/css/_list-group.scss create mode 100644 bootstrap/css/_media.scss create mode 100644 bootstrap/css/_mixins.scss create mode 100644 bootstrap/css/_modal.scss create mode 100644 bootstrap/css/_nav.scss create mode 100644 bootstrap/css/_navbar.scss create mode 100644 bootstrap/css/_pagination.scss create mode 100644 bootstrap/css/_popover.scss create mode 100644 bootstrap/css/_print.scss create mode 100644 bootstrap/css/_progress.scss create mode 100644 bootstrap/css/_reboot.scss create mode 100644 bootstrap/css/_root.scss create mode 100644 bootstrap/css/_tables.scss create mode 100644 bootstrap/css/_tooltip.scss create mode 100644 bootstrap/css/_transitions.scss create mode 100644 bootstrap/css/_type.scss create mode 100644 bootstrap/css/_utilities.scss create mode 100644 bootstrap/css/_variables.scss create mode 100644 bootstrap/css/bootstrap.scss create mode 100644 bootstrap/css/mixins/_alert.scss create mode 100644 bootstrap/css/mixins/_background-variant.scss create mode 100644 bootstrap/css/mixins/_badge.scss create mode 100644 bootstrap/css/mixins/_border-radius.scss create mode 100644 bootstrap/css/mixins/_box-shadow.scss create mode 100644 bootstrap/css/mixins/_breakpoints.scss create mode 100644 bootstrap/css/mixins/_buttons.scss create mode 100644 bootstrap/css/mixins/_caret.scss create mode 100644 bootstrap/css/mixins/_clearfix.scss create mode 100644 bootstrap/css/mixins/_float.scss create mode 100644 bootstrap/css/mixins/_forms.scss create mode 100644 bootstrap/css/mixins/_gradients.scss create mode 100644 bootstrap/css/mixins/_grid-framework.scss create mode 100644 bootstrap/css/mixins/_grid.scss create mode 100644 bootstrap/css/mixins/_hover.scss create mode 100644 bootstrap/css/mixins/_image.scss create mode 100644 bootstrap/css/mixins/_list-group.scss create mode 100644 bootstrap/css/mixins/_lists.scss create mode 100644 bootstrap/css/mixins/_nav-divider.scss create mode 100644 bootstrap/css/mixins/_navbar-align.scss create mode 100644 bootstrap/css/mixins/_pagination.scss create mode 100644 bootstrap/css/mixins/_reset-text.scss create mode 100644 bootstrap/css/mixins/_resize.scss create mode 100644 bootstrap/css/mixins/_screen-reader.scss create mode 100644 bootstrap/css/mixins/_size.scss create mode 100644 bootstrap/css/mixins/_table-row.scss create mode 100644 bootstrap/css/mixins/_text-emphasis.scss create mode 100644 bootstrap/css/mixins/_text-hide.scss create mode 100644 bootstrap/css/mixins/_text-truncate.scss create mode 100644 bootstrap/css/mixins/_transition.scss create mode 100644 bootstrap/css/mixins/_visibility.scss create mode 100644 bootstrap/css/utilities/_align.scss create mode 100644 bootstrap/css/utilities/_background.scss create mode 100644 bootstrap/css/utilities/_borders.scss create mode 100644 bootstrap/css/utilities/_clearfix.scss create mode 100644 bootstrap/css/utilities/_display.scss create mode 100644 bootstrap/css/utilities/_embed.scss create mode 100644 bootstrap/css/utilities/_flex.scss create mode 100644 bootstrap/css/utilities/_float.scss create mode 100644 bootstrap/css/utilities/_position.scss create mode 100644 bootstrap/css/utilities/_screenreaders.scss create mode 100644 bootstrap/css/utilities/_sizing.scss create mode 100644 bootstrap/css/utilities/_spacing.scss create mode 100644 bootstrap/css/utilities/_text.scss create mode 100644 bootstrap/css/utilities/_visibility.scss create mode 100644 bootstrap/dist_js/bootstrap.bundle.js create mode 100644 bootstrap/dist_js/bootstrap.bundle.min.js create mode 100644 bootstrap/js_dist/alert.js create mode 100644 bootstrap/js_dist/button.js create mode 100644 bootstrap/js_dist/carousel.js create mode 100644 bootstrap/js_dist/collapse.js create mode 100644 bootstrap/js_dist/dropdown.js create mode 100644 bootstrap/js_dist/index.js create mode 100644 bootstrap/js_dist/modal.js create mode 100644 bootstrap/js_dist/scrollspy.js create mode 100644 bootstrap/js_dist/tab.js create mode 100644 bootstrap/js_dist/tooltip.js create mode 100644 bootstrap/js_dist/util.js delete mode 100644 css/_body.scss delete mode 100644 css/_menu_spip.scss delete mode 100644 css/_utilitaires.scss create mode 100644 css/_variables.scss delete mode 100644 css/knacss/_config/_mixins.scss delete mode 100644 css/knacss/_config/_variables.scss delete mode 100644 css/knacss/_knacss.scss delete mode 100644 css/knacss/_library/_base.scss delete mode 100644 css/knacss/_library/_grillade-flex.scss delete mode 100644 css/knacss/_library/_grillade-grid.scss delete mode 100644 css/knacss/_library/_layout.scss delete mode 100644 css/knacss/_library/_print.scss delete mode 100644 css/knacss/_library/_responsive.scss delete mode 100644 css/knacss/_library/_utilities.scss delete mode 100644 css/knacss/_library/_wordpress.scss delete mode 100644 css/knacss/_vendor/_reboot.scss delete mode 100644 css/knacss/components/_alerts.scss delete mode 100644 css/knacss/components/_arrows.scss delete mode 100644 css/knacss/components/_badges.scss delete mode 100644 css/knacss/components/_buttons.scss delete mode 100644 css/knacss/components/_checkbox.scss delete mode 100644 css/knacss/components/_forms.scss delete mode 100644 css/knacss/components/_media.scss delete mode 100644 css/knacss/components/_skip-links.scss delete mode 100644 css/knacss/components/_tables.scss delete mode 100644 css/knacss/components/_tabs.scss delete mode 100644 css/knacss/components/_tags.scss diff --git a/bootstrap/assets_js/popper.min.js b/bootstrap/assets_js/popper.min.js new file mode 100644 index 0000000..0f20d2a --- /dev/null +++ b/bootstrap/assets_js/popper.min.js @@ -0,0 +1,5 @@ +/* + Copyright (C) Federico Zivolo 2017 + Distributed under the MIT License (license terms are at http://opensource.org/licenses/MIT). + */(function(e,t){'object'==typeof exports&&'undefined'!=typeof module?module.exports=t():'function'==typeof define&&define.amd?define(t):e.Popper=t()})(this,function(){'use strict';function e(e){return e&&'[object Function]'==={}.toString.call(e)}function t(e,t){if(1!==e.nodeType)return[];var o=getComputedStyle(e,null);return t?o[t]:o}function o(e){return'HTML'===e.nodeName?e:e.parentNode||e.host}function n(e){if(!e)return document.body;switch(e.nodeName){case'HTML':case'BODY':return e.ownerDocument.body;case'#document':return e.body;}var i=t(e),r=i.overflow,p=i.overflowX,s=i.overflowY;return /(auto|scroll)/.test(r+s+p)?e:n(o(e))}function r(e){var o=e&&e.offsetParent,i=o&&o.nodeName;return i&&'BODY'!==i&&'HTML'!==i?-1!==['TD','TABLE'].indexOf(o.nodeName)&&'static'===t(o,'position')?r(o):o:e?e.ownerDocument.documentElement:document.documentElement}function p(e){var t=e.nodeName;return'BODY'!==t&&('HTML'===t||r(e.firstElementChild)===e)}function s(e){return null===e.parentNode?e:s(e.parentNode)}function d(e,t){if(!e||!e.nodeType||!t||!t.nodeType)return document.documentElement;var o=e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING,i=o?e:t,n=o?t:e,a=document.createRange();a.setStart(i,0),a.setEnd(n,0);var l=a.commonAncestorContainer;if(e!==l&&t!==l||i.contains(n))return p(l)?l:r(l);var f=s(e);return f.host?d(f.host,t):d(e,s(t).host)}function a(e){var t=1=o.clientWidth&&i>=o.clientHeight}),l=0i[e]&&!t.escapeWithReference&&(n=_(p[o],i[e]-('right'===e?p.width:p.height))),pe({},o,n)}};return n.forEach(function(e){var t=-1===['left','top'].indexOf(e)?'secondary':'primary';p=se({},p,s[t](e))}),e.offsets.popper=p,e},priority:['left','right','top','bottom'],padding:5,boundariesElement:'scrollParent'},keepTogether:{order:400,enabled:!0,fn:function(e){var t=e.offsets,o=t.popper,i=t.reference,n=e.placement.split('-')[0],r=X,p=-1!==['top','bottom'].indexOf(n),s=p?'right':'bottom',d=p?'left':'top',a=p?'width':'height';return o[s]r(i[s])&&(e.offsets.popper[d]=r(i[s])),e}},arrow:{order:500,enabled:!0,fn:function(e,o){var i;if(!F(e.instance.modifiers,'arrow','keepTogether'))return e;var n=o.element;if('string'==typeof n){if(n=e.instance.popper.querySelector(n),!n)return e;}else if(!e.instance.popper.contains(n))return console.warn('WARNING: `arrow.element` must be child of its popper element!'),e;var r=e.placement.split('-')[0],p=e.offsets,s=p.popper,d=p.reference,a=-1!==['left','right'].indexOf(r),l=a?'height':'width',f=a?'Top':'Left',m=f.toLowerCase(),h=a?'left':'top',g=a?'bottom':'right',u=L(n)[l];d[g]-us[g]&&(e.offsets.popper[m]+=d[m]+u-s[g]),e.offsets.popper=c(e.offsets.popper);var b=d[m]+d[l]/2-u/2,w=t(e.instance.popper),y=parseFloat(w['margin'+f],10),E=parseFloat(w['border'+f+'Width'],10),v=b-e.offsets.popper[m]-y-E;return v=J(_(s[l]-u,v),0),e.arrowElement=n,e.offsets.arrow=(i={},pe(i,m,Math.round(v)),pe(i,h,''),i),e},element:'[x-arrow]'},flip:{order:600,enabled:!0,fn:function(e,t){if(k(e.instance.modifiers,'inner'))return e;if(e.flipped&&e.placement===e.originalPlacement)return e;var o=y(e.instance.popper,e.instance.reference,t.padding,t.boundariesElement),i=e.placement.split('-')[0],n=x(i),r=e.placement.split('-')[1]||'',p=[];switch(t.behavior){case le.FLIP:p=[i,n];break;case le.CLOCKWISE:p=q(i);break;case le.COUNTERCLOCKWISE:p=q(i,!0);break;default:p=t.behavior;}return p.forEach(function(s,d){if(i!==s||p.length===d+1)return e;i=e.placement.split('-')[0],n=x(i);var a=e.offsets.popper,l=e.offsets.reference,f=X,m='left'===i&&f(a.right)>f(l.left)||'right'===i&&f(a.left)f(l.top)||'bottom'===i&&f(a.top)f(o.right),g=f(a.top)f(o.bottom),b='left'===i&&h||'right'===i&&c||'top'===i&&g||'bottom'===i&&u,w=-1!==['top','bottom'].indexOf(i),y=!!t.flipVariations&&(w&&'start'===r&&h||w&&'end'===r&&c||!w&&'start'===r&&g||!w&&'end'===r&&u);(m||b||y)&&(e.flipped=!0,(m||b)&&(i=p[d+1]),y&&(r=K(r)),e.placement=i+(r?'-'+r:''),e.offsets.popper=se({},e.offsets.popper,S(e.instance.popper,e.offsets.reference,e.placement)),e=C(e.instance.modifiers,e,'flip'))}),e},behavior:'flip',padding:5,boundariesElement:'viewport'},inner:{order:700,enabled:!1,fn:function(e){var t=e.placement,o=t.split('-')[0],i=e.offsets,n=i.popper,r=i.reference,p=-1!==['left','right'].indexOf(o),s=-1===['top','left'].indexOf(o);return n[p?'left':'top']=r[o]-(s?n[p?'width':'height']:0),e.placement=x(t),e.offsets.popper=c(n),e}},hide:{order:800,enabled:!0,fn:function(e){if(!F(e.instance.modifiers,'hide','preventOverflow'))return e;var t=e.offsets.reference,o=T(e.instance.modifiers,function(e){return'preventOverflow'===e.name}).boundaries;if(t.bottomo.right||t.top>o.bottom||t.right`s. The `::before` pseudo-element generates an element + // *within* the .breadcrumb-item and thereby inherits the `text-decoration`. + // + // To trick IE into suppressing the underline, we give the pseudo-element an + // underline and then immediately remove it. + + .breadcrumb-item:hover::before { + text-decoration: underline; + } + // stylelint-disable-next-line no-duplicate-selectors + + .breadcrumb-item:hover::before { + text-decoration: none; + } + + &.active { + color: $breadcrumb-active-color; + } +} diff --git a/bootstrap/css/_button-group.scss b/bootstrap/css/_button-group.scss new file mode 100644 index 0000000..8be3a6a --- /dev/null +++ b/bootstrap/css/_button-group.scss @@ -0,0 +1,212 @@ +// stylelint-disable selector-no-qualifying-type + +// Make the div behave like a button +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-flex; + vertical-align: middle; // match .btn alignment given font-size hack above + + > .btn { + position: relative; + flex: 0 1 auto; + + // Bring the hover, focused, and "active" buttons to the front to overlay + // the borders properly + @include hover { + z-index: 1; + } + &:focus, + &:active, + &.active { + z-index: 1; + } + } + + // Prevent double borders when buttons are next to each other + .btn + .btn, + .btn + .btn-group, + .btn-group + .btn, + .btn-group + .btn-group { + margin-left: -$btn-border-width; + } +} + +// Optional: Group multiple button groups together for a toolbar +.btn-toolbar { + display: flex; + flex-wrap: wrap; + justify-content: flex-start; + + .input-group { + width: auto; + } +} + +.btn-group { + > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; + } + + // Set corners individual because sometimes a single button can be in a .btn-group + // and we need :first-child and :last-child to both match + > .btn:first-child { + margin-left: 0; + + &:not(:last-child):not(.dropdown-toggle) { + @include border-right-radius(0); + } + } + + + // Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu + // immediately after it + > .btn:last-child:not(:first-child), + > .dropdown-toggle:not(:first-child) { + @include border-left-radius(0); + } + + // Custom edits for including btn-groups within btn-groups (useful for including + // dropdown buttons within a btn-group) + > .btn-group { + float: left; + } + + > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; + } + + > .btn-group:first-child:not(:last-child) { + > .btn:last-child, + > .dropdown-toggle { + @include border-right-radius(0); + } + } + + > .btn-group:last-child:not(:first-child) > .btn:first-child { + @include border-left-radius(0); + } +} + +// Sizing +// +// Remix the default button sizing classes into new ones for easier manipulation. + +.btn-group-sm > .btn { @extend .btn-sm; } +.btn-group-lg > .btn { @extend .btn-lg; } + + +// +// Split button dropdowns +// + +.dropdown-toggle-split { + padding-right: $btn-padding-x * .75; + padding-left: $btn-padding-x * .75; + + &::after { + margin-left: 0; + } +} + +.btn-sm + .dropdown-toggle-split { + padding-right: $btn-padding-x-sm * .75; + padding-left: $btn-padding-x-sm * .75; +} + +.btn-lg + .dropdown-toggle-split { + padding-right: $btn-padding-x-lg * .75; + padding-left: $btn-padding-x-lg * .75; +} + + +// The clickable button for toggling the menu +// Set the same inset shadow as the :active state +.btn-group.show .dropdown-toggle { + @include box-shadow($btn-active-box-shadow); + + // Show no shadow for `.btn-link` since it has no other button styles. + &.btn-link { + @include box-shadow(none); + } +} + + +// +// Vertical button groups +// + +.btn-group-vertical { + flex-direction: column; + align-items: flex-start; + justify-content: center; + + .btn, + .btn-group { + width: 100%; + } + + > .btn + .btn, + > .btn + .btn-group, + > .btn-group + .btn, + > .btn-group + .btn-group { + margin-top: -$btn-border-width; + margin-left: 0; + } + + > .btn { + &:not(:first-child):not(:last-child) { + border-radius: 0; + } + + &:first-child:not(:last-child) { + @include border-bottom-radius(0); + } + + &:last-child:not(:first-child) { + @include border-top-radius(0); + } + } + + > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; + } + + > .btn-group:first-child:not(:last-child) { + > .btn:last-child, + > .dropdown-toggle { + @include border-bottom-radius(0); + } + } + + > .btn-group:last-child:not(:first-child) > .btn:first-child { + @include border-top-radius(0); + } +} + + +// Checkbox and radio options +// +// In order to support the browser's form validation feedback, powered by the +// `required` attribute, we have to "hide" the inputs via `clip`. We cannot use +// `display: none;` or `visibility: hidden;` as that also hides the popover. +// Simply visually hiding the inputs via `opacity` would leave them clickable in +// certain cases which is prevented by using `clip` and `pointer-events`. +// This way, we ensure a DOM element is visible to position the popover from. +// +// See https://github.com/twbs/bootstrap/pull/12794 and +// https://github.com/twbs/bootstrap/pull/14559 for more information. + +[data-toggle="buttons"] { + > .btn, + > .btn-group > .btn { + margin-bottom: 0; // Override default `