/* * @copyright Copyright (C) 2010-2021 Combodo SARL * @license http://opensource.org/licenses/AGPL-3.0 */ /* SCSS variables */ $ibo-is-code--background-color: $ibo-color-white-200 !default; $ibo-is-code--padding: 1.25rem 1.5rem !default; $ibo-sticky-sentinel--left: 0 !default; $ibo-sticky-sentinel--right: 0 !default; $ibo-sticky-sentinel--height: 0 !default; $ibo-sticky-sentinel-top--top: 0 !default; $ibo-sticky-sentinel-top--height: $ibo-sticky-sentinel--height !default; $ibo-sticky-sentinel-bottom--bottom: 0 !default; $ibo-sticky-sentinel-bottom--height: $ibo-sticky-sentinel--height !default; /**************/ /* Visibility */ /**************/ .ibo-is-visible { display: inherit !important; /* Note: !important is necessary as it needs to overload any standard rules */ visibility: visible !important; } .ibo-is-hidden { display: none !important; /* Note: !important is necessary as it needs to overload any standard rules */ } .ibo-is-transparent { opacity: 0 !important; /* Note: !important is necessary as it needs to overload any standard rules */ } .ibo-is-opaque { opacity: 1 !important; /* Note: !important is necessary as it needs to overload any standard rules */ } /****************************/ /* Disposition / alignement */ /****************************/ .ibo-is-fullwidth { width: 100%; } %ibo-fully-centered-content { display: flex; justify-content: center; align-items: center; } %ibo-vertically-centered-content { display: flex; align-items: center; } /* Typically to align icons and text as it is a good practice to align them on the baseline and not the "middle" */ %ibo-baseline-centered-content { display: flex; align-items: baseline; } /* Note: This might not be named correctly. The intention is to make an element occupy the full height of its parent and to be centered in it */ %ibo-full-height-content { display: flex; align-items: stretch; } /**************/ /* Fullscreen */ /**************/ /* Used on all ancestors when an element needs to be fullscreen (see .ibo-is-fullscreen) */ html.ibo-has-fullscreen-descendant { position: fixed !important; width: 0 !important; height: 0 !important; } body.ibo-has-fullscreen-descendant { width: 0 !important; height: 0 !important; overflow: hidden !important; } .ibo-has-fullscreen-descendant { position: static !important; overflow: visible !important; z-index: 1050 !important; } /* Used on a fullscreen element (see .ibo-has-fullscreen-descendant) */ .ibo-is-fullscreen { position: absolute; top: 0 !important; left: 0 !important; margin: 0 !important; padding: 0 !important; width: 100vw; height: 100vh; overflow: auto; z-index: 1050; } /****************/ /* Text helpers */ /****************/ %ibo-text-truncated-with-ellipsis { white-space: nowrap; overflow-x: hidden; text-overflow: ellipsis; } .ibo-text-truncated-with-ellipsis { @extend %ibo-text-truncated-with-ellipsis; } /* Use this when you want the hyperlink to be of the color of its container's text instead of the global hyperlink color */ %ibo-hyperlink-inherited-colors { color: inherit; &:hover, &:active { color: inherit; } } .ibo-is-broken-hyperlink { text-decoration: line-through; cursor: help; } .ibo-is-code { background-color: $ibo-is-code--background-color; padding: $ibo-is-code--padding; @extend %ibo-font-code-150; } .ibo-add-margin-top-250{ margin-top: $ibo-spacing-400; } /* * A single class to handle WYSIWYG generated content, where only HTML tags are available * See https://bulma.io/documentation/elements/content/ */ .ibo-is-html-content { @extend .content; /* Force user-generated tables to fit within the container as they often have an hard-coded width */ table { width: unset !important; max-width: max-content; } /* For table to render like in CKEditor, works with bulma lib. overload see: * - ../../vendors/_bulma-variables-overload.scss) * - ../../_shame.scss */ table { border-collapse: separate; border-spacing: 2px; } /* Preserve original text color in code blocks, except for the Highlight.js blocks which have their own colors */ & > code, code:not(.hljs) { color: inherit; } } /***********************************************************************/ /* Sticky headers */ /* */ /* Used as a trigger to make an element stick to another during scroll */ /***********************************************************************/ .ibo-sticky-sentinel { position: absolute; left: $ibo-sticky-sentinel--left; right: $ibo-sticky-sentinel--right; visibility: hidden; } .ibo-sticky-sentinel-top { top: $ibo-sticky-sentinel-top--top; height: $ibo-sticky-sentinel-top--height; /* To be overloaded by use cases */ } .ibo-sticky-sentinel-bottom { bottom: $ibo-sticky-sentinel-bottom--bottom; height: $ibo-sticky-sentinel-bottom--height; /* To be overloaded by use cases */ } %ibo-medallion { position: relative; border-radius: var(--ibo-border-radius-full); border: 2px solid var(--ibo-color-grey-300); overflow: hidden; @extend %ibo-fully-centered-content; > * { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-position: center; background-size: contain; background-color: var(--ibo-color-grey-500); } }