diff --git a/application/cmdbabstract.class.inc.php b/application/cmdbabstract.class.inc.php
index 8c0441e84c..364b2a4d2f 100644
--- a/application/cmdbabstract.class.inc.php
+++ b/application/cmdbabstract.class.inc.php
@@ -175,6 +175,11 @@ abstract class cmdbAbstractObject extends CMDBObject implements iDisplay
*/
protected $sDisplayMode;
protected $aFieldsMap;
+ /**
+ * @var array Store posted values in order to be used in GetAttributeFlags
+ * @since 3.3.0
+ */
+ protected $aPostedValues = [];
/**
* If true, bypass IsActionAllowedOnAttribute when writing this object
@@ -524,6 +529,12 @@ JS
$sLabel = Dict::S('Tag:Synchronized');
$sSynchroTagId = 'synchro_icon-'.$this->GetKey();
$aTags[$sSynchroTagId] = ['title' => $sTip, 'css_classes' => 'ibo-object-details--tag--synchronized', 'decoration_classes' => 'fas fa-lock', 'label' => $sLabel];
+ if (UserRights::IsActionAllowed(SynchroReplica::class, UR_ACTION_READ)) {
+ $oDBSearch = DBObjectSearch::FromOQL('SELECT SynchroReplica WHERE dest_class=:sClass AND dest_id=:id');
+ $sFilter = rawurlencode($oDBSearch->serialize(false, ['sClass' => get_class($this),'id' => $this->GetKey()]));
+ $sUrlSearchReplica = 'UI.php?operation=search&filter='.$sFilter;
+ $oPage->add_ready_script("$('#$sSynchroTagId').on('click',function() {window.location = '$sUrlSearchReplica' });");
+ }
}
}
@@ -3986,6 +3997,7 @@ HTML;
$aErrors = [];
$aFinalValues = [];
+ $this->aPostedValues = $aValues; // Store the values for later use (e.g. in GetAttributeFlags)
foreach ($this->GetWriteableAttList(array_keys($aValues), $aErrors, $aAttFlags) as $sAttCode => $oAttDef) {
$aFinalValues[$sAttCode] = $aValues[$sAttCode];
}
diff --git a/application/displayblock.class.inc.php b/application/displayblock.class.inc.php
index ca2fe6857a..df6dc1e1e6 100644
--- a/application/displayblock.class.inc.php
+++ b/application/displayblock.class.inc.php
@@ -1078,7 +1078,6 @@ JS
if ($aCounts[$sStateValue] == 0) {
$aCounts[$sStateValue] = ['link' => '-', 'label' => $aCounts[$sStateValue]];
- ;
} else {
$oSingleGroupByValueFilter = $this->m_oFilter->DeepClone();
$oSingleGroupByValueFilter->AddCondition($sStateAttrCode, $sStateValue, '=');
@@ -1947,8 +1946,8 @@ class MenuBlock extends DisplayBlock
$sSelectedClassName = MetaModel::GetName($sSelectedClass);
// Check rights on class
- $bIsBulkModifyAllowed = (!MetaModel::IsAbstract($sSelectedClass)) && UserRights::IsActionAllowed($sSelectedClass, UR_ACTION_BULK_MODIFY) && ($oReflectionClass->IsSubclassOf('cmdbAbstractObject'));
- $bIsBulkDeleteAllowed = (bool) UserRights::IsActionAllowed($sSelectedClass, UR_ACTION_BULK_DELETE);
+ $bIsBulkModifyAllowed = (!MetaModel::IsAbstract($sSelectedClass)) && UserRights::IsActionAllowed($sSelectedClass, UR_ACTION_BULK_MODIFY) && (($oReflectionClass->IsSubclassOf(cmdbAbstractObject::class) || $sSelectedClass === SynchroReplica::class));
+ $bIsBulkDeleteAllowed = (bool)UserRights::IsActionAllowed($sSelectedClass, UR_ACTION_BULK_DELETE);
// Refine filter on selected class so bullk actions occur on the right class
$oSelectedClassFilter = $this->GetFilter()->DeepClone();
@@ -1958,7 +1957,15 @@ class MenuBlock extends DisplayBlock
// Action label dict code has a specific suffix for "Link" / "Remote" aliases to allow dedicated labels in linksets.
$sActionLabelCodeSuffix = in_array($sSelectedAlias, ['Link', 'Remote']) ? $sSelectedAlias : 'Class';
if ($bIsBulkModifyAllowed) {
- $this->AddBulkModifyObjectsMenuAction($aRegularActions, $sSelectedClass, $oSelectedClassFilter->serialize(), 'UI:Menu:ModifyAll:'.$sSelectedAlias, Dict::Format('UI:Menu:ModifyAll_'.$sActionLabelCodeSuffix, $sSelectedClassName));
+ if ($sSelectedClass === SynchroReplica::class) {
+ $this->AddBulkModifyObjectsMenuAction($aRegularActions, $sSelectedClass, $oSelectedClassFilter->serialize(), 'UI:Menu:UnlinkAll:', Dict::S('Class:SynchroReplica/Action:unlink_all'), 'unlink');
+ $this->AddBulkModifyObjectsMenuAction($aRegularActions, $sSelectedClass, $oSelectedClassFilter->serialize(), 'UI:Menu:UnLinkSynchroAll:', Dict::S('Class:SynchroReplica/Action:unlinksynchro_all'), 'unlinksynchro');
+ $this->AddBulkModifyObjectsMenuAction($aRegularActions, $sSelectedClass, $oSelectedClassFilter->serialize(), 'UI:Menu:SynchroAll:', Dict::S('Class:SynchroReplica/Action:synchro_all'), 'synchro');
+ $this->AddBulkModifyObjectsMenuAction($aRegularActions, $sSelectedClass, $oSelectedClassFilter->serialize(), 'UI:Menu:AllowDeleteAll:', Dict::S('Class:SynchroReplica/Action:allowdelete_all'), 'allowdelete');
+ $this->AddBulkModifyObjectsMenuAction($aRegularActions, $sSelectedClass, $oSelectedClassFilter->serialize(), 'UI:Menu:DenyDeleteAll:', Dict::S('Class:SynchroReplica/Action:denydelete_all'), 'denydelete');
+ } else {
+ $this->AddBulkModifyObjectsMenuAction($aRegularActions, $sSelectedClass, $oSelectedClassFilter->serialize(), 'UI:Menu:ModifyAll:'.$sSelectedAlias, Dict::Format('UI:Menu:ModifyAll_'.$sActionLabelCodeSuffix, $sSelectedClassName));
+ }
}
if ($bIsBulkDeleteAllowed) {
$this->AddBulkDeleteObjectsMenuAction($aRegularActions, $sSelectedClass, $oSelectedClassFilter->serialize(), 'UI:Menu:BulkDelete:'.$sSelectedAlias, Dict::Format('UI:Menu:BulkDelete_'.$sActionLabelCodeSuffix, $sSelectedClassName));
@@ -2478,11 +2485,11 @@ class MenuBlock extends DisplayBlock
* @since 3.1.0
* @internal
*/
- protected function AddBulkModifyObjectsMenuAction(array &$aActions, string $sClass, string $sFilter, string $sActionIdentifier = 'UI:Menu:ModifyAll', $sActionLabel = 'UI:Menu:ModifyAll'): void
+ protected function AddBulkModifyObjectsMenuAction(array &$aActions, string $sClass, string $sFilter, string $sActionIdentifier = 'UI:Menu:ModifyAll', $sActionLabel = 'UI:Menu:ModifyAll', $sOperationName = 'modify'): void
{
$aActions[$sActionIdentifier] = [
- 'label' => Dict::S($sActionLabel),
- 'url' => $this->PrepareUrlForStandardMenuAction($sClass, "operation=select_for_modify_all&class=$sClass&filter=".urlencode($sFilter)),
+ 'label' => Dict::S($sActionLabel),
+ 'url' => $this->PrepareUrlForStandardMenuAction($sClass, 'operation=select_for_'.$sOperationName.'_all&class='.$sClass.'&filter='.urlencode($sFilter)),
] + $this->GetDefaultParamsForMenuAction();
}
diff --git a/application/startup.inc.php b/application/startup.inc.php
index f5dfd4bd6f..35ef108195 100644
--- a/application/startup.inc.php
+++ b/application/startup.inc.php
@@ -18,6 +18,7 @@
// along with iTop. If not, see
use Combodo\iTop\Application\Helper\ExceptionHandlerHelper;
use Combodo\iTop\Application\Helper\Session;
+use Combodo\iTop\Service\Startup\StartupService;
require_once(APPROOT.'core/cmdbobject.class.inc.php');
require_once(APPROOT.'application/utils.inc.php');
@@ -73,26 +74,7 @@ $oKPI->ComputeAndReport("Session Start");
$sSwitchEnv = utils::ReadParam('switch_env', null);
$bAllowCache = true;
-if (($sSwitchEnv != null) && file_exists(APPCONF.$sSwitchEnv.'/'.ITOP_CONFIG_FILE) && (Session::Get('itop_env') !== $sSwitchEnv)) {
- Session::Set('itop_env', $sSwitchEnv);
- $sEnv = $sSwitchEnv;
- $bAllowCache = false;
- // Reset the opcache since otherwise the PHP "model" files may still be cached !!
- if (function_exists('opcache_reset')) {
- // Zend opcode cache
- opcache_reset();
- }
- if (function_exists('apc_clear_cache')) {
- // APC(u) cache
- apc_clear_cache();
- }
- // TODO: reset the credentials as well ??
-} elseif (Session::IsSet('itop_env')) {
- $sEnv = Session::Get('itop_env');
-} else {
- $sEnv = ITOP_DEFAULT_ENV;
- Session::Set('itop_env', ITOP_DEFAULT_ENV);
-}
+$sEnv = (new StartupService())->SetItopEnvironment($sSwitchEnv, $bAllowCache);
$sConfigFile = APPCONF.$sEnv.'/'.ITOP_CONFIG_FILE;
try {
MetaModel::Startup($sConfigFile, false /* $bModelOnly */, $bAllowCache, false /* $bTraceSourceFiles */, $sEnv);
diff --git a/core/metamodel.class.php b/core/metamodel.class.php
index 9fe20e3c6f..540ae3d8e7 100644
--- a/core/metamodel.class.php
+++ b/core/metamodel.class.php
@@ -22,7 +22,6 @@ use Combodo\iTop\Application\EventRegister\ApplicationEvents;
use Combodo\iTop\Core\MetaModel\FriendlyNameType;
use Combodo\iTop\Service\Events\EventData;
use Combodo\iTop\Service\Events\EventService;
-use Combodo\iTop\Setup\ModuleDependency\Module;
use Combodo\iTop\Setup\ModuleDiscovery\ModuleFileReader;
require_once APPROOT.'core/modulehandler.class.inc.php';
@@ -4660,12 +4659,15 @@ abstract class MetaModel
* @throws \CoreException
* @throws \MySQLException
*/
- public static function DBExists($bMustBeComplete = true)
+ public static function DBExists($bMustBeComplete = true, ?string $sDBName = null)
{
- if (!CMDBSource::IsDB(self::$m_sDBName)) {
+ if (is_null($sDBName)) {
+ $sDBName = self::$m_sDBName;
+ }
+ if (!CMDBSource::IsDB($sDBName)) {
return false;
}
- CMDBSource::SelectDB(self::$m_sDBName);
+ CMDBSource::SelectDB($sDBName);
$aFound = [];
$aMissing = [];
diff --git a/core/ormpassword.class.inc.php b/core/ormpassword.class.inc.php
index 9167c1b1a9..8cab027fa7 100644
--- a/core/ormpassword.class.inc.php
+++ b/core/ormpassword.class.inc.php
@@ -52,7 +52,7 @@ class ormPassword
public function SetPassword($sClearTextPassword)
{
$iHashAlgo = MetaModel::GetConfig()->GetPasswordHashAlgo();
- $this->m_sHashed = password_hash($sClearTextPassword, $iHashAlgo);
+ $this->m_sHashed = password_hash($sClearTextPassword ?? '', $iHashAlgo);
}
/**
@@ -99,10 +99,10 @@ class ormPassword
$aInfo = password_get_info($this->m_sHashed);
if (is_null($aInfo["algo"]) || $aInfo["algo"] === 0) {
// - Unknown algorithm, assume it's a legacy password
- $sHashedPwd = $this->ComputeHash($sClearTextPassword);
+ $sHashedPwd = $this->ComputeHash($sClearTextPassword ?? '');
$bResult = hash_equals($this->m_sHashed, $sHashedPwd);
} else {
- $bResult = password_verify($sClearTextPassword, $this->m_sHashed);
+ $bResult = password_verify($sClearTextPassword ?? '', $this->m_sHashed);
}
return $bResult;
}
diff --git a/css/backoffice/pages/_data-synchro.scss b/css/backoffice/pages/_data-synchro.scss
index 956329ce76..fb16024513 100644
--- a/css/backoffice/pages/_data-synchro.scss
+++ b/css/backoffice/pages/_data-synchro.scss
@@ -80,4 +80,14 @@ $ibo-data-synchro-source--synoptics--cell--arrow--border: 2px solid $ibo-data-sy
}
.ibo-data-synchro-source--replicas-status--warning{
margin: $ibo-data-synchro-source--replicas-status--warning--margin;
+}
+
+.ibo-page-header--replica-title{
+ display: table;
+ width: 100%;
+
+ >.ibo-toolbar--button{
+ display: table-cell;
+ vertical-align: middle;
+ }
}
\ No newline at end of file
diff --git a/css/setup.css b/css/setup.css
index 7afceeae24..4fafa5e44d 100644
--- a/css/setup.css
+++ b/css/setup.css
@@ -19,4 +19,4 @@
var(--ck-switch-button-toggle-inner-size) -
2px /* Border */);--ck-switch-button-inner-hover-shadow: 0 0 0 5px var(--ck-color-switch-button-inner-shadow)}.ck.ck-button.ck-switchbutton,.ck.ck-button.ck-switchbutton:hover,.ck.ck-button.ck-switchbutton:focus,.ck.ck-button.ck-switchbutton:active,.ck.ck-button.ck-switchbutton.ck-on:hover,.ck.ck-button.ck-switchbutton.ck-on:focus,.ck.ck-button.ck-switchbutton.ck-on:active{color:inherit;background:none}[dir="ltr"] :is(.ck.ck-button.ck-switchbutton .ck-button__label){margin-right:calc(2 * var(--ck-spacing-large))}[dir="rtl"] :is(.ck.ck-button.ck-switchbutton .ck-button__label){margin-left:calc(2 * var(--ck-spacing-large))}.ck.ck-button.ck-switchbutton .ck-button__toggle{border-radius:var(--ck-rounded-corners-radius);width:var(--ck-switch-button-toggle-width);background:var(--ck-color-switch-button-off-background);border:1px solid #0000;transition:background 0.4s, box-shadow 0.2s ease-in-out, outline 0.2s ease-in-out}[dir="ltr"] :is(.ck.ck-button.ck-switchbutton .ck-button__toggle){margin-left:auto}[dir="rtl"] :is(.ck.ck-button.ck-switchbutton .ck-button__toggle){margin-right:auto}.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{border-radius:calc(.5 * var(--ck-rounded-corners-radius));width:var(--ck-switch-button-toggle-inner-size);height:var(--ck-switch-button-toggle-inner-size);background:var(--ck-color-switch-button-inner-background);transition:all 0.3s}@media (prefers-reduced-motion:reduce){.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{transition:none}}.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{display:block}.ck.ck-button.ck-switchbutton .ck-button__toggle:hover{background:var(--ck-color-switch-button-off-hover-background)}.ck.ck-button.ck-switchbutton .ck-button__toggle:hover .ck-button__toggle__inner{box-shadow:var(--ck-switch-button-inner-hover-shadow)}.ck.ck-button.ck-switchbutton .ck-button__toggle{display:block}.ck.ck-button.ck-switchbutton.ck-disabled .ck-button__toggle{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-switchbutton:focus{box-shadow:none;border-color:#0000;outline:none}.ck.ck-button.ck-switchbutton:focus .ck-button__toggle{box-shadow:0 0 0 1px var(--ck-color-base-background), 0 0 0 5px var(--ck-color-focus-outer-shadow);outline-offset:1px;outline:var(--ck-focus-ring)}.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle{background:var(--ck-color-switch-button-on-background)}.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle:hover{background:var(--ck-color-switch-button-on-hover-background)}[dir="ltr"] :is(.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle .ck-button__toggle__inner){transform:translateX(var(--ck-switch-button-translation))}[dir="rtl"] :is(.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle .ck-button__toggle__inner){transform:translateX(calc(-1 * var(--ck-switch-button-translation)))}.ck.ck-button.ck-list-item-button{padding:var(--ck-spacing-tiny) calc(2 * var(--ck-spacing-standard))}.ck.ck-button.ck-list-item-button,.ck.ck-button.ck-list-item-button.ck-on{background:var(--ck-color-list-background);color:var(--ck-color-text)}[dir="ltr"] .ck.ck-button.ck-list-item-button:has(.ck-list-item-button__check-holder){padding-left:var(--ck-spacing-small)}[dir="rtl"] .ck.ck-button.ck-list-item-button:has(.ck-list-item-button__check-holder){padding-right:var(--ck-spacing-small)}.ck.ck-button.ck-list-item-button:hover:not(.ck-disabled),.ck.ck-button.ck-list-item-button.ck-button.ck-on:hover,.ck.ck-button.ck-list-item-button.ck-on:not(.ck-list-item-button_toggleable),.ck.ck-button.ck-list-item-button.ck-on:hover{background:var(--ck-color-list-button-hover-background)}:is(.ck.ck-button.ck-list-item-button:hover:not(.ck-disabled), .ck.ck-button.ck-list-item-button.ck-button.ck-on:hover, .ck.ck-button.ck-list-item-button.ck-on:not(.ck-list-item-button_toggleable), .ck.ck-button.ck-list-item-button.ck-on:hover):not(.ck-disabled){color:var(--ck-color-text)}.ck.ck-list-item-button{min-height:unset;border-radius:0;width:100%}[dir="ltr"] .ck.ck-list-item-button{text-align:left}[dir="rtl"] .ck.ck-list-item-button{text-align:right}[dir="ltr"] .ck.ck-list-item-button.ck-list-item-button_toggleable{padding-left:var(--ck-spacing-small)}[dir="rtl"] .ck.ck-list-item-button.ck-list-item-button_toggleable{padding-right:var(--ck-spacing-small)}.ck.ck-list-item-button .ck-list-item-button__check-holder{width:0.9em;height:0.9em;display:inline-flex}[dir="ltr"] :is(.ck.ck-list-item-button .ck-list-item-button__check-holder){margin-right:var(--ck-spacing-small)}[dir="rtl"] :is(.ck.ck-list-item-button .ck-list-item-button__check-holder){margin-left:var(--ck-spacing-small)}.ck.ck-list-item-button .ck-list-item-button__check-icon{height:100%}:root{--ck-collapsible-arrow-size: calc(.5 * var(--ck-icon-size))}.ck.ck-collapsible>.ck.ck-button{width:100%;color:inherit;border-radius:0;font-weight:bold}.ck.ck-collapsible>.ck.ck-button:focus{background:none}.ck.ck-collapsible>.ck.ck-button:active,.ck.ck-collapsible>.ck.ck-button:not(:focus),.ck.ck-collapsible>.ck.ck-button:hover:not(:focus){box-shadow:none;background:none;border-color:#0000}.ck.ck-collapsible>.ck.ck-button>.ck-icon{margin-right:var(--ck-spacing-medium);width:var(--ck-collapsible-arrow-size)}.ck.ck-collapsible>.ck-collapsible__children{padding:var(--ck-spacing-medium) var(--ck-spacing-large) var(--ck-spacing-large)}.ck.ck-collapsible.ck-collapsible_collapsed>.ck.ck-button .ck-icon{transform:rotate(-90deg)}.ck.ck-collapsible.ck-collapsible_collapsed>.ck-collapsible__children{display:none}:root{--ck-color-grid-tile-size: 24px;--ck-color-color-grid-check-icon: #166fd4}.ck.ck-color-grid{grid-gap:5px;padding:8px;display:grid}.ck.ck-color-grid__tile{transition:box-shadow 0.2s}@media (forced-colors:none){.ck.ck-color-grid__tile{width:var(--ck-color-grid-tile-size);height:var(--ck-color-grid-tile-size);min-width:var(--ck-color-grid-tile-size);min-height:var(--ck-color-grid-tile-size);border:0;padding:0}.ck.ck-color-grid__tile.ck-on,.ck.ck-color-grid__tile:focus:not(.ck-disabled),.ck.ck-color-grid__tile:hover:not(.ck-disabled){border:0}.ck.ck-color-grid__tile.ck-color-selector__color-tile_bordered{box-shadow:0 0 0 1px var(--ck-color-base-border)}.ck.ck-color-grid__tile.ck-on{box-shadow:inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-base-text)}.ck.ck-color-grid__tile:focus:not(.ck-disabled),.ck.ck-color-grid__tile:hover:not(.ck-disabled){box-shadow:inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border)}}@media (forced-colors:active){.ck.ck-color-grid__tile{width:unset;height:unset;min-width:unset;min-height:unset;padding:0 var(--ck-spacing-small)}.ck.ck-color-grid__tile .ck-button__label{display:inline-block}}@media (prefers-reduced-motion:reduce){.ck.ck-color-grid__tile{transition:none}}.ck.ck-color-grid__tile.ck-disabled{cursor:unset;transition:unset}.ck.ck-color-grid__tile .ck.ck-icon{color:var(--ck-color-color-grid-check-icon);display:none}.ck.ck-color-grid__tile.ck-on .ck.ck-icon{display:block}.ck.ck-color-grid__label{padding:0 var(--ck-spacing-standard)}.color-picker-hex-input{width:max-content}.color-picker-hex-input .ck.ck-input{min-width:unset}.ck.ck-color-picker__row{margin:var(--ck-spacing-large) 0 0;width:unset;flex-flow:row;justify-content:space-between;display:flex}.ck.ck-color-picker__row .ck.ck-labeled-field-view{padding-top:unset}.ck.ck-color-picker__row .ck.ck-input-text{width:unset}.ck.ck-color-picker__row .ck-color-picker__hash-view{padding-top:var(--ck-spacing-tiny);padding-right:var(--ck-spacing-medium)}.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__remove-color,.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker{align-items:center;width:100%;display:flex}[dir="rtl"] :is(.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__remove-color, .ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker){justify-content:flex-start}.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker{padding:calc(var(--ck-spacing-standard) / 2) var(--ck-spacing-standard);border-bottom-right-radius:0;border-bottom-left-radius:0}.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker:not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir="ltr"] :is(.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker .ck.ck-icon){margin-right:var(--ck-spacing-standard)}[dir="rtl"] :is(.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker .ck.ck-icon){margin-left:var(--ck-spacing-standard)}.ck.ck-color-selector .ck-color-grids-fragment label.ck.ck-color-grid__label{font-weight:unset}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker{padding:8px}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker{min-width:180px;height:100px}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker::part(saturation){border-radius:var(--ck-border-radius) var(--ck-border-radius) 0 0}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker::part(hue){border-radius:0 0 var(--ck-border-radius) var(--ck-border-radius)}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker::part(saturation-pointer),.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker::part(hue-pointer){width:15px;height:15px}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-selector_action-bar{flex-direction:row;justify-content:space-around;padding:0 8px 8px;display:flex}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-selector_action-bar .ck-button-save,.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-selector_action-bar .ck-button-cancel{flex:1}:root{--ck-dialog-overlay-background-color: #00000080;--ck-dialog-drop-shadow: 0px 0px 6px 2px #00000026;--ck-dialog-max-width: 100vw;--ck-dialog-max-height: 90vh;--ck-color-dialog-background: var(--ck-color-base-background);--ck-color-dialog-form-header-border: var(--ck-color-base-border)}.ck.ck-dialog-overlay{background:var(--ck-dialog-overlay-background-color);z-index:var(--ck-z-dialog);user-select:none;overscroll-behavior:none;animation:0.3s ck-dialog-fade-in;position:fixed;inset:0}.ck.ck-dialog-overlay.ck-dialog-overlay__transparent{pointer-events:none;background:none;animation:none}.ck.ck-dialog{border-radius:var(--ck-rounded-corners-radius);box-shadow:var(--ck-drop-shadow), 0 0;--ck-drop-shadow: var(--ck-dialog-drop-shadow);background:var(--ck-color-dialog-background);max-height:var(--ck-dialog-max-height);max-width:var(--ck-dialog-max-width);border:1px solid var(--ck-color-base-border);overscroll-behavior:contain;overscroll-behavior:none;width:fit-content;position:absolute}.ck.ck-dialog .ck.ck-form__header{border-bottom:1px solid var(--ck-color-dialog-form-header-border);flex-shrink:0}.ck.ck-dialog:not(.ck-dialog_modal) .ck.ck-form__header .ck-form__header__label{cursor:grab}.ck.ck-dialog-overlay.ck-dialog-overlay__transparent .ck.ck-dialog{pointer-events:all}.ck-dialog-scroll-locked{overflow:hidden}@keyframes ck-dialog-fade-in{0%{background:none}100%{background:var(--ck-dialog-overlay-background-color)}}.ck.ck-dialog .ck.ck-dialog__actions{padding:var(--ck-spacing-large);display:flex}.ck.ck-dialog .ck.ck-dialog__actions>*+*{margin-left:var(--ck-spacing-large)}.ck.ck-dialog .ck.ck-dialog__actions{justify-content:flex-end}:root{--ck-dropdown-arrow-size: calc(.5 * var(--ck-icon-size));--ck-dropdown-max-width: 75vw}.ck.ck-dropdown{font-size:inherit;display:inline-block;position:relative}.ck.ck-dropdown .ck-dropdown__arrow{width:var(--ck-dropdown-arrow-size);pointer-events:none;z-index:var(--ck-z-default)}[dir="ltr"] .ck.ck-dropdown .ck-dropdown__arrow{right:var(--ck-spacing-standard);margin-left:var(--ck-spacing-standard)}[dir="rtl"] .ck.ck-dropdown .ck-dropdown__arrow{left:var(--ck-spacing-standard);margin-right:var(--ck-spacing-small)}.ck.ck-dropdown.ck-disabled .ck-dropdown__arrow{opacity:var(--ck-disabled-opacity)}[dir="ltr"] :is(.ck.ck-dropdown .ck-button.ck-dropdown__button):not(.ck-button_with-text){padding-left:var(--ck-spacing-small)}[dir="rtl"] :is(.ck.ck-dropdown .ck-button.ck-dropdown__button):not(.ck-button_with-text){padding-right:var(--ck-spacing-small)}.ck.ck-dropdown .ck-button.ck-dropdown__button .ck-button__label{text-overflow:ellipsis;width:7em;overflow:hidden}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-disabled .ck-button__label{opacity:var(--ck-disabled-opacity)}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on{border-bottom-right-radius:0;border-bottom-left-radius:0}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-dropdown__button_label-width_auto .ck-button__label{width:auto}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-off:active,.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on:active{box-shadow:none}:is(.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-off:active, .ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on:active):focus{box-shadow:var(--ck-focus-outer-shadow), 0 0}.ck.ck-dropdown .ck-button.ck-dropdown__button{width:100%}.ck.ck-dropdown .ck-dropdown__panel{z-index:var(--ck-z-panel);max-width:var(--ck-dropdown-max-width);display:none;position:absolute}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel-visible{display:inline-block}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_ne,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_n,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nmw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nme{bottom:100%}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_se,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_smw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_s{top:100%;bottom:auto}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_ne,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_se{left:0}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sw{right:0}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_s,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_n{left:50%;transform:translateX(-50%)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nmw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_smw{left:75%;transform:translateX(-75%)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sme{left:25%;transform:translateX(-25%)}.ck.ck-dropdown__panel{border-radius:var(--ck-rounded-corners-radius);box-shadow:var(--ck-drop-shadow), 0 0;background:var(--ck-color-dropdown-panel-background);border:1px solid var(--ck-color-dropdown-panel-border);min-width:100%;bottom:0}.ck.ck-dropdown__panel.ck-dropdown__panel_se{border-top-left-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_sw{border-top-right-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_ne{border-bottom-left-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_nw{border-bottom-right-radius:0}.ck.ck-dropdown__panel:focus{outline:none}.ck.ck-toolbar .ck-dropdown__panel{z-index:calc(var(--ck-z-panel) + 1)}:root{--ck-color-split-button-hover-background: #ebebeb;--ck-color-split-button-hover-border: #b3b3b3}.ck.ck-splitbutton .ck-splitbutton__action:focus{z-index:calc(var(--ck-z-default) + 1)}[dir="ltr"] :is(.ck.ck-splitbutton:hover>.ck-splitbutton__action, .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__action){border-top-right-radius:unset;border-bottom-right-radius:unset}[dir="rtl"] :is(.ck.ck-splitbutton:hover>.ck-splitbutton__action, .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__action){border-top-left-radius:unset;border-bottom-left-radius:unset}.ck.ck-splitbutton>.ck-splitbutton__arrow{min-width:unset}[dir="ltr"] :is(.ck.ck-splitbutton>.ck-splitbutton__arrow){border-top-left-radius:unset;border-bottom-left-radius:unset}[dir="rtl"] :is(.ck.ck-splitbutton>.ck-splitbutton__arrow){border-top-right-radius:unset;border-bottom-right-radius:unset}.ck.ck-splitbutton>.ck-splitbutton__arrow svg{width:var(--ck-dropdown-arrow-size)}.ck.ck-splitbutton>.ck-splitbutton__arrow:not(:focus){border-top-width:0;border-bottom-width:0}.ck.ck-splitbutton.ck-splitbutton_open{border-radius:var(--ck-rounded-corners-radius)}.ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__action{border-bottom-left-radius:0}.ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow{border-bottom-right-radius:0}:is(.ck.ck-splitbutton.ck-splitbutton_open, .ck.ck-splitbutton:hover)>.ck-button:not(.ck-on):not(.ck-disabled):not(:hover){background:var(--ck-color-split-button-hover-background)}:is(.ck.ck-splitbutton.ck-splitbutton_open, .ck.ck-splitbutton:hover)>.ck-splitbutton__arrow:not(.ck-disabled):after{content:"";background-color:var(--ck-color-split-button-hover-border);width:1px;height:100%;position:absolute}:is(.ck.ck-splitbutton.ck-splitbutton_open, .ck.ck-splitbutton:hover)>.ck-splitbutton__arrow:focus:after{--ck-color-split-button-hover-border: var(--ck-color-focus-border)}[dir="ltr"] :is(.ck.ck-splitbutton.ck-splitbutton_open, .ck.ck-splitbutton:hover)>.ck-splitbutton__arrow:not(.ck-disabled):after{left:-1px}[dir="rtl"] :is(.ck.ck-splitbutton.ck-splitbutton_open, .ck.ck-splitbutton:hover)>.ck-splitbutton__arrow:not(.ck-disabled):after{right:-1px}.ck.ck-splitbutton{font-size:inherit}.ck.ck-toolbar-dropdown .ck-toolbar{border:0}:root{--ck-toolbar-dropdown-max-width: 60vw}.ck.ck-toolbar-dropdown>.ck-dropdown__panel{width:max-content;max-width:var(--ck-toolbar-dropdown-max-width)}.ck.ck-toolbar-dropdown>.ck-dropdown__panel .ck-button:focus{z-index:calc(var(--ck-z-default) + 1)}.ck.ck-dropdown>.ck-dropdown__panel>.ck-list{border-radius:var(--ck-rounded-corners-radius);border-top-left-radius:0}.ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:first-child>.ck-button{border-radius:var(--ck-rounded-corners-radius);border-top-left-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:last-child>.ck-button{border-radius:var(--ck-rounded-corners-radius);border-top-left-radius:0;border-top-right-radius:0}.ck.ck-dropdown-menu-list__nested-menu{display:block}:root{--ck-dropdown-menu-menu-item-min-width: 18em}.ck.ck-dropdown-menu-list__nested-menu__item{min-width:var(--ck-dropdown-menu-menu-item-min-width)}.ck-button.ck-dropdown-menu-list__nested-menu__item__button{border-radius:0}.ck-button.ck-dropdown-menu-list__nested-menu__item__button>.ck-spinner-container,.ck-button.ck-dropdown-menu-list__nested-menu__item__button>.ck-spinner-container .ck-spinner{--ck-toolbar-spinner-size: 20px}.ck-button.ck-dropdown-menu-list__nested-menu__item__button>.ck-spinner-container{margin-left:calc(-1 * var(--ck-spacing-small));margin-right:var(--ck-spacing-small)}.ck-button.ck-dropdown-menu-list__nested-menu__item__button:focus{box-shadow:none;border-color:#0000}.ck-button.ck-dropdown-menu-list__nested-menu__item__button:focus:not(.ck-on){background:var(--ck-color-button-default-hover-background)}.ck.ck-button.ck-dropdown-menu-list__nested-menu__button{width:100%;padding:var(--ck-spacing-tiny) calc(2 * var(--ck-spacing-standard));border-radius:0}.ck.ck-button.ck-dropdown-menu-list__nested-menu__button:focus{box-shadow:none;border-color:#0000}.ck.ck-button.ck-dropdown-menu-list__nested-menu__button:focus:not(.ck-on){background:var(--ck-color-button-default-hover-background)}.ck.ck-button.ck-dropdown-menu-list__nested-menu__button>.ck-button__label{text-overflow:ellipsis;flex-grow:1;overflow:hidden}.ck.ck-button.ck-dropdown-menu-list__nested-menu__button.ck-disabled>.ck-button__label{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-dropdown-menu-list__nested-menu__button.ck-icon-spacing:not(:has(.ck-button__icon))>.ck-button__label{margin-left:calc(var(--ck-icon-size) - var(--ck-spacing-small))}.ck.ck-button.ck-dropdown-menu-list__nested-menu__button>.ck-dropdown-menu-list__nested-menu__button__arrow{width:var(--ck-dropdown-arrow-size);pointer-events:none;z-index:var(--ck-z-default)}[dir="ltr"] :is(.ck.ck-button.ck-dropdown-menu-list__nested-menu__button>.ck-dropdown-menu-list__nested-menu__button__arrow){right:var(--ck-spacing-standard);margin-left:var(--ck-spacing-standard);margin-right:calc(-1 * var(--ck-spacing-small));transform:rotate(-90deg)}[dir="rtl"] :is(.ck.ck-button.ck-dropdown-menu-list__nested-menu__button>.ck-dropdown-menu-list__nested-menu__button__arrow){left:var(--ck-spacing-standard);margin-right:var(--ck-spacing-small);margin-left:calc(-1 * var(--ck-spacing-small));transform:rotate(90deg)}.ck.ck-button.ck-dropdown-menu-list__nested-menu__button.ck-disabled>.ck-dropdown-menu-list__nested-menu__button__arrow{opacity:var(--ck-disabled-opacity)}[dir="ltr"] .ck.ck-button.ck-dropdown-menu-list__nested-menu__button:not(.ck-button_with-text){padding-left:var(--ck-spacing-small)}[dir="rtl"] .ck.ck-button.ck-dropdown-menu-list__nested-menu__button:not(.ck-button_with-text){padding-right:var(--ck-spacing-small)}:root{--ck-dropdown-menu-menu-panel-max-width: 75vw}.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel{box-shadow:var(--ck-drop-shadow), 0 0;background:var(--ck-color-dropdown-panel-background);border:1px solid var(--ck-color-dropdown-panel-border);height:fit-content;max-width:var(--ck-dropdown-menu-menu-panel-max-width);max-height:314px;position:absolute;bottom:0;overflow-y:auto}.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel:after,.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel:before{display:none}.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel.ck-balloon-panel_es,.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel.ck-balloon-panel_se{border-top-left-radius:0}.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel.ck-balloon-panel_ws,.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel.ck-balloon-panel_sw{border-top-right-radius:0}.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel.ck-balloon-panel_en,.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel.ck-balloon-panel_ne{border-bottom-left-radius:0}.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel.ck-balloon-panel_wn,.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel.ck-balloon-panel_nw{border-bottom-right-radius:0}.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel:focus{outline:none}.ck.ck-balloon-panel.ck-dropdown-menu__nested-menu__panel{z-index:calc(var(--ck-z-panel) + 1)}:root{--ck-color-editable-blur-selection: #d9d9d9}.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content{border-radius:var(--ck-rounded-corners-radius);border:1px solid var(--ck-color-base-border);border-bottom-width:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content.ck-sticky-panel__content_sticky{border-bottom-width:1px}.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content .ck-menu-bar{border:0;border-bottom:1px solid var(--ck-color-base-border)}.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content .ck-toolbar{border:0}.ck.ck-editor__editable:not(.ck-editor__nested-editable){border-radius:var(--ck-rounded-corners-radius)}.ck.ck-editor__editable:not(.ck-editor__nested-editable).ck-focused{border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow), 0 0;outline:none}.ck.ck-editor__editable_inline{padding:0 var(--ck-spacing-standard);border:1px solid #0000;overflow:auto}.ck.ck-editor__editable_inline[dir="ltr"]{text-align:left}.ck.ck-editor__editable_inline[dir="rtl"]{text-align:right}.ck.ck-editor__editable_inline>:first-child{margin-top:var(--ck-spacing-large)}.ck.ck-editor__editable_inline>:last-child{margin-bottom:var(--ck-spacing-large)}.ck.ck-editor__editable_inline.ck-blurred ::selection{background:var(--ck-color-editable-blur-selection)}.ck.ck-balloon-panel.ck-toolbar-container[class*="arrow_n"]:after{border-bottom-color:var(--ck-color-panel-background)}.ck.ck-balloon-panel.ck-toolbar-container[class*="arrow_s"]:after{border-top-color:var(--ck-color-panel-background)}.ck.ck-form__row{padding:var(--ck-spacing-standard) var(--ck-spacing-large) 0;flex-direction:row;justify-content:space-between;align-items:flex-start;display:flex}.ck.ck-form__row.ck-form__row_large-top-padding{padding-top:var(--ck-spacing-large)}.ck.ck-form__row.ck-form__row_large-bottom-padding{padding-bottom:var(--ck-spacing-large)}.ck.ck-form__row.ck-form__row_with-submit{flex-wrap:nowrap}.ck.ck-form__row.ck-form__row_with-submit>:not(:first-child){margin-inline-start:var(--ck-spacing-standard)}.ck.ck-form__row>.ck.ck-form__row{padding:0}:root{--ck-form-header-height: 3.384em}.ck.ck-form__header{padding:var(--ck-spacing-small) var(--ck-spacing-large);height:var(--ck-form-header-height);line-height:var(--ck-form-header-height);border-bottom:1px solid var(--ck-color-base-border);flex-flow:row;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.ck.ck-form__header>.ck-icon{flex-shrink:0;margin-inline-end:var(--ck-spacing-medium)}.ck.ck-form__header .ck-form__header__label{--ck-font-size-base: 1.153em;font-weight:bold}.ck.ck-form__header:has(.ck-button-back.ck-hidden){padding-inline:var(--ck-spacing-large) var(--ck-spacing-large)}.ck.ck-form__header:has(.ck-button-back:not(.ck-hidden)){padding-inline:var(--ck-spacing-small) var(--ck-spacing-small)}.ck.ck-form__header>.ck-button-back{margin-inline-end:var(--ck-spacing-small)}.ck.ck-form__header>.ck.ck-button{flex-shrink:0}.ck.ck-form__header h2.ck-form__header__label{text-overflow:ellipsis;flex-grow:1;overflow:hidden}:root{--ck-icon-size: calc(var(--ck-line-height-base) * var(--ck-font-size-normal));--ck-icon-font-size: .833335em}.ck.ck-icon{width:var(--ck-icon-size);height:var(--ck-icon-size);font-size:var(--ck-icon-font-size);cursor:inherit}.ck.ck-icon *{cursor:inherit}.ck.ck-icon.ck-icon_inherit-color{color:inherit}.ck.ck-icon.ck-icon_inherit-color *{color:inherit}.ck.ck-icon.ck-icon_inherit-color *:not([fill]){fill:currentColor}.ck.ck-icon{vertical-align:middle}:root{--ck-input-width: 18em;--ck-input-text-width: var(--ck-input-width)}.ck.ck-input{border-radius:var(--ck-rounded-corners-radius);background:var(--ck-color-input-background);border:1px solid var(--ck-color-input-border);padding:var(--ck-spacing-extra-tiny) var(--ck-spacing-medium);min-width:var(--ck-input-width);min-height:var(--ck-ui-component-min-height);transition:box-shadow 0.1s ease-in-out, border 0.1s ease-in-out}@media (prefers-reduced-motion:reduce){.ck.ck-input{transition:none}}.ck.ck-input:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow), 0 0;outline:none}.ck.ck-input[readonly]{border:1px solid var(--ck-color-input-disabled-border);background:var(--ck-color-input-disabled-background);color:var(--ck-color-input-disabled-text)}.ck.ck-input[readonly]:focus{box-shadow:var(--ck-focus-disabled-outer-shadow), 0 0}.ck.ck-input.ck-error{border-color:var(--ck-color-input-error-border);animation:0.3s both ck-input-shake}@media (prefers-reduced-motion:reduce){.ck.ck-input.ck-error{animation:none}}.ck.ck-input.ck-error:focus{box-shadow:var(--ck-focus-error-outer-shadow), 0 0}@keyframes ck-input-shake{20%{transform:translateX(-2px)}40%{transform:translateX(2px)}60%{transform:translateX(-1px)}80%{transform:translateX(1px)}}.ck-textarea{overflow-x:hidden}.ck.ck-label{font-weight:bold;display:block}.ck.ck-voice-label{display:none}:root{--ck-labeled-field-view-transition: .1s cubic-bezier(0, 0, .24, .95);--ck-labeled-field-empty-unfocused-max-width: 100% - 2 * var(--ck-spacing-medium);--ck-labeled-field-label-default-position-x: var(--ck-spacing-medium);--ck-labeled-field-label-default-position-y: calc(.6 * var(--ck-font-size-base));--ck-color-labeled-field-label-background: var(--ck-color-base-background)}.ck.ck-labeled-field-view{border-radius:var(--ck-rounded-corners-radius)}.ck.ck-labeled-field-view .ck.ck-label{display:block;position:absolute}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper{width:100%;display:flex}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{pointer-events:none;background:var(--ck-color-labeled-field-label-background);padding:0 calc(.5 * var(--ck-font-size-tiny));line-height:initial;text-overflow:ellipsis;max-width:100%;transition:transform var(--ck-labeled-field-view-transition), padding var(--ck-labeled-field-view-transition), background var(--ck-labeled-field-view-transition);font-weight:normal;top:0;overflow:hidden}[dir="ltr"] :is(.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label){transform-origin:0 0;transform:translate(var(--ck-spacing-medium), -6px) scale(0.75);left:0}[dir="rtl"] :is(.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label){transform-origin:100% 0;transform:translate(calc(-1 * var(--ck-spacing-medium)), -6px) scale(0.75);right:0}@media (prefers-reduced-motion:reduce){.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{transition:none}}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper{position:relative}.ck.ck-labeled-field-view.ck-error>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,.ck.ck-labeled-field-view.ck-error .ck-input:not([readonly])+.ck.ck-label{color:var(--ck-color-base-error)}.ck.ck-labeled-field-view .ck-labeled-field-view__status{font-size:var(--ck-font-size-small);margin-top:var(--ck-spacing-small);white-space:normal}.ck.ck-labeled-field-view .ck-labeled-field-view__status.ck-labeled-field-view__status_error{color:var(--ck-color-base-error)}.ck.ck-labeled-field-view.ck-disabled>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{color:var(--ck-color-input-disabled-text)}[dir="ltr"] :is(.ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty:not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label, .ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder):not(.ck-error)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label){transform:translate(var(--ck-labeled-field-label-default-position-x), var(--ck-labeled-field-label-default-position-y)) scale(1)}[dir="rtl"] :is(.ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty:not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label, .ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder):not(.ck-error)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label){transform:translate(calc(-1 * var(--ck-labeled-field-label-default-position-x)), var(--ck-labeled-field-label-default-position-y)) scale(1)}.ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty:not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder):not(.ck-error)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{max-width:calc(var(--ck-labeled-field-empty-unfocused-max-width));background:none;padding:0}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown>.ck.ck-button{background:none}.ck.ck-labeled-field-view.ck-labeled-field-view_empty>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown>.ck-button>.ck-button__label{opacity:0}.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown+.ck-label{max-width:calc(var(--ck-labeled-field-empty-unfocused-max-width) - var(--ck-dropdown-arrow-size) - var(--ck-spacing-standard))}.ck.ck-labeled-field-view.ck-labeled-field-view_full-width{flex-grow:1}.ck.ck-labeled-input .ck-labeled-input__status{font-size:var(--ck-font-size-small);margin-top:var(--ck-spacing-small);white-space:normal}.ck.ck-labeled-input .ck-labeled-input__status_error{color:var(--ck-color-base-error)}.ck.ck-list{border-radius:var(--ck-rounded-corners-radius);background:var(--ck-color-list-background);padding:var(--ck-spacing-small) 0;-webkit-user-select:none;user-select:none;flex-direction:column;list-style-type:none;display:flex}.ck.ck-list .ck-list__item,.ck.ck-list .ck-list__separator{display:block}.ck.ck-list .ck-list__item>:focus{z-index:var(--ck-z-default);position:relative}.ck.ck-list__item{cursor:default;min-width:15em}.ck.ck-list__item>.ck-button:not(.ck-list-item-button){padding:var(--ck-spacing-tiny) calc(2 * var(--ck-spacing-standard));min-height:unset;border-radius:0;width:100%}[dir="ltr"] :is(.ck.ck-list__item>.ck-button:not(.ck-list-item-button)){text-align:left}[dir="rtl"] :is(.ck.ck-list__item>.ck-button:not(.ck-list-item-button)){text-align:right}.ck.ck-list__item>.ck-button:not(.ck-list-item-button) .ck-button__label{line-height:calc(var(--ck-line-height-base) * var(--ck-font-size-base))}.ck.ck-list__item>.ck-button:not(.ck-list-item-button):active{box-shadow:none}.ck.ck-list__item>.ck-button:not(.ck-list-item-button).ck-on{background:var(--ck-color-list-button-on-background);color:var(--ck-color-list-button-on-text)}.ck.ck-list__item>.ck-button:not(.ck-list-item-button).ck-on:active{box-shadow:none}.ck.ck-list__item>.ck-button:not(.ck-list-item-button).ck-on:hover:not(.ck-disabled){background:var(--ck-color-list-button-on-background-focus)}.ck.ck-list__item>.ck-button:not(.ck-list-item-button).ck-on:focus:not(.ck-disabled){border-color:var(--ck-color-base-background)}.ck.ck-list__item>.ck-button:not(.ck-list-item-button):hover:not(.ck-disabled){background:var(--ck-color-list-button-hover-background)}.ck.ck-list__item>.ck-button.ck-switchbutton.ck-on{background:var(--ck-color-list-background);color:inherit}.ck.ck-list__item>.ck-button.ck-switchbutton.ck-on:hover:not(.ck-disabled){background:var(--ck-color-list-button-hover-background);color:inherit}.ck-list .ck-list__group{padding-top:var(--ck-spacing-medium)}.ck-list .ck-list__group:first-child{padding-top:0}:not(.ck-hidden)~:is(.ck-list .ck-list__group){border-top:1px solid var(--ck-color-base-border)}.ck-list .ck-list__group>.ck-label{padding:var(--ck-spacing-medium) var(--ck-spacing-large) 0;font-size:11px;font-weight:bold}.ck.ck-list__separator{background:var(--ck-color-base-border);width:100%;height:1px;margin:var(--ck-spacing-small) 0}:root{--ck-balloon-border-width: 1px;--ck-balloon-arrow-offset: 2px;--ck-balloon-arrow-height: 10px;--ck-balloon-arrow-half-width: 8px;--ck-balloon-arrow-drop-shadow: 0 2px 2px var(--ck-color-shadow-drop);--ck-balloon-panel-arrow-z-index: calc(var(--ck-z-default) - 3)}.ck.ck-balloon-panel{border-radius:var(--ck-rounded-corners-radius);box-shadow:var(--ck-drop-shadow), 0 0;background:var(--ck-color-panel-background);border:var(--ck-balloon-border-width) solid var(--ck-color-panel-border);min-height:15px;z-index:var(--ck-z-panel);display:none;position:absolute}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before,.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after{content:"";border-style:solid;width:0;height:0;position:absolute}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*="arrow_n"]:before,.ck.ck-balloon-panel[class*="arrow_n"]:after{border-width:0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width)}.ck.ck-balloon-panel[class*="arrow_n"]:before{border-color:transparent transparent var(--ck-color-panel-border) transparent;margin-top:calc(-1 * var(--ck-balloon-border-width));z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel[class*="arrow_n"]:after{border-color:transparent transparent var(--ck-color-panel-background) transparent;margin-top:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width));z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*="arrow_s"]:before,.ck.ck-balloon-panel[class*="arrow_s"]:after{border-width:var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width)}.ck.ck-balloon-panel[class*="arrow_s"]:before{border-color:var(--ck-color-panel-border) transparent transparent;filter:drop-shadow(var(--ck-balloon-arrow-drop-shadow));margin-bottom:calc(-1 * var(--ck-balloon-border-width));z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel[class*="arrow_s"]:after{border-color:var(--ck-color-panel-background) transparent transparent transparent;margin-bottom:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width));z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*="arrow_e"]:before,.ck.ck-balloon-panel[class*="arrow_e"]:after{border-width:var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height)}.ck.ck-balloon-panel[class*="arrow_e"]:before{border-color:transparent transparent transparent var(--ck-color-panel-border);margin-right:calc(-1 * var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*="arrow_e"]:after{border-color:transparent transparent transparent var(--ck-color-panel-background);margin-right:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*="arrow_w"]:before,.ck.ck-balloon-panel[class*="arrow_w"]:after{border-width:var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0}.ck.ck-balloon-panel[class*="arrow_w"]:before{border-color:transparent var(--ck-color-panel-border) transparent transparent;margin-left:calc(-1 * var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*="arrow_w"]:after{border-color:transparent var(--ck-color-panel-background) transparent transparent;margin-left:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_n:before,.ck.ck-balloon-panel.ck-balloon-panel_arrow_n:after{margin-left:calc(-1 * var(--ck-balloon-arrow-half-width));left:50%;top:calc(-1 * var(--ck-balloon-arrow-height))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nw:before,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nw:after{left:calc(2 * var(--ck-balloon-arrow-half-width));top:calc(-1 * var(--ck-balloon-arrow-height))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_ne:before,.ck.ck-balloon-panel.ck-balloon-panel_arrow_ne:after{right:calc(2 * var(--ck-balloon-arrow-half-width));top:calc(-1 * var(--ck-balloon-arrow-height))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_s:before,.ck.ck-balloon-panel.ck-balloon-panel_arrow_s:after{margin-left:calc(-1 * var(--ck-balloon-arrow-half-width));left:50%;bottom:calc(-1 * var(--ck-balloon-arrow-height))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_sw:before,.ck.ck-balloon-panel.ck-balloon-panel_arrow_sw:after{left:calc(2 * var(--ck-balloon-arrow-half-width));bottom:calc(-1 * var(--ck-balloon-arrow-height))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_se:before,.ck.ck-balloon-panel.ck-balloon-panel_arrow_se:after{right:calc(2 * var(--ck-balloon-arrow-half-width));bottom:calc(-1 * var(--ck-balloon-arrow-height))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_sme:before,.ck.ck-balloon-panel.ck-balloon-panel_arrow_sme:after{margin-right:calc(2 * var(--ck-balloon-arrow-half-width));right:25%;bottom:calc(-1 * var(--ck-balloon-arrow-height))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_smw:before,.ck.ck-balloon-panel.ck-balloon-panel_arrow_smw:after{margin-left:calc(2 * var(--ck-balloon-arrow-half-width));left:25%;bottom:calc(-1 * var(--ck-balloon-arrow-height))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nme:before,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nme:after{margin-right:calc(2 * var(--ck-balloon-arrow-half-width));right:25%;top:calc(-1 * var(--ck-balloon-arrow-height))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nmw:before,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nmw:after{margin-left:calc(2 * var(--ck-balloon-arrow-half-width));left:25%;top:calc(-1 * var(--ck-balloon-arrow-height))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_e:before,.ck.ck-balloon-panel.ck-balloon-panel_arrow_e:after{right:calc(-1 * var(--ck-balloon-arrow-height));margin-top:calc(-1 * var(--ck-balloon-arrow-half-width));top:50%}.ck.ck-balloon-panel.ck-balloon-panel_arrow_w:before,.ck.ck-balloon-panel.ck-balloon-panel_arrow_w:after{left:calc(-1 * var(--ck-balloon-arrow-height));margin-top:calc(-1 * var(--ck-balloon-arrow-half-width));top:50%}.ck.ck-balloon-panel.ck-balloon-panel_visible{display:block}.ck .ck-balloon-rotator__navigation{background:var(--ck-color-toolbar-background);border-bottom:1px solid var(--ck-color-toolbar-border);padding:0 var(--ck-spacing-small);align-items:center;display:flex}.ck .ck-balloon-rotator__navigation>*{margin-right:var(--ck-spacing-small);margin-top:var(--ck-spacing-small);margin-bottom:var(--ck-spacing-small)}.ck .ck-balloon-rotator__navigation .ck-balloon-rotator__counter{margin-right:var(--ck-spacing-standard);margin-left:var(--ck-spacing-small)}.ck .ck-balloon-rotator__navigation{justify-content:center}.ck .ck-balloon-rotator__content .ck.ck-annotation-wrapper{box-shadow:none}.ck .ck-balloon-rotator__content .ck-toolbar{justify-content:center}:root{--ck-balloon-fake-panel-offset-horizontal: 6px;--ck-balloon-fake-panel-offset-vertical: 6px}.ck .ck-fake-panel div{box-shadow:var(--ck-drop-shadow), 0 0;background:var(--ck-color-panel-background);border:1px solid var(--ck-color-panel-border);border-radius:var(--ck-border-radius);width:100%;height:100%;min-height:15px;position:absolute}.ck .ck-fake-panel div:first-child{margin-left:var(--ck-balloon-fake-panel-offset-horizontal);margin-top:var(--ck-balloon-fake-panel-offset-vertical);z-index:2}.ck .ck-fake-panel div:nth-child(2){margin-left:calc(var(--ck-balloon-fake-panel-offset-horizontal) * 2);margin-top:calc(var(--ck-balloon-fake-panel-offset-vertical) * 2);z-index:1}.ck .ck-fake-panel div:nth-child(3){margin-left:calc(var(--ck-balloon-fake-panel-offset-horizontal) * 3);margin-top:calc(var(--ck-balloon-fake-panel-offset-vertical) * 3)}.ck .ck-fake-panel{z-index:calc(var(--ck-z-panel) - 1);position:absolute}.ck .ck-balloon-panel_arrow_s+.ck-fake-panel,.ck .ck-balloon-panel_arrow_se+.ck-fake-panel,.ck .ck-balloon-panel_arrow_sw+.ck-fake-panel{--ck-balloon-fake-panel-offset-vertical: -6px}.ck.ck-sticky-panel .ck-sticky-panel__content_sticky{box-shadow:var(--ck-drop-shadow), 0 0;z-index:var(--ck-z-panel);border-width:0 1px 1px;border-top-left-radius:0;border-top-right-radius:0;position:fixed;top:0}.ck.ck-sticky-panel .ck-sticky-panel__content_sticky_bottom-limit{position:absolute;top:auto}.ck.ck-autocomplete>.ck-search__results{border-radius:var(--ck-rounded-corners-radius);box-shadow:var(--ck-drop-shadow), 0 0;background:var(--ck-color-base-background);border:1px solid var(--ck-color-dropdown-panel-border);min-width:auto;max-height:200px;position:absolute;overflow-y:auto}.ck.ck-autocomplete>.ck-search__results.ck-search__results_n{border-bottom-right-radius:0;border-bottom-left-radius:0;margin-bottom:-1px;bottom:100%}.ck.ck-autocomplete>.ck-search__results.ck-search__results_s{border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px;top:100%;bottom:auto}.ck.ck-autocomplete>.ck-search__results{z-index:var(--ck-z-panel)}.ck.ck-autocomplete{position:relative}:root{--ck-search-field-view-horizontal-spacing: calc(var(--ck-icon-size) + var(--ck-spacing-medium))}.ck.ck-search>.ck-labeled-field-view .ck-input{width:100%}.ck.ck-search>.ck-labeled-field-view>.ck-labeled-field-view__input-wrapper>.ck-icon{position:absolute;top:50%;transform:translateY(-50%)}[dir="ltr"] :is(.ck.ck-search>.ck-labeled-field-view>.ck-labeled-field-view__input-wrapper>.ck-icon){left:var(--ck-spacing-medium)}[dir="rtl"] :is(.ck.ck-search>.ck-labeled-field-view>.ck-labeled-field-view__input-wrapper>.ck-icon){right:var(--ck-spacing-medium)}.ck.ck-search>.ck-labeled-field-view .ck-search__reset{position:absolute;top:50%;transform:translateY(-50%)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon{--ck-labeled-field-label-default-position-x: var(--ck-search-field-view-horizontal-spacing)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon>.ck-labeled-field-view__input-wrapper>.ck-icon{opacity:0.5;pointer-events:none}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon .ck-input{width:100%}[dir="ltr"] :is(.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon .ck-input){padding-left:var(--ck-search-field-view-horizontal-spacing)}[dir="rtl"] :is(.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon .ck-input):not(.ck-input-text_empty){padding-left:var(--ck-search-field-view-horizontal-spacing)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset{--ck-labeled-field-empty-unfocused-max-width: 100% - 2 * var(--ck-search-field-view-horizontal-spacing)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset.ck-labeled-field-view_empty{--ck-labeled-field-empty-unfocused-max-width: 100% - var(--ck-search-field-view-horizontal-spacing) - var(--ck-spacing-medium)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-search__reset{opacity:0.5;background:none;min-width:auto;min-height:auto;padding:0}[dir="ltr"] :is(.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-search__reset){right:var(--ck-spacing-medium)}[dir="rtl"] :is(.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-search__reset){left:var(--ck-spacing-medium)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-search__reset:hover{opacity:1}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-input{width:100%}[dir="ltr"] :is(.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-input):not(.ck-input-text_empty){padding-right:var(--ck-search-field-view-horizontal-spacing)}[dir="rtl"] :is(.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-input){padding-right:var(--ck-search-field-view-horizontal-spacing)}.ck.ck-search>.ck-search__results{min-width:100%}.ck.ck-search>.ck-search__results>.ck-search__info{width:100%;padding:var(--ck-spacing-medium) var(--ck-spacing-large)}.ck.ck-search>.ck-search__results>.ck-search__info *{white-space:normal}.ck.ck-search>.ck-search__results>.ck-search__info>span:first-child{font-weight:bold;display:block}.ck.ck-search>.ck-search__results>.ck-search__info>span:last-child{margin-top:var(--ck-spacing-medium)}.ck.ck-search>.ck-search__results>.ck-search__info:not(.ck-hidden)~*{display:none}.ck.ck-highlighted-text mark{background:var(--ck-color-highlight-background);vertical-align:initial;font-weight:inherit;line-height:inherit;font-size:inherit}.ck.ck-balloon-panel.ck-tooltip{--ck-balloon-border-width: 0px;--ck-balloon-arrow-offset: 0px;--ck-balloon-arrow-half-width: 4px;--ck-balloon-arrow-height: 4px;--ck-tooltip-text-padding: 4px;--ck-color-panel-background: var(--ck-color-tooltip-background);padding:0 var(--ck-spacing-medium);box-shadow:none;-webkit-user-select:none;user-select:none}.ck.ck-balloon-panel.ck-tooltip .ck-tooltip__text{color:var(--ck-color-tooltip-text);font-size:0.9em;line-height:1.5}.ck.ck-balloon-panel.ck-tooltip.ck-tooltip_multi-line .ck-tooltip__text{white-space:break-spaces;padding:var(--ck-tooltip-text-padding) 0;max-width:200px;display:inline-block}.ck.ck-balloon-panel.ck-tooltip:before{display:none}.ck.ck-balloon-panel.ck-tooltip{z-index:calc(var(--ck-z-dialog) + 100)}:root{--ck-toolbar-spinner-size: 18px}.ck.ck-spinner-container{width:var(--ck-toolbar-spinner-size);height:var(--ck-toolbar-spinner-size);animation:1.5s linear infinite ck-spinner-rotate;display:block}@media (prefers-reduced-motion:reduce){.ck.ck-spinner-container{animation-duration:3s}}.ck.ck-spinner-container{position:relative}.ck.ck-spinner{width:var(--ck-toolbar-spinner-size);height:var(--ck-toolbar-spinner-size);border:2px solid var(--ck-color-text);z-index:1;border-top-color:#0000;border-radius:50%;margin:0 auto;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}@keyframes ck-spinner-rotate{to{transform:rotate(360deg)}}.ck.ck-toolbar{border-radius:var(--ck-rounded-corners-radius);background:var(--ck-color-toolbar-background);padding:0 var(--ck-spacing-small);border:1px solid var(--ck-color-toolbar-border);-webkit-user-select:none;user-select:none;flex-flow:row;align-items:center;display:flex}.ck.ck-toolbar .ck.ck-toolbar__separator{height:var(--ck-icon-size);background:var(--ck-color-toolbar-border);width:1px;min-width:1px;margin-top:var(--ck-spacing-small);margin-bottom:var(--ck-spacing-small);display:inline-block}.ck.ck-toolbar .ck.ck-toolbar__separator:first-child,.ck.ck-toolbar .ck.ck-toolbar__separator:last-child{display:none}.ck.ck-toolbar .ck-toolbar__line-break{flex-basis:100%;height:0}.ck.ck-toolbar>.ck-toolbar__items>:not(.ck-toolbar__line-break){margin-right:var(--ck-spacing-small)}.ck.ck-toolbar>.ck-toolbar__items:empty+.ck.ck-toolbar__separator{display:none}.ck.ck-toolbar>.ck-toolbar__items{flex-flow:wrap;flex-grow:1;align-items:center;display:flex}.ck.ck-toolbar>.ck-toolbar__items>:not(.ck-toolbar__line-break),.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown{margin-top:var(--ck-spacing-small);margin-bottom:var(--ck-spacing-small)}.ck.ck-toolbar.ck-toolbar_vertical{padding:0}.ck.ck-toolbar.ck-toolbar_vertical>.ck-toolbar__items>.ck{border-radius:0;width:100%;margin:0}.ck.ck-toolbar.ck-toolbar_compact{padding:0}.ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>*{margin:0}.ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>*:not(:first-child):not(:last-child){border-radius:0}.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown>.ck.ck-button.ck-dropdown__button{padding-left:var(--ck-spacing-tiny)}.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown>.ck-dropdown__button .ck-dropdown__arrow{display:none}.ck.ck-toolbar .ck-toolbar__nested-toolbar-dropdown>.ck-dropdown__panel{min-width:auto}.ck.ck-toolbar .ck-toolbar__nested-toolbar-dropdown>.ck-button>.ck-button__label{width:auto;max-width:7em}.ck.ck-toolbar:focus{outline:none}.ck-toolbar-container .ck.ck-toolbar{border:0}.ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-toolbar.ck-toolbar_vertical>.ck-toolbar__items{flex-direction:column}.ck.ck-toolbar.ck-toolbar_floating>.ck-toolbar__items{flex-wrap:nowrap}:is([dir="rtl"] .ck.ck-toolbar, .ck.ck-toolbar[dir="rtl"])>.ck-toolbar__items>.ck{margin-right:0}:is([dir="rtl"] .ck.ck-toolbar, .ck.ck-toolbar[dir="rtl"]):not(.ck-toolbar_compact)>.ck-toolbar__items>.ck{margin-left:var(--ck-spacing-small)}:is([dir="rtl"] .ck.ck-toolbar, .ck.ck-toolbar[dir="rtl"])>.ck-toolbar__items>.ck:last-child{margin-left:0}:is([dir="rtl"] .ck.ck-toolbar, .ck.ck-toolbar[dir="rtl"]).ck-toolbar_compact>.ck-toolbar__items>.ck:first-child{border-top-left-radius:0;border-bottom-left-radius:0}:is([dir="rtl"] .ck.ck-toolbar, .ck.ck-toolbar[dir="rtl"]).ck-toolbar_compact>.ck-toolbar__items>.ck:last-child{border-top-right-radius:0;border-bottom-right-radius:0}:is([dir="rtl"] .ck.ck-toolbar, .ck.ck-toolbar[dir="rtl"])>.ck.ck-toolbar__separator,:is([dir="rtl"] .ck.ck-toolbar, .ck.ck-toolbar[dir="rtl"]).ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child){margin-left:var(--ck-spacing-small)}:is([dir="ltr"] .ck.ck-toolbar, .ck.ck-toolbar[dir="ltr"])>.ck-toolbar__items>.ck:last-child{margin-right:0}:is([dir="ltr"] .ck.ck-toolbar, .ck.ck-toolbar[dir="ltr"]).ck-toolbar_compact>.ck-toolbar__items>.ck:first-child{border-top-right-radius:0;border-bottom-right-radius:0}:is([dir="ltr"] .ck.ck-toolbar, .ck.ck-toolbar[dir="ltr"]).ck-toolbar_compact>.ck-toolbar__items>.ck:last-child{border-top-left-radius:0;border-bottom-left-radius:0}:is([dir="ltr"] .ck.ck-toolbar, .ck.ck-toolbar[dir="ltr"])>.ck.ck-toolbar__separator,:is([dir="ltr"] .ck.ck-toolbar, .ck.ck-toolbar[dir="ltr"]).ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child){margin-right:var(--ck-spacing-small)}:root{--ck-color-block-toolbar-button: var(--ck-color-text);--ck-block-toolbar-button-size: var(--ck-font-size-normal)}.ck.ck-block-toolbar-button{color:var(--ck-color-block-toolbar-button);font-size:var(--ck-block-toolbar-size);z-index:var(--ck-z-default);position:absolute}.ck.ck-menu-bar{background:var(--ck-color-base-background);padding:var(--ck-spacing-small);justify-content:flex-start;gap:var(--ck-spacing-small);border:1px solid var(--ck-color-toolbar-border);flex-wrap:wrap;width:100%;display:flex}.ck.ck-menu-bar__menu>.ck-menu-bar__menu__button{width:100%}.ck.ck-menu-bar__menu>.ck-menu-bar__menu__button>.ck-button__label{text-overflow:ellipsis;flex-grow:1;overflow:hidden}.ck.ck-menu-bar__menu>.ck-menu-bar__menu__button.ck-disabled>.ck-button__label{opacity:var(--ck-disabled-opacity)}[dir="ltr"] :is(.ck.ck-menu-bar__menu>.ck-menu-bar__menu__button):not(.ck-button_with-text){padding-left:var(--ck-spacing-small)}[dir="rtl"] :is(.ck.ck-menu-bar__menu>.ck-menu-bar__menu__button):not(.ck-button_with-text){padding-right:var(--ck-spacing-small)}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__button{padding:var(--ck-spacing-small) var(--ck-spacing-medium);min-height:unset}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__button .ck-button__label{width:unset;line-height:unset;overflow:visible}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__button.ck-on{border-bottom-right-radius:0;border-bottom-left-radius:0}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__button .ck-icon{display:none}.ck.ck-menu-bar__menu>.ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{pointer-events:none;z-index:var(--ck-z-default)}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button{border-radius:0}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{width:var(--ck-dropdown-arrow-size)}[dir="ltr"] :is(.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow){margin-left:var(--ck-spacing-standard);margin-right:calc(-1 * var(--ck-spacing-small));transform:rotate(-90deg)}[dir="rtl"] :is(.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow){left:var(--ck-spacing-standard);margin-right:var(--ck-spacing-small);margin-left:calc(-1 * var(--ck-spacing-small));transform:rotate(90deg)}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button.ck-disabled>.ck-menu-bar__menu__button__arrow{opacity:var(--ck-disabled-opacity)}:root{--ck-menu-bar-menu-max-width: 75vw;--ck-menu-bar-nested-menu-horizontal-offset: 5px}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel{border-radius:var(--ck-rounded-corners-radius);box-shadow:var(--ck-drop-shadow), 0 0;background:var(--ck-color-dropdown-panel-background);border:1px solid var(--ck-color-dropdown-panel-border);height:fit-content;z-index:var(--ck-z-panel);max-width:var(--ck-menu-bar-menu-max-width);position:absolute;bottom:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_es,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_se{border-top-left-radius:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ws,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_sw{border-top-right-radius:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_en,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ne{border-bottom-left-radius:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_wn,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_nw{border-bottom-right-radius:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel:focus{outline:none}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ne,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_nw{bottom:100%}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_se,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_sw{top:100%;bottom:auto}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ne,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_se{left:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_nw,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_sw{right:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_es,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_en{left:calc(100% - var(--ck-menu-bar-nested-menu-horizontal-offset))}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_es{top:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_en{bottom:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ws,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_wn{right:calc(100% - var(--ck-menu-bar-nested-menu-horizontal-offset))}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ws{top:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_wn{bottom:0}.ck.ck-menu-bar .ck-list-item-button:focus,.ck.ck-menu-bar .ck-list-item-button:active{box-shadow:none;border-color:#0000}.ck.ck-menu-bar.ck-menu-bar_focus-border-enabled .ck-list-item-button:focus,.ck.ck-menu-bar.ck-menu-bar_focus-border-enabled .ck-list-item-button:active{z-index:2;border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow), 0 0;outline:none;position:relative}.ck.ck-menu-bar__menu{font-size:inherit;display:block}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level{max-width:100%}.ck.ck-menu-bar__menu{position:relative}:root{--ck-menu-bar-menu-item-min-width: 18em}.ck.ck-menu-bar__menu .ck.ck-menu-bar__menu__item{min-width:var(--ck-menu-bar-menu-item-min-width)}.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button{border-radius:0}.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button>.ck-spinner-container,.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button>.ck-spinner-container .ck-spinner{--ck-toolbar-spinner-size: 20px}.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button>.ck-spinner-container{font-size:var(--ck-icon-font-size)}[dir="ltr"] :is(.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button>.ck-spinner-container){margin-right:var(--ck-spacing-medium)}[dir="rtl"] :is(.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button>.ck-spinner-container){margin-left:var(--ck-spacing-medium)}.ck-content code,.ibo-is-html-content code{background-color:#c7c7c74d;border-radius:2px;padding:0.15em}.ck.ck-editor__editable .ck-code_selected{background-color:#c7c7c780}.ck-content blockquote,.ibo-is-html-content blockquote{border-left:5px solid #ccc;margin-left:0;margin-right:0;padding-left:1.5em;padding-right:1.5em;font-style:italic;overflow:hidden}.ck-content[dir="rtl"] blockquote,.ibo-is-html-content[dir="rtl"] blockquote{border-left:0;border-right:5px solid #ccc}:root{--ck-bookmark-icon-hover-fill-color: var(--ck-color-widget-hover-border);--ck-bookmark-icon-selected-fill-color: var(--ck-color-focus-border);--ck-bookmark-icon-animation-duration: var(--ck-widget-handler-animation-duration);--ck-bookmark-icon-animation-curve: var(--ck-widget-handler-animation-curve)}.ck .ck-bookmark.ck-widget{outline:none;display:inline-block}.ck .ck-bookmark.ck-widget .ck-bookmark__icon .ck-icon__fill{transition:fill var(--ck-bookmark-icon-animation-duration) var(--ck-bookmark-icon-animation-curve)}.ck .ck-bookmark.ck-widget:hover .ck-bookmark__icon .ck-icon__fill{fill:var(--ck-bookmark-icon-hover-fill-color)}.ck .ck-bookmark.ck-widget.ck-widget_selected .ck-bookmark__icon .ck-icon__fill{fill:var(--ck-bookmark-icon-selected-fill-color)}.ck .ck-bookmark.ck-widget.ck-widget_selected,.ck .ck-bookmark.ck-widget.ck-widget_selected:hover{outline:none}.ck .ck-bookmark.ck-widget .ck-bookmark__icon{display:block;position:relative;top:-0.1em}.ck .ck-bookmark.ck-widget .ck-bookmark__icon .ck-icon{vertical-align:middle;width:auto;height:1.2em}.ck .ck-fake-bookmark-selection{background:var(--ck-color-link-fake-selection)}.ck .ck-fake-bookmark-selection_collapsed{border-right:1px solid var(--ck-color-base-text);outline:1px solid #ffffff80;height:100%;margin-right:-1px}.ck.ck-bookmark-balloon .ck.ck-toolbar>.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-bookmark-toolbar__preview{padding:0 var(--ck-spacing-medium);max-width:var(--ck-input-width);text-overflow:ellipsis;text-align:center;-webkit-user-select:none;user-select:none;cursor:default;min-width:3em;font-weight:normal;overflow:hidden}:root{--ck-bookmark-form-width: 340px}@media screen and (width <= 600px){:root{--ck-bookmark-form-width: 300px}}.ck.ck-bookmark-form{width:var(--ck-bookmark-form-width)}:root{--ck-image-processing-highlight-color: #f9fafa;--ck-image-processing-background-color: #e3e5e8}.ck.ck-editor__editable .image.image-processing{position:relative}.ck.ck-editor__editable .image.image-processing:before{content:"";z-index:1;background:linear-gradient(90deg, var(--ck-image-processing-background-color), var(--ck-image-processing-highlight-color), var(--ck-image-processing-background-color));background-size:200% 100%;width:100%;height:100%;animation:2s linear infinite ck-image-processing-animation;position:absolute;top:0;left:0}.ck.ck-editor__editable .image.image-processing img{height:100%}@keyframes ck-image-processing-animation{0%{background-position:200% 0}100%{background-position:-200% 0}}:root{--ck-clipboard-drop-target-dot-width: 12px;--ck-clipboard-drop-target-dot-height: 8px;--ck-clipboard-drop-target-color: var(--ck-color-focus-border)}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span{bottom:calc(-.5 * var(--ck-clipboard-drop-target-dot-height));top:calc(-.5 * var(--ck-clipboard-drop-target-dot-height));border:1px solid var(--ck-clipboard-drop-target-color);background:var(--ck-clipboard-drop-target-color);margin-left:-1px;position:absolute}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span:after{content:"";width:0;height:0;left:50%;top:calc(-.5 * var(--ck-clipboard-drop-target-dot-height));border-color:var(--ck-clipboard-drop-target-color) transparent transparent transparent;border-width:calc(var(--ck-clipboard-drop-target-dot-height)) calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0 calc(.5 * var(--ck-clipboard-drop-target-dot-width));border-style:solid;display:block;position:absolute;transform:translateX(-50%)}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span{width:0}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position{pointer-events:none;display:inline;position:relative}.ck.ck-editor__editable .ck-widget.ck-clipboard-drop-target-range{outline:var(--ck-widget-outline-thickness) solid var(--ck-clipboard-drop-target-color) !important}.ck.ck-editor__editable .ck-widget:-webkit-drag{zoom:0.6;outline:none !important}.ck.ck-editor__editable .ck-widget:-webkit-drag>.ck-widget__selection-handle,.ck.ck-editor__editable .ck-widget:-webkit-drag>.ck-widget__type-around{display:none}.ck.ck-clipboard-drop-target-line{border:1px solid var(--ck-clipboard-drop-target-color);background:var(--ck-clipboard-drop-target-color);height:0;z-index:var(--ck-z-default);margin-top:-1px;position:absolute}.ck.ck-clipboard-drop-target-line:before{content:"";top:calc(-.5 * var(--ck-clipboard-drop-target-dot-width));border-style:solid;width:0;height:0;position:absolute}.ck.ck-clipboard-drop-target-line{pointer-events:none}[dir="ltr"] .ck.ck-clipboard-drop-target-line:before{border-width:calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0 calc(.5 * var(--ck-clipboard-drop-target-dot-width)) var(--ck-clipboard-drop-target-dot-height);border-color:transparent transparent transparent var(--ck-clipboard-drop-target-color);left:-1px}[dir="rtl"] .ck.ck-clipboard-drop-target-line:before{border-width:calc(.5 * var(--ck-clipboard-drop-target-dot-width)) var(--ck-clipboard-drop-target-dot-height) calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0;border-color:transparent var(--ck-clipboard-drop-target-color) transparent transparent;right:-1px}:root{--ck-color-code-block-label-background: #757575}.ck.ck-editor__editable pre[data-language]:after{content:attr(data-language);background:var(--ck-color-code-block-label-background);font-size:10px;font-family:var(--ck-font-face);padding:var(--ck-spacing-tiny) var(--ck-spacing-medium);color:#fff;white-space:nowrap;line-height:16px;position:absolute;top:-1px;right:10px}.ck.ck-code-block-dropdown .ck-dropdown__panel{max-height:250px;overflow:hidden auto}.ck-content pre,.ibo-is-html-content pre{color:#353535;text-align:left;tab-size:4;white-space:pre-wrap;direction:ltr;background:#c7c7c74d;border:1px solid #c4c4c4;border-radius:2px;min-width:200px;margin:0.9em 0;padding:1em;font-style:normal}.ck-content pre code,.ibo-is-html-content pre code{background:unset;border-radius:0;padding:0}.ck.ck-editor__editable pre{position:relative}:root{--ck-content-font-family: Helvetica, Arial, Tahoma, Verdana, Sans-Serif;--ck-content-font-size: medium;--ck-content-font-color: #000;--ck-content-line-height: 1.5;--ck-content-word-break: normal;--ck-content-overflow-wrap: break-word}.ck-content,.ibo-is-html-content{font-family:var(--ck-content-font-family);font-size:var(--ck-content-font-size);color:var(--ck-content-font-color);line-height:var(--ck-content-line-height);word-break:var(--ck-content-word-break);overflow-wrap:var(--ck-content-overflow-wrap)}.ck.ck-editor__main>.ck-editor__editable{background:var(--ck-color-base-background);border-radius:var(--ck-rounded-corners-radius);border-top-left-radius:0;border-top-right-radius:0}.ck.ck-editor__main>.ck-editor__editable:not(.ck-focused){border-color:var(--ck-color-base-border)}.ck.ck-editor{position:relative}.ck.ck-editor .ck-editor__top .ck-sticky-panel .ck-toolbar{z-index:var(--ck-z-panel)}.ck.ck-menu-bar{border:none;border-bottom:1px solid var(--ck-color-toolbar-border)}.ck.ck-emoji{width:320px}.ck .ck.ck-emoji__search{padding:var(--ck-spacing-large);padding-bottom:var(--ck-spacing-medium);justify-content:space-between;align-items:center;display:flex}.ck .ck.ck-emoji__search>.ck.ck-search{flex:1}.ck .ck-fake-emoji-selection{background:var(--ck-color-link-fake-selection)}.ck .ck-fake-emoji-selection_collapsed{border-right:1px solid var(--ck-color-base-text);outline:1px solid #ffffff80;height:100%;margin-right:-1px}div.ck.ck-balloon-panel.ck-emoji-picker-balloon{z-index:calc(var(--ck-z-dialog) + 1)}.ck.ck-emoji__categories-list{margin:0 var(--ck-spacing-large);justify-content:space-between;display:flex}.ck.ck-emoji__categories-list>.ck.ck-button.ck-button_with-text{font-size:var(--ck-font-size-big);min-width:var(--ck-font-size-big);min-height:var(--ck-font-size-big);border-width:0 0 2px;border-bottom-style:solid;border-bottom-color:#0000;padding:0}.ck.ck-emoji__categories-list>.ck.ck-button.ck-button_with-text.ck-emoji__category-item.ck-on{border-bottom-color:var(--ck-color-base-active)}.ck.ck-emoji__categories-list>.ck.ck-button.ck-button_with-text>span{margin:auto}:root{--ck-emoji-grid-tile-size: 27px}.ck.ck-emoji .ck.ck-emoji__tiles{border-top:1px solid var(--ck-color-base-border);max-width:100%;max-height:min(265px, 40vh);overflow:hidden auto}.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__grid{grid-template-columns:repeat(auto-fill, minmax(var(--ck-emoji-grid-tile-size), 1fr));margin:var(--ck-spacing-standard) var(--ck-spacing-large);grid-gap:var(--ck-spacing-small);display:grid}.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile{width:var(--ck-emoji-grid-tile-size);height:var(--ck-emoji-grid-tile-size);min-width:var(--ck-emoji-grid-tile-size);min-height:var(--ck-emoji-grid-tile-size);border:0;padding:0;font-size:1.5em;transition:box-shadow 0.2s}@media (prefers-reduced-motion:reduce){.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile{transition:none}}.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile:focus:not(.ck-disabled),.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile:hover:not(.ck-disabled){box-shadow:inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border);border:0}.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile .ck-button__label{line-height:var(--ck-emoji-grid-tile-size);text-align:center;width:100%}.ck.ck-form.ck-emoji-picker-form{padding-bottom:0}.ck.ck-form.ck-emoji-picker-form .ck.ck-dropdown .ck-dropdown__button:not(:focus){border-color:#0000}.ck.ck-emoji__skin-tone{margin-left:var(--ck-spacing-standard)}.ck.ck-emoji__skin-tone>.ck.ck-dropdown .ck.ck-list__item{min-width:1em}.ck.ck-emoji__skin-tone>.ck.ck-dropdown .ck-button.ck-dropdown__button .ck-button__label{width:initial}.ck.ck-placeholder,.ck .ck-placeholder{position:relative}@media (forced-colors:active){.ck.ck-placeholder,.ck .ck-placeholder{forced-color-adjust:preserve-parent-color}}:is(.ck.ck-placeholder, .ck .ck-placeholder):before{content:attr(data-placeholder);cursor:text;pointer-events:none;position:absolute;left:0;right:0}@media (forced-colors:none){:is(.ck.ck-placeholder, .ck .ck-placeholder):before{color:var(--ck-color-engine-placeholder-text)}}@media (forced-colors:active){:is(.ck.ck-placeholder, .ck .ck-placeholder):before{margin-left:1px;font-style:italic}}.ck.ck-read-only .ck-placeholder:before{display:none}.ck.ck-reset_all .ck-placeholder{position:relative}.ck.ck-editor__editable span[data-ck-unsafe-element]{display:none}.ck-find-result{background:var(--ck-color-highlight-background);color:var(--ck-color-text)}.ck-find-result_selected{background:#ff9633}.ck.ck-find-and-replace-form{width:400px;max-width:100%}.ck.ck-find-and-replace-form:focus{outline:none}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs,.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions{padding:var(--ck-spacing-large);flex-flow:wrap;flex:auto;align-content:stretch;align-items:center;margin:0;display:flex}:is(.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs, .ck.ck-find-and-replace-form .ck-find-and-replace-form__actions)>.ck-button{flex:none}[dir="ltr"] :is(.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs, .ck.ck-find-and-replace-form .ck-find-and-replace-form__actions)>*+*{margin-left:var(--ck-spacing-standard)}[dir="rtl"] :is(.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs, .ck.ck-find-and-replace-form .ck-find-and-replace-form__actions)>*+*{margin-right:var(--ck-spacing-standard)}:is(.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs, .ck.ck-find-and-replace-form .ck-find-and-replace-form__actions) .ck-labeled-field-view{flex:auto}:is(.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs, .ck.ck-find-and-replace-form .ck-find-and-replace-form__actions) .ck-labeled-field-view .ck-input{width:100%;min-width:50px}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs{align-items:flex-start}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-button-prev>.ck-icon{transform:rotate(90deg)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-button-next>.ck-icon{transform:rotate(-90deg)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-results-counter{color:var(--ck-color-base-border);position:absolute;top:50%;transform:translateY(-50%)}[dir="ltr"] :is(.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-results-counter){right:var(--ck-spacing-standard)}[dir="rtl"] :is(.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-results-counter){left:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-labeled-field-replace{padding-top:var(--ck-spacing-standard);flex:0 0 100%}[dir="ltr"] :is(.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-labeled-field-replace){margin-left:0}[dir="rtl"] :is(.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-labeled-field-replace){margin-right:0}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions{margin-top:calc(-1 * var(--ck-spacing-large));flex-wrap:wrap;justify-content:flex-end}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions>.ck-button-find{font-weight:bold}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions>.ck-button-find .ck-button__label{padding-left:var(--ck-spacing-large);padding-right:var(--ck-spacing-large)}.ck.ck-find-and-replace-form .ck-switchbutton{flex-flow:row;justify-content:space-between;align-items:center;width:100%;display:flex}@media screen and (width <= 600px){.ck.ck-find-and-replace-form{width:300px;max-width:100%}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input{flex-wrap:wrap}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input .ck-labeled-field-view{width:100%;margin-bottom:var(--ck-spacing-standard);flex:1 0 auto}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button{text-align:center}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button:first-of-type{flex:auto}[dir="ltr"] .ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button:first-of-type{margin-left:0}[dir="rtl"] .ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button:first-of-type{margin-right:0}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button:first-of-type .ck-button__label{text-align:center;width:100%}.ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view){flex-wrap:wrap;flex:auto}.ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button{text-align:center}.ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button:first-of-type{flex:auto}[dir="ltr"] .ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button:first-of-type{margin-left:0}[dir="rtl"] .ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button:first-of-type{margin-right:0}.ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button .ck-button__label{text-align:center;width:100%}}:root{--ck-content-font-size-tiny: .7em;--ck-content-font-size-small: .85em;--ck-content-font-size-big: 1.4em;--ck-content-font-size-huge: 1.8em}.ck-content .text-tiny,.ibo-is-html-content .text-tiny{font-size:var(--ck-content-font-size-tiny)}.ck-content .text-small,.ibo-is-html-content .text-small{font-size:var(--ck-content-font-size-small)}.ck-content .text-big,.ibo-is-html-content .text-big{font-size:var(--ck-content-font-size-big)}.ck-content .text-huge,.ibo-is-html-content .text-huge{font-size:var(--ck-content-font-size-huge)}html.ck-fullscreen,body.ck-fullscreen{--ck-z-fullscreen: 10000;--ck-z-default: calc(var(--ck-z-fullscreen) + 1);--ck-z-panel: calc(var(--ck-z-default) + 999);--ck-z-dialog: 100000;overflow:hidden}:is(html.ck-fullscreen, body.ck-fullscreen) .ckbox:not(#n){--ckbox-z-index-root: calc(var(--ck-z-dialog) + 1);position:absolute}:is(html.ck-fullscreen, body.ck-fullscreen) .ckbox:not(#n) .ckbox-img-editor{--ckbox-z-index-preview: calc(var(--ck-z-dialog) + 1)}:is(html.ck-fullscreen, body.ck-fullscreen) .ck-pagination-view-line{z-index:calc(var(--ck-z-fullscreen) + 1)}:is(html.ck-fullscreen, body.ck-fullscreen) .page-break__label{z-index:calc(var(--ck-z-fullscreen) + 2)}.ck.ck-fullscreen__main-wrapper{width:100%;height:100%;z-index:var(--ck-z-fullscreen);background:var(--ck-color-base-foreground);flex-direction:column;display:flex;position:fixed;top:0;left:0}.ck.ck-fullscreen__main-wrapper .ck.ck-revision-history-ui__changes-navigation{margin-top:0;margin-bottom:0}:not(body>.ck-fullscreen__main-wrapper).ck-fullscreen__main-wrapper{position:absolute}:not(body>.ck-fullscreen__main-wrapper).ck-fullscreen__main-wrapper .ck-fullscreen__top-wrapper{border-top:1px solid var(--ck-color-base-border);border-left:1px solid var(--ck-color-base-border);border-right:1px solid var(--ck-color-base-border);border-radius:var(--ck-border-radius) 0}.ck-fullscreen__menu-bar .ck.ck-menu-bar{border:none}.ck.ck-fullscreen__toolbar .ck-toolbar{border-left:0;border-right:0;border-radius:0}.ck-fullscreen__main-wrapper .ck-fullscreen__editable-wrapper{--ck-fullscreen-editor-top-margin: 28px;--ck-fullscreen-editor-bottom-margin: 28px;justify-content:flex-start;max-height:100%;display:flex;overflow:auto}.ck-fullscreen__main-wrapper .ck-fullscreen__editable{margin-top:var(--ck-fullscreen-editor-top-margin);height:100%;margin-left:auto}.ck-fullscreen__main-wrapper .ck-fullscreen__editable:after{content:"";height:var(--ck-fullscreen-editor-bottom-margin);display:block}.ck-fullscreen__main-wrapper .ck-fullscreen__editable .ck.ck-editor__editable:not(.ck-editor__nested-editable){box-sizing:border-box;border:1px var(--ck-color-base-border) solid;background:#fff;width:795.701px;max-width:795.701px;height:fit-content;min-height:297mm;margin:0;padding:20mm 12mm;box-shadow:0 2px 3px #00000014}.ck-fullscreen__main-wrapper .ck-fullscreen__editable .ck-source-editing-area{width:795.701px}.ck-fullscreen__sidebar{width:270px;margin-top:var(--ck-fullscreen-editor-top-margin);margin-left:10px}.ck-fullscreen__left-sidebar{--ck-user-avatar-size: 28px;box-sizing:border-box;background-color:#0000;flex-direction:column;align-self:flex-start;height:100%;margin-top:0;margin-right:10px;font-family:Helvetica, Arial, sans-serif;display:flex;position:sticky;top:0}.ck-fullscreen__left-sidebar .ck-button.ck-fullscreen__left-sidebar-toggle-button{--ck-icon-size: 20px;--ck-ui-component-min-height: 0px;margin-top:var(--ck-fullscreen-editor-top-margin);margin-bottom:var(--ck-spacing-large);opacity:0.5;border-radius:100%;align-self:flex-start;padding-top:0}.ck-fullscreen__left-sidebar>.ck-fullscreen__left-sidebar-sticky{min-width:270px}.ck-fullscreen__left-sidebar>.ck-fullscreen__left-sidebar-sticky:first-child{padding-top:var(--ck-fullscreen-editor-top-margin)}.ck-fullscreen__left-sidebar.ck-fullscreen__left-sidebar--collapsed{width:65px}.ck-fullscreen__left-sidebar.ck-fullscreen__left-sidebar--collapsed>:not(.ck-fullscreen__left-sidebar-toggle-button){display:none}.ck-fullscreen__left-sidebar .ck.ck-presence-list--collapsed{--ck-user-avatar-size: 32px}.ck-fullscreen__left-sidebar .ck-user,.ck-fullscreen__left-sidebar .ck-presence-list__users-counter__text{font-size:0.85em}.ck-fullscreen__left-sidebar-item{padding:var(--ck-spacing-medium);margin-bottom:var(--ck-spacing-medium)}.ck-fullscreen__left-sidebar-item:first-child{padding-top:0}.ck-fullscreen__left-sidebar-item:last-child{margin-bottom:0}.ck-fullscreen__left-sidebar-header{--ck-fullscreen-presence-list-header-font-size: .875em;font-size:var(--ck-fullscreen-presence-list-header-font-size);color:var(--ck-document-outline-item-default-color);white-space:nowrap;text-overflow:ellipsis;font-weight:bold;overflow:hidden}.ck-fullscreen__left-sidebar--sticky{position:sticky;top:0}.ck-fullscreen__left-sidebar--sticky>:first-child{padding-top:0}.ck-fullscreen__presence-list{margin-top:var(--ck-spacing-medium)}.ck-fullscreen__left-sidebar-item--no-margin{margin:0}.ck-fullscreen__left-sidebar .ck.ck-document-outline{padding-top:0;padding-left:0;padding-right:0}.ck-fullscreen__document-outline-wrapper{padding-top:0;overflow-y:auto}.ck-fullscreen__sidebar.ck-fullscreen__right-sidebar{margin-top:var(--ck-fullscreen-editor-top-margin);margin-right:auto}.ck-fullscreen__sidebar.ck-fullscreen__right-sidebar:not(.ck-fullscreen__right-sidebar--collapsed)>:first-child{min-width:270px}.ck-fullscreen__sidebar.ck-fullscreen__right-sidebar.ck-fullscreen__right-sidebar--collapsed{width:65px}.ck-fullscreen__sidebar.ck-fullscreen__right-sidebar.ck-fullscreen__right-sidebar--collapsed>:first-child{min-width:65px}.ck.ck-fullscreen__right-edge{margin-top:0;margin-left:10px;position:sticky;top:0}.ck.ck-fullscreen__right-edge>:first-child{border-top:none;border-bottom:none;border-right:none;width:495px;height:100%}.ck.ck-heading_heading1 .ck-button__label{font-size:20px}.ck.ck-heading_heading2 .ck-button__label{font-size:17px}.ck.ck-heading_heading3 .ck-button__label{font-size:14px}.ck[class*="ck-heading_heading"]{font-weight:bold}.ck.ck-dropdown.ck-heading-dropdown .ck-dropdown__button .ck-button__label{width:8em}.ck.ck-dropdown.ck-heading-dropdown .ck-dropdown__panel .ck-list__item{min-width:18em}:root{--ck-content-highlight-marker-yellow: #fdfd77;--ck-content-highlight-marker-green: #62f962;--ck-content-highlight-marker-pink: #fc7899;--ck-content-highlight-marker-blue: #72ccfd;--ck-content-highlight-pen-red: #e71313;--ck-content-highlight-pen-green: #128a00}.ck-content .marker-yellow,.ibo-is-html-content .marker-yellow{background-color:var(--ck-content-highlight-marker-yellow)}.ck-content .marker-green,.ibo-is-html-content .marker-green{background-color:var(--ck-content-highlight-marker-green)}.ck-content .marker-pink,.ibo-is-html-content .marker-pink{background-color:var(--ck-content-highlight-marker-pink)}.ck-content .marker-blue,.ibo-is-html-content .marker-blue{background-color:var(--ck-content-highlight-marker-blue)}.ck-content .pen-red,.ibo-is-html-content .pen-red{color:var(--ck-content-highlight-pen-red);background-color:#0000}.ck-content .pen-green,.ibo-is-html-content .pen-green{color:var(--ck-content-highlight-pen-green);background-color:#0000}.ck-editor__editable .ck-horizontal-line{display:flow-root}.ck-content hr,.ibo-is-html-content hr{background:#dedede;border:0;height:4px;margin:15px 0}:root{--ck-html-embed-content-width: calc(100% - 1.5 * var(--ck-icon-size));--ck-html-embed-source-height: 10em;--ck-html-embed-unfocused-outline-width: 1px;--ck-html-embed-content-min-height: calc(var(--ck-icon-size) + var(--ck-spacing-standard));--ck-html-embed-source-disabled-background: var(--ck-color-base-foreground);--ck-html-embed-source-disabled-color: #737373}.ck-widget.raw-html-embed{font-size:var(--ck-font-size-base);background-color:var(--ck-color-base-foreground);min-width:15em;margin:0.9em auto;display:flow-root;position:relative}.ck-widget.raw-html-embed:not(.ck-widget_selected):not(:hover){outline:var(--ck-html-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border)}.ck-widget.raw-html-embed[dir="ltr"]{text-align:left}.ck-widget.raw-html-embed[dir="rtl"]{text-align:right}.ck-widget.raw-html-embed:before{content:attr(data-html-embed-label);top:calc(-1 * var(--ck-html-embed-unfocused-outline-width));left:var(--ck-spacing-standard);transition:background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);padding:calc(var(--ck-spacing-tiny) + var(--ck-html-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);border-radius:0 0 var(--ck-border-radius) var(--ck-border-radius);color:var(--ck-color-base-background);font-size:var(--ck-font-size-tiny);font-family:var(--ck-font-face);z-index:1;background:#999;position:absolute}.ck-widget.raw-html-embed[dir="rtl"]:before{left:auto;right:var(--ck-spacing-standard)}.ck-widget.raw-html-embed[dir="ltr"] .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before{margin-left:50px}.ck.ck-editor__editable.ck-blurred .ck-widget.raw-html-embed.ck-widget_selected:before{padding:var(--ck-spacing-tiny) var(--ck-spacing-small);top:0}.ck.ck-editor__editable:not(.ck-blurred) .ck-widget.raw-html-embed.ck-widget_selected:before{padding:var(--ck-spacing-tiny) var(--ck-spacing-small);background:var(--ck-color-focus-border);top:0}.ck.ck-editor__editable .ck-widget.raw-html-embed:not(.ck-widget_selected):hover:before{padding:var(--ck-spacing-tiny) var(--ck-spacing-small);top:0}.ck-widget.raw-html-embed .raw-html-embed__content-wrapper{padding:var(--ck-spacing-standard)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper{top:var(--ck-spacing-standard);right:var(--ck-spacing-standard);display:flex;position:absolute}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper .ck-button.raw-html-embed__save-button{color:var(--ck-color-button-save)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper .ck-button.raw-html-embed__cancel-button{color:var(--ck-color-button-cancel)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper .ck-button:not(:first-child){margin-top:var(--ck-spacing-small)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper{flex-direction:column}.ck-widget.raw-html-embed[dir="rtl"] .raw-html-embed__buttons-wrapper{left:var(--ck-spacing-standard);right:auto}.ck-widget.raw-html-embed .raw-html-embed__source{box-sizing:border-box;height:var(--ck-html-embed-source-height);width:var(--ck-html-embed-content-width);resize:none;min-width:0;padding:var(--ck-spacing-standard);tab-size:4;white-space:pre-wrap;font-family:monospace;font-size:var(--ck-font-size-base);text-align:left;direction:ltr}.ck-widget.raw-html-embed .raw-html-embed__source[disabled]{background:var(--ck-html-embed-source-disabled-background);color:var(--ck-html-embed-source-disabled-color);-webkit-text-fill-color:var(--ck-html-embed-source-disabled-color);opacity:1}.ck-widget.raw-html-embed .raw-html-embed__preview{min-height:var(--ck-html-embed-content-min-height);width:var(--ck-html-embed-content-width);position:relative;overflow:hidden}.ck-editor__editable:not(.ck-read-only) :is(.ck-widget.raw-html-embed .raw-html-embed__preview){pointer-events:none}.ck-widget.raw-html-embed .raw-html-embed__preview{display:flex}.ck-widget.raw-html-embed .raw-html-embed__preview-content{box-sizing:border-box;background-color:var(--ck-color-base-foreground);border-collapse:separate;width:100%;margin:auto;display:table;position:relative}.ck-widget.raw-html-embed .raw-html-embed__preview-content>*{margin-left:auto;margin-right:auto}.ck-widget.raw-html-embed .raw-html-embed__preview-content{border-spacing:7px}.ck-widget.raw-html-embed .raw-html-embed__preview-placeholder{color:var(--ck-html-embed-source-disabled-color);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ck-widget.raw-html-embed{font-style:normal}:root{--ck-html-object-embed-unfocused-outline-width: 1px}.ck-widget.html-object-embed{font-size:var(--ck-font-size-base);background-color:var(--ck-color-base-foreground);padding:var(--ck-spacing-small);padding-top:calc(var(--ck-font-size-tiny) + var(--ck-spacing-large));min-width:calc(76px + var(--ck-spacing-standard))}.ck-widget.html-object-embed:not(.ck-widget_selected):not(:hover){outline:var(--ck-html-object-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border)}.ck-widget.html-object-embed:before{content:attr(data-html-object-embed-label);top:0;left:var(--ck-spacing-standard);transition:background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);padding:calc(var(--ck-spacing-tiny) + var(--ck-html-object-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);border-radius:0 0 var(--ck-border-radius) var(--ck-border-radius);color:var(--ck-color-base-background);font-style:normal;font-weight:normal;font-size:var(--ck-font-size-tiny);font-family:var(--ck-font-face);background:#999;position:absolute}.ck-widget.html-object-embed .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before{margin-left:50px}.ck-widget.html-object-embed .html-object-embed__content{pointer-events:none}div.ck-widget.html-object-embed{margin:1em auto}span.ck-widget.html-object-embed{display:inline-block}:root{--ck-content-color-image-caption-background: #f7f7f7;--ck-content-color-image-caption-text: #333;--ck-color-image-caption-highlighted-background: #fd0}.ck-content .image>figcaption,.ibo-is-html-content .image>figcaption{caption-side:bottom;word-break:normal;overflow-wrap:anywhere;break-before:avoid;color:var(--ck-content-color-image-caption-text);background-color:var(--ck-content-color-image-caption-background);outline-offset:-1px;padding:0.6em;font-size:0.75em;display:table-caption}@media (forced-colors:active){.ck-content .image>figcaption,.ibo-is-html-content .image>figcaption{background-color:unset;color:unset}}@media (forced-colors:none){.ck.ck-editor__editable .image>figcaption.image__caption_highlighted{animation:0.6s ease-out ck-image-caption-highlight}}@media (prefers-reduced-motion:reduce){.ck.ck-editor__editable .image>figcaption.image__caption_highlighted{animation:none}}@keyframes ck-image-caption-highlight{0%{background-color:var(--ck-color-image-caption-highlighted-background)}100%{background-color:var(--ck-content-color-image-caption-background)}}.ck-content img.image_resized,.ibo-is-html-content img.image_resized{height:auto}.ck-content .image.image_resized,.ibo-is-html-content .image.image_resized{box-sizing:border-box;max-width:100%;display:block}.ck-content .image.image_resized img,.ibo-is-html-content .image.image_resized img{width:100%}.ck-content .image.image_resized>figcaption,.ibo-is-html-content .image.image_resized>figcaption{display:block}:is(.ck.ck-editor__editable td, .ck.ck-editor__editable th) .image-inline.image_resized img{max-width:100%}[dir="ltr"] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon{margin-right:var(--ck-spacing-standard)}[dir="rtl"] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon{margin-left:var(--ck-spacing-standard)}.ck.ck-dropdown .ck-button.ck-resize-image-button .ck-button__label{width:4em}:root{--ck-content-image-style-spacing: 1.5em;--ck-content-inline-image-style-spacing: calc(var(--ck-content-image-style-spacing) / 2)}.ck-content .image.image-style-block-align-left,.ibo-is-html-content .image.image-style-block-align-left,.ck-content .image.image-style-block-align-right,.ibo-is-html-content .image.image-style-block-align-right{max-width:calc(100% - var(--ck-content-image-style-spacing))}.ck-content .image.image-style-align-left,.ibo-is-html-content .image.image-style-align-left,.ck-content .image.image-style-align-right,.ibo-is-html-content .image.image-style-align-right{clear:none}.ck-content .image.image-style-side,.ibo-is-html-content .image.image-style-side{float:right;margin-left:var(--ck-content-image-style-spacing);max-width:50%}.ck-content .image.image-style-align-left,.ibo-is-html-content .image.image-style-align-left{float:left;margin-right:var(--ck-content-image-style-spacing)}.ck-content .image.image-style-align-right,.ibo-is-html-content .image.image-style-align-right{float:right;margin-left:var(--ck-content-image-style-spacing)}.ck-content .image.image-style-block-align-right,.ibo-is-html-content .image.image-style-block-align-right{margin-left:auto;margin-right:0}.ck-content .image.image-style-block-align-left,.ibo-is-html-content .image.image-style-block-align-left{margin-left:0;margin-right:auto}.ck-content .image-style-align-center,.ibo-is-html-content .image-style-align-center{margin-left:auto;margin-right:auto}.ck-content .image-style-align-left,.ibo-is-html-content .image-style-align-left{float:left;margin-right:var(--ck-content-image-style-spacing)}.ck-content .image-style-align-right,.ibo-is-html-content .image-style-align-right{float:right;margin-left:var(--ck-content-image-style-spacing)}.ck-content p+.image.image-style-align-left,.ibo-is-html-content p+.image.image-style-align-left,.ck-content p+.image.image-style-align-right,.ibo-is-html-content p+.image.image-style-align-right,.ck-content p+.image.image-style-side,.ibo-is-html-content p+.image.image-style-side{margin-top:0}.ck-content .image-inline.image-style-align-left,.ibo-is-html-content .image-inline.image-style-align-left,.ck-content .image-inline.image-style-align-right,.ibo-is-html-content .image-inline.image-style-align-right{margin-top:var(--ck-content-inline-image-style-spacing);margin-bottom:var(--ck-content-inline-image-style-spacing)}.ck-content .image-inline.image-style-align-left,.ibo-is-html-content .image-inline.image-style-align-left{margin-right:var(--ck-content-inline-image-style-spacing)}.ck-content .image-inline.image-style-align-right,.ibo-is-html-content .image-inline.image-style-align-right{margin-left:var(--ck-content-inline-image-style-spacing)}:is(.ck.ck-splitbutton.ck-splitbutton_flatten:hover, .ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open)>.ck-splitbutton__action:not(.ck-disabled),:is(.ck.ck-splitbutton.ck-splitbutton_flatten:hover, .ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open)>.ck-splitbutton__arrow:not(.ck-disabled),:is(.ck.ck-splitbutton.ck-splitbutton_flatten:hover, .ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open)>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover){background-color:var(--ck-color-button-on-background)}:is(:is(.ck.ck-splitbutton.ck-splitbutton_flatten:hover, .ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open)>.ck-splitbutton__action:not(.ck-disabled), :is(.ck.ck-splitbutton.ck-splitbutton_flatten:hover, .ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open)>.ck-splitbutton__arrow:not(.ck-disabled), :is(.ck.ck-splitbutton.ck-splitbutton_flatten:hover, .ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open)>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover)):after{display:none}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover){background-color:var(--ck-color-button-on-hover-background)}:is(.ck.ck-editor__editable .image, .ck.ck-editor__editable .image-inline).ck-appear{animation:0.7s fadeIn}@media (prefers-reduced-motion:reduce){:is(.ck.ck-editor__editable .image, .ck.ck-editor__editable .image-inline).ck-appear{opacity:1;animation:none}}.ck.ck-editor__editable .image,.ck.ck-editor__editable .image-inline{position:relative}.ck.ck-editor__editable .image .ck-progress-bar,.ck.ck-editor__editable .image-inline .ck-progress-bar{background:var(--ck-color-upload-bar-background);width:0;height:2px;transition:width 0.1s;position:absolute;top:0;left:0}@keyframes fadeIn{from{opacity:0}to{opacity:1}}:root{--ck-color-image-upload-icon: #fff;--ck-color-image-upload-icon-background: #008a00;--ck-image-upload-icon-size: 20;--ck-image-upload-icon-width: 2px;--ck-image-upload-icon-is-visible: clamp(0px, 100% - 50px, 1px)}.ck-image-upload-complete-icon{opacity:0;background:var(--ck-color-image-upload-icon-background);font-size:calc(1px * var(--ck-image-upload-icon-size));width:calc(var(--ck-image-upload-icon-is-visible) * var(--ck-image-upload-icon-size));height:calc(var(--ck-image-upload-icon-is-visible) * var(--ck-image-upload-icon-size));top:min(var(--ck-spacing-medium), 6%);right:min(var(--ck-spacing-medium), 6%);border-radius:50%;animation-name:ck-upload-complete-icon-show, ck-upload-complete-icon-hide;animation-duration:0.5s, 0.5s;animation-delay:0s, 3s;animation-fill-mode:forwards, forwards;display:block;position:absolute;overflow:hidden}.ck-image-upload-complete-icon:after{opacity:0;transform-origin:0 0;border-top:var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);border-right:var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);box-sizing:border-box;content:"";width:0;height:0;animation-name:ck-upload-complete-icon-check;animation-duration:0.5s;animation-delay:0.5s;animation-fill-mode:forwards;position:absolute;top:50%;left:25%;transform:scaleX(-1) rotate(135deg)}@media (prefers-reduced-motion:reduce){.ck-image-upload-complete-icon{animation-duration:0s}.ck-image-upload-complete-icon:after{opacity:1;width:0.3em;height:0.45em;animation:none}}.ck-image-upload-complete-icon{z-index:1}@keyframes ck-upload-complete-icon-show{from{opacity:0}to{opacity:1}}@keyframes ck-upload-complete-icon-hide{from{opacity:1}to{opacity:0}}@keyframes ck-upload-complete-icon-check{0%{opacity:1;width:0;height:0}33%{width:0.3em;height:0}100%{opacity:1;width:0.3em;height:0.45em}}:root{--ck-color-upload-placeholder-loader: #b3b3b3;--ck-upload-placeholder-loader-size: 32px;--ck-upload-placeholder-image-aspect-ratio: 2.8}.ck .ck-image-upload-placeholder{width:100%;margin:0}.ck .ck-image-upload-placeholder.image-inline{width:calc(2 * var(--ck-upload-placeholder-loader-size) * var(--ck-upload-placeholder-image-aspect-ratio))}.ck .ck-image-upload-placeholder img{aspect-ratio:var(--ck-upload-placeholder-image-aspect-ratio)}.ck .ck-upload-placeholder-loader{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0}.ck .ck-upload-placeholder-loader:before{width:var(--ck-upload-placeholder-loader-size);height:var(--ck-upload-placeholder-loader-size);border-top:3px solid var(--ck-color-upload-placeholder-loader);content:"";border-right:2px solid #0000;border-radius:50%;animation:1s linear infinite ck-upload-placeholder-loader;position:relative}.ck .ck-upload-placeholder-loader{left:0}@keyframes ck-upload-placeholder-loader{to{transform:rotate(360deg)}}.ck-content .image,.ibo-is-html-content .image{clear:both;text-align:center;min-width:50px;margin:0.9em auto;display:table}.ck-content .image img,.ibo-is-html-content .image img{min-width:100%;max-width:100%;height:auto;margin:0 auto;display:block}.ck-content .image-inline,.ibo-is-html-content .image-inline{align-items:flex-start;max-width:100%;display:inline-flex}.ck-content .image-inline picture,.ibo-is-html-content .image-inline picture{display:flex}.ck-content .image-inline picture,.ibo-is-html-content .image-inline picture,.ck-content .image-inline img,.ibo-is-html-content .image-inline img{flex-grow:1;flex-shrink:1;max-width:100%}.ck.ck-editor__editable .image>figcaption.ck-placeholder:before{padding-left:inherit;padding-right:inherit;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ck.ck-editor__editable .image{z-index:1}.ck.ck-editor__editable .image.ck-widget_selected{z-index:2}.ck.ck-editor__editable .image-inline{z-index:1}.ck.ck-editor__editable .image-inline.ck-widget_selected{z-index:2}.ck.ck-editor__editable .image-inline.ck-widget_selected ::selection{display:none}.ck.ck-editor__editable .image-inline img{height:auto}:is(.ck.ck-editor__editable td, .ck.ck-editor__editable th) .image-inline img{max-width:none}.ck.ck-editor__editable img.image_placeholder{background-size:100% 100%}:root{--ck-image-insert-insert-by-url-width: 250px}.ck.ck-image-insert-url{--ck-input-width: 100%;width:400px}.ck.ck-image-insert-url .ck-image-insert-url__action-row{grid-column-gap:var(--ck-spacing-large);margin-top:var(--ck-spacing-large);display:grid}.ck.ck-image-insert-url .ck-image-insert-url__action-row .ck-button-save,.ck.ck-image-insert-url .ck-image-insert-url__action-row .ck-button-cancel{justify-content:center;min-width:auto}.ck.ck-image-insert-url .ck-image-insert-url__action-row .ck-button .ck-button__label{color:var(--ck-color-text)}.ck.ck-image-insert-url .ck-image-insert-url__action-row{grid-template-columns:repeat(2, 1fr)}.ck.ck-image-insert-url{padding:var(--ck-spacing-large) var(--ck-spacing-large) 0}.ck.ck-image-insert-form>.ck.ck-button{width:100%;display:block}[dir="ltr"] :is(.ck.ck-image-insert-form>.ck.ck-button){text-align:left}[dir="rtl"] :is(.ck.ck-image-insert-form>.ck.ck-button){text-align:right}.ck.ck-image-insert-form>.ck.ck-collapsible:not(:first-child){border-top:1px solid var(--ck-color-base-border)}.ck.ck-image-insert-form>.ck.ck-collapsible:not(:last-child){border-bottom:1px solid var(--ck-color-base-border)}.ck.ck-image-insert-form>.ck.ck-collapsible{min-width:var(--ck-image-insert-insert-by-url-width)}.ck.ck-image-insert-form>.ck.ck-image-insert-url{min-width:var(--ck-image-insert-insert-by-url-width);padding:var(--ck-spacing-large)}.ck.ck-image-insert-form:focus{outline:none}:root{--ck-image-custom-resize-form-width: 340px}@media screen and (width <= 600px){:root{--ck-image-custom-resize-form-width: 300px}}.ck.ck-image-custom-resize-form.ck-responsive-form{width:var(--ck-image-custom-resize-form-width)}:root{--ck-text-alternative-form-width: 340px}@media screen and (width <= 600px){:root{--ck-text-alternative-form-width: 300px}}.ck.ck-text-alternative-form.ck-responsive-form{width:var(--ck-text-alternative-form-width)}.ck .ck-link_selected{background:var(--ck-color-link-selected-background)}.ck .ck-link_selected span.image-inline{outline:var(--ck-widget-outline-thickness) solid var(--ck-color-link-selected-background)}.ck .ck-fake-link-selection{background:var(--ck-color-link-fake-selection)}.ck .ck-fake-link-selection_collapsed{border-right:1px solid var(--ck-color-base-text);outline:1px solid #ffffff80;height:100%;margin-right:-1px}:root{--ck-link-bookmark-icon-size: calc(var(--ck-icon-size) * .7)}.ck.ck-toolbar.ck-link-toolbar>.ck-toolbar__items{flex-wrap:nowrap}a.ck.ck-button.ck-link-toolbar__preview{padding:0 var(--ck-spacing-medium);color:var(--ck-color-link-default);cursor:pointer;justify-content:center}a.ck.ck-button.ck-link-toolbar__preview .ck.ck-button__label{text-overflow:ellipsis;max-width:var(--ck-input-width)}a.ck.ck-button.ck-link-toolbar__preview,a.ck.ck-button.ck-link-toolbar__preview:hover,a.ck.ck-button.ck-link-toolbar__preview:focus,a.ck.ck-button.ck-link-toolbar__preview:active{background:none}a.ck.ck-button.ck-link-toolbar__preview:active{box-shadow:none}a.ck.ck-button.ck-link-toolbar__preview:hover,a.ck.ck-button.ck-link-toolbar__preview:focus{text-decoration:underline}a.ck.ck-button.ck-link-toolbar__preview.ck-button_with-text .ck.ck-icon.ck-button__icon{width:var(--ck-link-bookmark-icon-size);height:var(--ck-link-bookmark-icon-size)}[dir="ltr"] :is(a.ck.ck-button.ck-link-toolbar__preview.ck-button_with-text .ck.ck-icon.ck-button__icon){margin-right:var(--ck-spacing-tiny);margin-left:var(--ck-spacing-small)}[dir="rtl"] :is(a.ck.ck-button.ck-link-toolbar__preview.ck-button_with-text .ck.ck-icon.ck-button__icon){margin-left:var(--ck-spacing-tiny);margin-right:var(--ck-spacing-small)}a.ck.ck-button.ck-link-toolbar__preview:has(.ck-icon){padding-left:var(--ck-spacing-extra-tiny)}.ck.ck-link-toolbar__preview{display:inline-block}.ck.ck-link-toolbar__preview .ck-button__label{overflow:hidden}:root{--ck-link-image-indicator-icon-size: 20;--ck-link-image-indicator-icon-is-visible: clamp(0px, 100% - 50px, 1px)}:is(.ck.ck-editor__editable figure.image>a, .ck.ck-editor__editable a span.image-inline):after{content:"";top:min(var(--ck-spacing-medium), 6%);right:min(var(--ck-spacing-medium), 6%);width:calc(var(--ck-link-image-indicator-icon-is-visible) * var(--ck-link-image-indicator-icon-size));height:calc(var(--ck-link-image-indicator-icon-is-visible) * var(--ck-link-image-indicator-icon-size));background-color:#0006;background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iI2ZmZiIgZD0ibTExLjA3NyAxNSAuOTkxLTEuNDE2YS43NS43NSAwIDEgMSAxLjIyOS44NmwtMS4xNDggMS42NGEuNzQ4Ljc0OCAwIDAgMS0uMjE3LjIwNiA1LjI1MSA1LjI1MSAwIDAgMS04LjUwMy01Ljk1NS43NDEuNzQxIDAgMCAxIC4xMi0uMjc0bDEuMTQ3LTEuNjM5YS43NS43NSAwIDEgMSAxLjIyOC44Nkw0LjkzMyAxMC43bC4wMDYuMDAzYTMuNzUgMy43NSAwIDAgMCA2LjEzMiA0LjI5NGwuMDA2LjAwNHptNS40OTQtNS4zMzVhLjc0OC43NDggMCAwIDEtLjEyLjI3NGwtMS4xNDcgMS42MzlhLjc1Ljc1IDAgMSAxLTEuMjI4LS44NmwuODYtMS4yM2EzLjc1IDMuNzUgMCAwIDAtNi4xNDQtNC4zMDFsLS44NiAxLjIyOWEuNzUuNzUgMCAwIDEtMS4yMjktLjg2bDEuMTQ4LTEuNjRhLjc0OC43NDggMCAwIDEgLjIxNy0uMjA2IDUuMjUxIDUuMjUxIDAgMCAxIDguNTAzIDUuOTU1em0tNC41NjMtMi41MzJhLjc1Ljc1IDAgMCAxIC4xODQgMS4wNDVsLTMuMTU1IDQuNTA1YS43NS43NSAwIDEgMS0xLjIyOS0uODZsMy4xNTUtNC41MDZhLjc1Ljc1IDAgMCAxIDEuMDQ1LS4xODR6Ii8+PC9zdmc+");background-position:center;background-repeat:no-repeat;background-size:14px;border-radius:100%;display:block;position:absolute;overflow:hidden}:root{--ck-link-panel-width: 340px;--ck-link-provider-list-item-text-height: calc(var(--ck-line-height-base) * var(--ck-font-size-base));--ck-link-provider-list-item-height: calc(var(--ck-link-provider-list-item-text-height) + var(--ck-spacing-small) + var(--ck-spacing-small))}@media screen and (width <= 600px){:root{--ck-link-panel-width: 300px}}.ck.ck-form.ck-link-form{width:var(--ck-link-panel-width);padding-bottom:0}@media screen and (width <= 600px){.ck.ck-form.ck-link-form.ck-responsive-form .ck-labeled-field-view{margin:0}}.ck.ck-form.ck-link-form .ck-link-form__providers-list{border-top:1px solid var(--ck-color-base-border);flex-direction:column;display:flex}.ck.ck-form.ck-link-form .ck-link-form__providers-list:has(.ck-list__item:nth-child(n+5)){max-height:calc(var(--ck-link-provider-list-item-height) * 4 + var(--ck-spacing-large) + 1px);overflow:auto}.ck.ck-form.ck-link-form .ck-link-form__providers-list .ck-link__button{padding:var(--ck-spacing-small) var(--ck-spacing-large);border-radius:0}.ck.ck-form.ck-link-form .ck-link-form__providers-list .ck-link__button>.ck-button__label{text-overflow:ellipsis;flex-grow:1;overflow:hidden}.ck.ck-link-form .ck-link__items:empty{display:none}:root{--ck-link-properties-width: 340px}@media screen and (width <= 600px){:root{--ck-link-properties-width: 300px}}.ck.ck-link-properties{width:var(--ck-link-properties-width)}:root{--ck-link-providers-width: 340px;--ck-link-list-view-max-height: 240px;--ck-link-list-view-icon-size: calc(var(--ck-icon-size) * .8)}@media screen and (width <= 600px){:root{--ck-link-providers-width: 300px}}.ck.ck-link-providers{width:var(--ck-link-providers-width)}.ck.ck-link-providers .ck-form__header__label{text-overflow:ellipsis;overflow:hidden}.ck.ck-link-providers>.ck-link-providers__list{max-height:min(var(--ck-link-list-view-max-height), 40vh);overflow:hidden auto}.ck.ck-link-providers>.ck-link-providers__list .ck-button>.ck-icon{width:var(--ck-link-list-view-icon-size);height:var(--ck-link-list-view-icon-size);flex-shrink:0}.ck.ck-link-providers>.ck-link-providers__list .ck-button>.ck-button__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ck.ck-link-providers>.ck-link-providers__list{overscroll-behavior:contain}.ck.ck-link-providers .ck-link__empty-list-info{padding:calc(2 * var(--ck-spacing-large)) var(--ck-spacing-medium);text-align:center;font-style:italic}.ck-editor__editable .ck-list-bogus-paragraph{display:block}:root{--ck-list-style-button-size: 44px}.ck.ck-list-styles-list{row-gap:var(--ck-spacing-medium);column-gap:var(--ck-spacing-medium);padding:var(--ck-spacing-large);grid-template-columns:repeat(3, auto)}.ck.ck-list-styles-list .ck-button{width:var(--ck-list-style-button-size);height:var(--ck-list-style-button-size);box-sizing:content-box;margin:0;padding:0}.ck.ck-list-styles-list .ck-button .ck-icon{width:var(--ck-list-style-button-size);height:var(--ck-list-style-button-size)}.ck.ck-list-styles-list{display:grid}.ck.ck-list-properties.ck-list-properties_without-styles{padding:var(--ck-spacing-large)}.ck.ck-list-properties.ck-list-properties_without-styles>*{min-width:14em}.ck.ck-list-properties.ck-list-properties_without-styles>*+*{margin-top:var(--ck-spacing-standard)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-list-styles-list{grid-template-columns:repeat(4, auto)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible{border-top:1px solid var(--ck-color-base-border)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible>.ck-collapsible__children>*{width:100%}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible>.ck-collapsible__children>*+*{margin-top:var(--ck-spacing-standard)}.ck.ck-list-properties .ck.ck-numbered-list-properties__start-index .ck-input{width:100%;min-width:auto}.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order{margin-bottom:calc(-1 * var(--ck-spacing-tiny));background:none;padding-left:0;padding-right:0}.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order:active,.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order:hover{box-shadow:none;background:none;border-color:#0000}:root{--ck-content-list-marker-color: var(--ck-content-font-color);--ck-content-list-marker-font-family: var(--ck-content-font-family);--ck-content-list-marker-font-size: var(--ck-content-font-size)}.ck-content li>p:first-of-type,.ibo-is-html-content li>p:first-of-type{margin-top:0}.ck-content li>p:only-of-type,.ibo-is-html-content li>p:only-of-type{margin-top:0;margin-bottom:0}.ck-content li.ck-list-marker-bold::marker,.ibo-is-html-content li.ck-list-marker-bold::marker{font-weight:bold}.ck-content li.ck-list-marker-italic::marker,.ibo-is-html-content li.ck-list-marker-italic::marker{font-style:italic}.ck-content li.ck-list-marker-color::marker,.ibo-is-html-content li.ck-list-marker-color::marker{color:var(--ck-content-list-marker-color)}.ck-content li.ck-list-marker-font-family::marker,.ibo-is-html-content li.ck-list-marker-font-family::marker{font-family:var(--ck-content-list-marker-font-family)}.ck-content li.ck-list-marker-font-size::marker,.ibo-is-html-content li.ck-list-marker-font-size::marker{font-size:var(--ck-content-list-marker-font-size)}.ck-content li.ck-list-marker-font-size-tiny::marker,.ibo-is-html-content li.ck-list-marker-font-size-tiny::marker{font-size:var(--ck-content-font-size-tiny)}.ck-content li.ck-list-marker-font-size-small::marker,.ibo-is-html-content li.ck-list-marker-font-size-small::marker{font-size:var(--ck-content-font-size-small)}.ck-content li.ck-list-marker-font-size-big::marker,.ibo-is-html-content li.ck-list-marker-font-size-big::marker{font-size:var(--ck-content-font-size-big)}.ck-content li.ck-list-marker-font-size-huge::marker,.ibo-is-html-content li.ck-list-marker-font-size-huge::marker{font-size:var(--ck-content-font-size-huge)}.ck-content ol,.ibo-is-html-content ol{list-style-type:decimal}.ck-content ol ol,.ibo-is-html-content ol ol{list-style-type:lower-latin}.ck-content ol ol ol,.ibo-is-html-content ol ol ol{list-style-type:lower-roman}.ck-content ol ol ol ol,.ibo-is-html-content ol ol ol ol{list-style-type:upper-latin}.ck-content ol ol ol ol ol,.ibo-is-html-content ol ol ol ol ol{list-style-type:upper-roman}.ck-content ul,.ibo-is-html-content ul{list-style-type:disc}.ck-content ul ul,.ibo-is-html-content ul ul{list-style-type:circle}.ck-content ul ul ul,.ibo-is-html-content ul ul ul{list-style-type:square}.ck-content ul ul ul ul,.ibo-is-html-content ul ul ul ul{list-style-type:square}:root{--ck-content-todo-list-checkmark-size: 16px}.ck-content .todo-list .todo-list__label>input,.ibo-is-html-content .todo-list .todo-list__label>input,.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable="false"]>input,.ck-editor__editable.ibo-is-html-content .todo-list .todo-list__label>span[contenteditable="false"]>input{-webkit-appearance:none;width:var(--ck-content-todo-list-checkmark-size);height:var(--ck-content-todo-list-checkmark-size);vertical-align:middle;border:0;margin-left:0;margin-right:-15px;display:inline-block;position:relative;left:-25px;right:0}[dir="rtl"]:is(.ck-content .todo-list .todo-list__label>input, .ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable="false"]>input),[dir="rtl"]:is(.ibo-is-html-content .todo-list .todo-list__label>input, . ck-editor__editable . ck-content, . todo-list, . todo-list__label, >, span [ stringcontenteditable=string"false ], >, input),[dir="rtl"]:is(. ck-content, . todo-list, . todo-list__label, >, input, .ck-editor__editable.ibo-is-html-content .todo-list .todo-list__label>span[stringcontenteditable=string"false]>input){margin-left:-15px;margin-right:0;left:0;right:-25px}:is(.ck-content .todo-list .todo-list__label>input, .ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable="false"]>input):before,:is(.ibo-is-html-content .todo-list .todo-list__label>input, . ck-editor__editable . ck-content, . todo-list, . todo-list__label, >, span [ stringcontenteditable=string"false ], >, input):before,:is(. ck-content, . todo-list, . todo-list__label, >, input, .ck-editor__editable.ibo-is-html-content .todo-list .todo-list__label>span[stringcontenteditable=string"false]>input):before{box-sizing:border-box;content:"";border:1px solid #333;border-radius:2px;width:100%;height:100%;transition:box-shadow 0.25s ease-in-out;display:block;position:absolute}@media (prefers-reduced-motion:reduce){:is(.ck-content .todo-list .todo-list__label>input, .ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable="false"]>input):before,:is(.ibo-is-html-content .todo-list .todo-list__label>input, . ck-editor__editable . ck-content, . todo-list, . todo-list__label, >, span [ stringcontenteditable=string"false ], >, input):before,:is(. ck-content, . todo-list, . todo-list__label, >, input, .ck-editor__editable.ibo-is-html-content .todo-list .todo-list__label>span[stringcontenteditable=string"false]>input):before{transition:none}}:is(.ck-content .todo-list .todo-list__label>input, .ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable="false"]>input):after,:is(.ibo-is-html-content .todo-list .todo-list__label>input, . ck-editor__editable . ck-content, . todo-list, . todo-list__label, >, span [ stringcontenteditable=string"false ], >, input):after,:is(. ck-content, . todo-list, . todo-list__label, >, input, .ck-editor__editable.ibo-is-html-content .todo-list .todo-list__label>span[stringcontenteditable=string"false]>input):after{box-sizing:content-box;pointer-events:none;content:"";left:calc(var(--ck-content-todo-list-checkmark-size) / 3);top:calc(var(--ck-content-todo-list-checkmark-size) / 5.3);width:calc(var(--ck-content-todo-list-checkmark-size) / 5.3);height:calc(var(--ck-content-todo-list-checkmark-size) / 2.6);border-style:solid;border-color:#0000;border-width:0 calc(var(--ck-content-todo-list-checkmark-size) / 8) calc(var(--ck-content-todo-list-checkmark-size) / 8) 0;display:block;position:absolute;transform:rotate(45deg)}:is(.ck-content .todo-list .todo-list__label>input, .ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable="false"]>input)[checked]:before,:is(.ibo-is-html-content .todo-list .todo-list__label>input, . ck-editor__editable . ck-content, . todo-list, . todo-list__label, >, span [ stringcontenteditable=string"false ], >, input)[checked]:before,:is(. ck-content, . todo-list, . todo-list__label, >, input, .ck-editor__editable.ibo-is-html-content .todo-list .todo-list__label>span[stringcontenteditable=string"false]>input)[checked]:before{background:#26ab33;border-color:#26ab33}:is(.ck-content .todo-list .todo-list__label>input, .ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable="false"]>input)[checked]:after,:is(.ibo-is-html-content .todo-list .todo-list__label>input, . ck-editor__editable . ck-content, . todo-list, . todo-list__label, >, span [ stringcontenteditable=string"false ], >, input)[checked]:after,:is(. ck-content, . todo-list, . todo-list__label, >, input, .ck-editor__editable.ibo-is-html-content .todo-list .todo-list__label>span[stringcontenteditable=string"false]>input)[checked]:after{border-color:#fff}.ck-content .todo-list,.ibo-is-html-content .todo-list{list-style:none}.ck-content .todo-list li,.ibo-is-html-content .todo-list li{margin-bottom:5px;position:relative}.ck-content .todo-list li .todo-list,.ibo-is-html-content .todo-list li .todo-list{margin-top:5px}.ck-content .todo-list .todo-list__label .todo-list__label__description,.ibo-is-html-content .todo-list .todo-list__label .todo-list__label__description{vertical-align:middle}.ck-content .todo-list .todo-list__label.todo-list__label_without-description input[type="checkbox"],.ibo-is-html-content .todo-list .todo-list__label.todo-list__label_without-description input[type="checkbox"]{position:absolute}.ck-editor__editable.ck-content .todo-list .todo-list__label>input,.ck-editor__editable.ibo-is-html-content .todo-list .todo-list__label>input,.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable="false"]>input,.ck-editor__editable.ibo-is-html-content .todo-list .todo-list__label>span[contenteditable="false"]>input{cursor:pointer}:is(.ck-editor__editable.ck-content .todo-list .todo-list__label>input, .ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable="false"]>input):hover:before,:is(.ck-editor__editable.ibo-is-html-content .todo-list .todo-list__label>input, . ck-editor__editable . ck-content, . todo-list, . todo-list__label, >, span [ stringcontenteditable=string"false ], >, input):hover:before,:is(. ck-editor__editable . ck-content, . todo-list, . todo-list__label, >, input, .ck-editor__editable.ibo-is-html-content .todo-list .todo-list__label>span[stringcontenteditable=string"false]>input):hover:before{box-shadow:0 0 0 5px #0000001a}.ck-editor__editable.ck-content .todo-list .todo-list__label.todo-list__label_without-description input[type="checkbox"],.ck-editor__editable.ibo-is-html-content .todo-list .todo-list__label.todo-list__label_without-description input[type="checkbox"]{position:absolute}.ck-content .media,.ibo-is-html-content .media{clear:both;min-width:15em;margin:0.9em 0;display:block}:root{--ck-media-embed-placeholder-icon-size: 3em;--ck-color-media-embed-placeholder-url-text: #757575;--ck-color-media-embed-placeholder-url-text-hover: var(--ck-color-base-text)}.ck-media__wrapper{margin:0 auto}.ck-media__wrapper .ck-media__placeholder{padding:calc(3 * var(--ck-spacing-standard));background:var(--ck-color-base-foreground);flex-direction:column;align-items:center;display:flex}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__icon{min-width:var(--ck-media-embed-placeholder-icon-size);height:var(--ck-media-embed-placeholder-icon-size);margin-bottom:var(--ck-spacing-large);background-position:center;background-size:cover}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__icon .ck-icon{width:100%;height:100%}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url__text{color:var(--ck-color-media-embed-placeholder-url-text);white-space:nowrap;text-align:center;text-overflow:ellipsis;font-style:italic}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url__text:hover{color:var(--ck-color-media-embed-placeholder-url-text-hover);cursor:pointer;text-decoration:underline}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url{max-width:100%;position:relative}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url .ck-media__placeholder__url__text{display:block;overflow:hidden}.ck-media__wrapper[data-oembed-url*="open.spotify.com"]{max-width:300px;max-height:380px}.ck-media__wrapper[data-oembed-url*="google.com/maps"] .ck-media__placeholder__icon,.ck-media__wrapper[data-oembed-url*="goo.gl/maps"] .ck-media__placeholder__icon,.ck-media__wrapper[data-oembed-url*="maps.google.com"] .ck-media__placeholder__icon,.ck-media__wrapper[data-oembed-url*="maps.app.goo.gl"] .ck-media__placeholder__icon{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTAuMzc4IiBoZWlnaHQ9IjI1NC4xNjciIHZpZXdCb3g9IjAgMCA2Ni4yNDYgNjcuMjQ4Ij48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTcyLjUzMSAtMjE4LjQ1NSkgc2NhbGUoLjk4MDEyKSI+PHJlY3Qgcnk9IjUuMjM4IiByeD0iNS4yMzgiIHk9IjIzMS4zOTkiIHg9IjE3Ni4wMzEiIGhlaWdodD0iNjAuMDk5IiB3aWR0aD0iNjAuMDk5IiBmaWxsPSIjMzRhNjY4IiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjxwYXRoIGQ9Ik0yMDYuNDc3IDI2MC45bC0yOC45ODcgMjguOTg3YTUuMjE4IDUuMjE4IDAgMCAwIDMuNzggMS42MWg0OS42MjFjMS42OTQgMCAzLjE5LS43OTggNC4xNDYtMi4wMzd6IiBmaWxsPSIjNWM4OGM1Ii8+PHBhdGggZD0iTTIyNi43NDIgMjIyLjk4OGMtOS4yNjYgMC0xNi43NzcgNy4xNy0xNi43NzcgMTYuMDE0LjAwNyAyLjc2Mi42NjMgNS40NzQgMi4wOTMgNy44NzUuNDMuNzAzLjgzIDEuNDA4IDEuMTkgMi4xMDcuMzMzLjUwMi42NSAxLjAwNS45NSAxLjUwOC4zNDMuNDc3LjY3My45NTcuOTg4IDEuNDQgMS4zMSAxLjc2OSAyLjUgMy41MDIgMy42MzcgNS4xNjguNzkzIDEuMjc1IDEuNjgzIDIuNjQgMi40NjYgMy45OSAyLjM2MyA0LjA5NCA0LjAwNyA4LjA5MiA0LjYgMTMuOTE0di4wMTJjLjE4Mi40MTIuNTE2LjY2Ni44NzkuNjY3LjQwMy0uMDAxLjc2OC0uMzE0LjkzLS43OTkuNjAzLTUuNzU2IDIuMjM4LTkuNzI5IDQuNTg1LTEzLjc5NC43ODItMS4zNSAxLjY3My0yLjcxNSAyLjQ2NS0zLjk5IDEuMTM3LTEuNjY2IDIuMzI4LTMuNCAzLjYzOC01LjE2OS4zMTUtLjQ4Mi42NDUtLjk2Mi45ODgtMS40MzkuMy0uNTAzLjYxNy0xLjAwNi45NS0xLjUwOC4zNTktLjcuNzYtMS40MDQgMS4xOS0yLjEwNyAxLjQyNi0yLjQwMiAyLTUuMTE0IDIuMDA0LTcuODc1IDAtOC44NDQtNy41MTEtMTYuMDE0LTE2Ljc3Ni0xNi4wMTR6IiBmaWxsPSIjZGQ0YjNlIiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjxlbGxpcHNlIHJ5PSI1LjU2NCIgcng9IjUuODI4IiBjeT0iMjM5LjAwMiIgY3g9IjIyNi43NDIiIGZpbGw9IiM4MDJkMjciIHBhaW50LW9yZGVyPSJtYXJrZXJzIHN0cm9rZSBmaWxsIi8+PHBhdGggZD0iTTE5MC4zMDEgMjM3LjI4M2MtNC42NyAwLTguNDU3IDMuODUzLTguNDU3IDguNjA2czMuNzg2IDguNjA3IDguNDU3IDguNjA3YzMuMDQzIDAgNC44MDYtLjk1OCA2LjMzNy0yLjUxNiAxLjUzLTEuNTU3IDIuMDg3LTMuOTEzIDIuMDg3LTYuMjkgMC0uMzYyLS4wMjMtLjcyMi0uMDY0LTEuMDc5aC04LjI1N3YzLjA0M2g0Ljg1Yy0uMTk3Ljc1OS0uNTMxIDEuNDUtMS4wNTggMS45ODYtLjk0Mi45NTgtMi4wMjggMS41NDgtMy45MDEgMS41NDgtMi44NzYgMC01LjIwOC0yLjM3Mi01LjIwOC01LjI5OSAwLTIuOTI2IDIuMzMyLTUuMjk5IDUuMjA4LTUuMjk5IDEuMzk5IDAgMi42MTguNDA3IDMuNTg0IDEuMjkzbDIuMzgxLTIuMzhjMC0uMDAyLS4wMDMtLjAwNC0uMDA0LS4wMDUtMS41ODgtMS41MjQtMy42Mi0yLjIxNS01Ljk1NS0yLjIxNXptNC40MyA1LjY2bC4wMDMuMDA2di0uMDAzeiIgZmlsbD0iI2ZmZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJNMjE1LjE4NCAyNTEuOTI5bC03Ljk4IDcuOTc5IDI4LjQ3NyAyOC40NzVjLjI4Ny0uNjQ5LjQ0OS0xLjM2Ni40NDktMi4xMjN2LTMxLjE2NWMtLjQ2OS42NzUtLjkzNCAxLjM0OS0xLjM4MiAyLjAwNS0uNzkyIDEuMjc1LTEuNjgyIDIuNjQtMi40NjUgMy45OS0yLjM0NyA0LjA2NS0zLjk4MiA4LjAzOC00LjU4NSAxMy43OTQtLjE2Mi40ODUtLjUyNy43OTgtLjkzLjc5OS0uMzYzLS4wMDEtLjY5Ny0uMjU1LS44NzktLjY2N3YtLjAxMmMtLjU5My01LjgyMi0yLjIzNy05LjgyLTQuNi0xMy45MTQtLjc4My0xLjM1LTEuNjczLTIuNzE1LTIuNDY2LTMuOTktMS4xMzctMS42NjYtMi4zMjctMy40LTMuNjM3LTUuMTY5bC0uMDAyLS4wMDN6IiBmaWxsPSIjYzNjM2MzIi8+PHBhdGggZD0iTTIxMi45ODMgMjQ4LjQ5NWwtMzYuOTUyIDM2Ljk1M3YuODEyYTUuMjI3IDUuMjI3IDAgMCAwIDUuMjM4IDUuMjM4aDEuMDE1bDM1LjY2Ni0zNS42NjZhMTM2LjI3NSAxMzYuMjc1IDAgMCAwLTIuNzY0LTMuOSAzNy41NzUgMzcuNTc1IDAgMCAwLS45ODktMS40NGMtLjI5OS0uNTAzLS42MTYtMS4wMDYtLjk1LTEuNTA4LS4wODMtLjE2Mi0uMTc2LS4zMjYtLjI2NC0uNDg5eiIgZmlsbD0iI2ZkZGM0ZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJNMjExLjk5OCAyNjEuMDgzbC02LjE1MiA2LjE1MSAyNC4yNjQgMjQuMjY0aC43ODFhNS4yMjcgNS4yMjcgMCAwIDAgNS4yMzktNS4yMzh2LTEuMDQ1eiIgZmlsbD0iI2ZmZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48L2c+PC9zdmc+")}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder{background:#4268b3}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder .ck-media__placeholder__icon{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIxMDI0cHgiIGhlaWdodD0iMTAyNHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPiAgICAgICAgPHRpdGxlPkZpbGwgMTwvdGl0bGU+ICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPiAgICA8ZGVmcz48L2RlZnM+ICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPiAgICAgICAgPGcgaWQ9ImZMb2dvX1doaXRlIiBmaWxsPSIjRkZGRkZFIj4gICAgICAgICAgICA8cGF0aCBkPSJNOTY3LjQ4NCwwIEw1Ni41MTcsMCBDMjUuMzA0LDAgMCwyNS4zMDQgMCw1Ni41MTcgTDAsOTY3LjQ4MyBDMCw5OTguNjk0IDI1LjI5NywxMDI0IDU2LjUyMiwxMDI0IEw1NDcsMTAyNCBMNTQ3LDYyOCBMNDE0LDYyOCBMNDE0LDQ3MyBMNTQ3LDQ3MyBMNTQ3LDM1OS4wMjkgQzU0NywyMjYuNzY3IDYyNy43NzMsMTU0Ljc0NyA3NDUuNzU2LDE1NC43NDcgQzgwMi4yNjksMTU0Ljc0NyA4NTAuODQyLDE1OC45NTUgODY1LDE2MC44MzYgTDg2NSwyOTkgTDc4My4zODQsMjk5LjAzNyBDNzE5LjM5MSwyOTkuMDM3IDcwNywzMjkuNTI5IDcwNywzNzQuMjczIEw3MDcsNDczIEw4NjAuNDg3LDQ3MyBMODQwLjUwMSw2MjggTDcwNyw2MjggTDcwNywxMDI0IEw5NjcuNDg0LDEwMjQgQzk5OC42OTcsMTAyNCAxMDI0LDk5OC42OTcgMTAyNCw5NjcuNDg0IEwxMDI0LDU2LjUxNSBDMTAyNCwyNS4zMDMgOTk4LjY5NywwIDk2Ny40ODQsMCIgaWQ9IkZpbGwtMSI+PC9wYXRoPiAgICAgICAgPC9nPiAgICA8L2c+PC9zdmc+")}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder .ck-media__placeholder__url__text{color:#cdf}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder .ck-media__placeholder__url__text:hover{color:#fff}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder{background:linear-gradient(-135deg, #1400c7, #b800b1, #f50000)}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder .ck-media__placeholder__icon{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI1MDRweCIgaGVpZ2h0PSI1MDRweCIgdmlld0JveD0iMCAwIDUwNCA1MDQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+ICAgICAgICA8dGl0bGU+Z2x5cGgtbG9nb19NYXkyMDE2PC90aXRsZT4gICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+ICAgIDxkZWZzPiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtMSIgcG9pbnRzPSIwIDAuMTU5IDUwMy44NDEgMC4xNTkgNTAzLjg0MSA1MDMuOTQgMCA1MDMuOTQiPjwvcG9seWdvbj4gICAgPC9kZWZzPiAgICA8ZyBpZD0iZ2x5cGgtbG9nb19NYXkyMDE2IiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4gICAgICAgIDxnIGlkPSJHcm91cC0zIj4gICAgICAgICAgICA8bWFzayBpZD0ibWFzay0yIiBmaWxsPSJ3aGl0ZSI+ICAgICAgICAgICAgICAgIDx1c2UgeGxpbms6aHJlZj0iI3BhdGgtMSI+PC91c2U+ICAgICAgICAgICAgPC9tYXNrPiAgICAgICAgICAgIDxnIGlkPSJDbGlwLTIiPjwvZz4gICAgICAgICAgICA8cGF0aCBkPSJNMjUxLjkyMSwwLjE1OSBDMTgzLjUwMywwLjE1OSAxNzQuOTI0LDAuNDQ5IDE0OC4wNTQsMS42NzUgQzEyMS4yNCwyLjg5OCAxMDIuOTI3LDcuMTU3IDg2LjkwMywxMy4zODUgQzcwLjMzNywxOS44MjIgNTYuMjg4LDI4LjQzNiA0Mi4yODIsNDIuNDQxIEMyOC4yNzcsNTYuNDQ3IDE5LjY2Myw3MC40OTYgMTMuMjI2LDg3LjA2MiBDNi45OTgsMTAzLjA4NiAyLjczOSwxMjEuMzk5IDEuNTE2LDE0OC4yMTMgQzAuMjksMTc1LjA4MyAwLDE4My42NjIgMCwyNTIuMDggQzAsMzIwLjQ5NyAwLjI5LDMyOS4wNzYgMS41MTYsMzU1Ljk0NiBDMi43MzksMzgyLjc2IDYuOTk4LDQwMS4wNzMgMTMuMjI2LDQxNy4wOTcgQzE5LjY2Myw0MzMuNjYzIDI4LjI3Nyw0NDcuNzEyIDQyLjI4Miw0NjEuNzE4IEM1Ni4yODgsNDc1LjcyMyA3MC4zMzcsNDg0LjMzNyA4Ni45MDMsNDkwLjc3NSBDMTAyLjkyNyw0OTcuMDAyIDEyMS4yNCw1MDEuMjYxIDE0OC4wNTQsNTAyLjQ4NCBDMTc0LjkyNCw1MDMuNzEgMTgzLjUwMyw1MDQgMjUxLjkyMSw1MDQgQzMyMC4zMzgsNTA0IDMyOC45MTcsNTAzLjcxIDM1NS43ODcsNTAyLjQ4NCBDMzgyLjYwMSw1MDEuMjYxIDQwMC45MTQsNDk3LjAwMiA0MTYuOTM4LDQ5MC43NzUgQzQzMy41MDQsNDg0LjMzNyA0NDcuNTUzLDQ3NS43MjMgNDYxLjU1OSw0NjEuNzE4IEM0NzUuNTY0LDQ0Ny43MTIgNDg0LjE3OCw0MzMuNjYzIDQ5MC42MTYsNDE3LjA5NyBDNDk2Ljg0Myw0MDEuMDczIDUwMS4xMDIsMzgyLjc2IDUwMi4zMjUsMzU1Ljk0NiBDNTAzLjU1MSwzMjkuMDc2IDUwMy44NDEsMzIwLjQ5NyA1MDMuODQxLDI1Mi4wOCBDNTAzLjg0MSwxODMuNjYyIDUwMy41NTEsMTc1LjA4MyA1MDIuMzI1LDE0OC4yMTMgQzUwMS4xMDIsMTIxLjM5OSA0OTYuODQzLDEwMy4wODYgNDkwLjYxNiw4Ny4wNjIgQzQ4NC4xNzgsNzAuNDk2IDQ3NS41NjQsNTYuNDQ3IDQ2MS41NTksNDIuNDQxIEM0NDcuNTUzLDI4LjQzNiA0MzMuNTA0LDE5LjgyMiA0MTYuOTM4LDEzLjM4NSBDNDAwLjkxNCw3LjE1NyAzODIuNjAxLDIuODk4IDM1NS43ODcsMS42NzUgQzMyOC45MTcsMC40NDkgMzIwLjMzOCwwLjE1OSAyNTEuOTIxLDAuMTU5IFogTTI1MS45MjEsNDUuNTUgQzMxOS4xODYsNDUuNTUgMzI3LjE1NCw0NS44MDcgMzUzLjcxOCw0Ny4wMTkgQzM3OC4yOCw0OC4xMzkgMzkxLjYxOSw1Mi4yNDMgNDAwLjQ5Niw1NS42OTMgQzQxMi4yNTUsNjAuMjYzIDQyMC42NDcsNjUuNzIyIDQyOS40NjIsNzQuNTM4IEM0MzguMjc4LDgzLjM1MyA0NDMuNzM3LDkxLjc0NSA0NDguMzA3LDEwMy41MDQgQzQ1MS43NTcsMTEyLjM4MSA0NTUuODYxLDEyNS43MiA0NTYuOTgxLDE1MC4yODIgQzQ1OC4xOTMsMTc2Ljg0NiA0NTguNDUsMTg0LjgxNCA0NTguNDUsMjUyLjA4IEM0NTguNDUsMzE5LjM0NSA0NTguMTkzLDMyNy4zMTMgNDU2Ljk4MSwzNTMuODc3IEM0NTUuODYxLDM3OC40MzkgNDUxLjc1NywzOTEuNzc4IDQ0OC4zMDcsNDAwLjY1NSBDNDQzLjczNyw0MTIuNDE0IDQzOC4yNzgsNDIwLjgwNiA0MjkuNDYyLDQyOS42MjEgQzQyMC42NDcsNDM4LjQzNyA0MTIuMjU1LDQ0My44OTYgNDAwLjQ5Niw0NDguNDY2IEMzOTEuNjE5LDQ1MS45MTYgMzc4LjI4LDQ1Ni4wMiAzNTMuNzE4LDQ1Ny4xNCBDMzI3LjE1OCw0NTguMzUyIDMxOS4xOTEsNDU4LjYwOSAyNTEuOTIxLDQ1OC42MDkgQzE4NC42NSw0NTguNjA5IDE3Ni42ODQsNDU4LjM1MiAxNTAuMTIzLDQ1Ny4xNCBDMTI1LjU2MSw0NTYuMDIgMTEyLjIyMiw0NTEuOTE2IDEwMy4zNDUsNDQ4LjQ2NiBDOTEuNTg2LDQ0My44OTYgODMuMTk0LDQzOC40MzcgNzQuMzc5LDQyOS42MjEgQzY1LjU2NCw0MjAuODA2IDYwLjEwNCw0MTIuNDE0IDU1LjUzNCw0MDAuNjU1IEM1Mi4wODQsMzkxLjc3OCA0Ny45OCwzNzguNDM5IDQ2Ljg2LDM1My44NzcgQzQ1LjY0OCwzMjcuMzEzIDQ1LjM5MSwzMTkuMzQ1IDQ1LjM5MSwyNTIuMDggQzQ1LjM5MSwxODQuODE0IDQ1LjY0OCwxNzYuODQ2IDQ2Ljg2LDE1MC4yODIgQzQ3Ljk4LDEyNS43MiA1Mi4wODQsMTEyLjM4MSA1NS41MzQsMTAzLjUwNCBDNjAuMTA0LDkxLjc0NSA2NS41NjMsODMuMzUzIDc0LjM3OSw3NC41MzggQzgzLjE5NCw2NS43MjIgOTEuNTg2LDYwLjI2MyAxMDMuMzQ1LDU1LjY5MyBDMTEyLjIyMiw1Mi4yNDMgMTI1LjU2MSw0OC4xMzkgMTUwLjEyMyw0Ny4wMTkgQzE3Ni42ODcsNDUuODA3IDE4NC42NTUsNDUuNTUgMjUxLjkyMSw0NS41NSBaIiBpZD0iRmlsbC0xIiBmaWxsPSIjRkZGRkZGIiBtYXNrPSJ1cmwoI21hc2stMikiPjwvcGF0aD4gICAgICAgIDwvZz4gICAgICAgIDxwYXRoIGQ9Ik0yNTEuOTIxLDMzNi4wNTMgQzIwNS41NDMsMzM2LjA1MyAxNjcuOTQ3LDI5OC40NTcgMTY3Ljk0NywyNTIuMDggQzE2Ny45NDcsMjA1LjcwMiAyMDUuNTQzLDE2OC4xMDYgMjUxLjkyMSwxNjguMTA2IEMyOTguMjk4LDE2OC4xMDYgMzM1Ljg5NCwyMDUuNzAyIDMzNS44OTQsMjUyLjA4IEMzMzUuODk0LDI5OC40NTcgMjk4LjI5OCwzMzYuMDUzIDI1MS45MjEsMzM2LjA1MyBaIE0yNTEuOTIxLDEyMi43MTUgQzE4MC40NzQsMTIyLjcxNSAxMjIuNTU2LDE4MC42MzMgMTIyLjU1NiwyNTIuMDggQzEyMi41NTYsMzIzLjUyNiAxODAuNDc0LDM4MS40NDQgMjUxLjkyMSwzODEuNDQ0IEMzMjMuMzY3LDM4MS40NDQgMzgxLjI4NSwzMjMuNTI2IDM4MS4yODUsMjUyLjA4IEMzODEuMjg1LDE4MC42MzMgMzIzLjM2NywxMjIuNzE1IDI1MS45MjEsMTIyLjcxNSBaIiBpZD0iRmlsbC00IiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+ICAgICAgICA8cGF0aCBkPSJNNDE2LjYyNywxMTcuNjA0IEM0MTYuNjI3LDEzNC4zIDQwMy4wOTIsMTQ3LjgzNCAzODYuMzk2LDE0Ny44MzQgQzM2OS43MDEsMTQ3LjgzNCAzNTYuMTY2LDEzNC4zIDM1Ni4xNjYsMTE3LjYwNCBDMzU2LjE2NiwxMDAuOTA4IDM2OS43MDEsODcuMzczIDM4Ni4zOTYsODcuMzczIEM0MDMuMDkyLDg3LjM3MyA0MTYuNjI3LDEwMC45MDggNDE2LjYyNywxMTcuNjA0IiBpZD0iRmlsbC01IiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+ICAgIDwvZz48L3N2Zz4=")}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder .ck-media__placeholder__url__text{color:#ffe0fe}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder .ck-media__placeholder__url__text:hover{color:#fff}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder{background:linear-gradient(to right, #71c6f4, #0d70a5)}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder .ck-media__placeholder__icon{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IldoaXRlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDQwMCA0MDAiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQwMCA0MDA7IiB4bWw6c3BhY2U9InByZXNlcnZlIj48c3R5bGUgdHlwZT0idGV4dC9jc3MiPi5zdDB7ZmlsbDojRkZGRkZGO308L3N0eWxlPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik00MDAsMjAwYzAsMTEwLjUtODkuNSwyMDAtMjAwLDIwMFMwLDMxMC41LDAsMjAwUzg5LjUsMCwyMDAsMFM0MDAsODkuNSw0MDAsMjAweiBNMTYzLjQsMzA1LjVjODguNywwLDEzNy4yLTczLjUsMTM3LjItMTM3LjJjMC0yLjEsMC00LjItMC4xLTYuMmM5LjQtNi44LDE3LjYtMTUuMywyNC4xLTI1Yy04LjYsMy44LTE3LjksNi40LTI3LjcsNy42YzEwLTYsMTcuNi0xNS40LDIxLjItMjYuN2MtOS4zLDUuNS0xOS42LDkuNS0zMC42LDExLjdjLTguOC05LjQtMjEuMy0xNS4yLTM1LjItMTUuMmMtMjYuNiwwLTQ4LjIsMjEuNi00OC4yLDQ4LjJjMCwzLjgsMC40LDcuNSwxLjMsMTFjLTQwLjEtMi03NS42LTIxLjItOTkuNC01MC40Yy00LjEsNy4xLTYuNSwxNS40LTYuNSwyNC4yYzAsMTYuNyw4LjUsMzEuNSwyMS41LDQwLjFjLTcuOS0wLjItMTUuMy0yLjQtMjEuOC02YzAsMC4yLDAsMC40LDAsMC42YzAsMjMuNCwxNi42LDQyLjgsMzguNyw0Ny4zYy00LDEuMS04LjMsMS43LTEyLjcsMS43Yy0zLjEsMC02LjEtMC4zLTkuMS0wLjljNi4xLDE5LjIsMjMuOSwzMy4xLDQ1LDMzLjVjLTE2LjUsMTIuOS0zNy4zLDIwLjYtNTkuOSwyMC42Yy0zLjksMC03LjctMC4yLTExLjUtMC43QzExMC44LDI5Ny41LDEzNi4yLDMwNS41LDE2My40LDMwNS41Ii8+PC9zdmc+")}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder .ck-media__placeholder__url__text{color:#b8e6ff}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder .ck-media__placeholder__url__text:hover{color:#fff}:is(.ck-media__wrapper[data-oembed-url*="twitter.com"], .ck-media__wrapper[data-oembed-url*="google.com/maps"], .ck-media__wrapper[data-oembed-url*="goo.gl/maps"], .ck-media__wrapper[data-oembed-url*="maps.google.com"], .ck-media__wrapper[data-oembed-url*="maps.app.goo.gl"], .ck-media__wrapper[data-oembed-url*="facebook.com"], .ck-media__wrapper[data-oembed-url*="instagram.com"]) .ck-media__placeholder__icon *{display:none}.ck-editor__editable:not(.ck-read-only) .ck-media__wrapper>:not(.ck-media__placeholder),.ck-editor__editable:not(.ck-read-only) .ck-widget:not(.ck-widget_selected) .ck-media__placeholder{pointer-events:none}.ck.ck-media-form{flex-flow:row;align-items:flex-start;width:400px;display:flex}.ck.ck-media-form .ck-labeled-field-view{width:100%;display:inline-block}.ck.ck-media-form .ck-label{display:none}.ck.ck-media-form .ck-input{width:100%}@media screen and (width <= 600px){.ck.ck-media-form{flex-wrap:wrap}.ck.ck-media-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-media-form .ck-button{flex-basis:50%}}:root{--ck-content-color-mention-background: #9900301a;--ck-content-color-mention-text: #990030}.ck-content .mention,.ibo-is-html-content .mention{background:var(--ck-content-color-mention-background);color:var(--ck-content-color-mention-text)}:root{--ck-mention-list-max-height: 300px}.ck.ck-mentions{max-height:var(--ck-mention-list-max-height);overscroll-behavior:contain;overflow:hidden auto}.ck.ck-mentions>.ck-list__item{flex-shrink:0;overflow:hidden}div.ck.ck-balloon-panel.ck-mention-balloon{z-index:calc(var(--ck-z-dialog) + 1)}:root{--ck-color-minimap-tracker-background: 208, 0%, 51%;--ck-color-minimap-iframe-outline: #bfbfbf;--ck-color-minimap-iframe-shadow: #0000001c;--ck-color-minimap-progress-background: #666}.ck.ck-minimap{user-select:none;background:var(--ck-color-base-background);position:absolute}.ck.ck-minimap,.ck.ck-minimap iframe{width:100%;height:100%}.ck.ck-minimap iframe{pointer-events:none;outline:1px solid var(--ck-color-minimap-iframe-outline);box-shadow:0 2px 5px var(--ck-color-minimap-iframe-shadow);border:0;margin:0;position:relative}.ck.ck-minimap .ck.ck-minimap__position-tracker{background:hsla(var(--ck-color-minimap-tracker-background), 0.2);z-index:1;width:100%;transition:background 0.1s ease-in-out;position:absolute;top:0}@media (prefers-reduced-motion:reduce){.ck.ck-minimap .ck.ck-minimap__position-tracker{transition:none}}.ck.ck-minimap .ck.ck-minimap__position-tracker:hover{background:hsla(var(--ck-color-minimap-tracker-background), 0.3)}.ck.ck-minimap .ck.ck-minimap__position-tracker.ck-minimap__position-tracker_dragging,.ck.ck-minimap .ck.ck-minimap__position-tracker.ck-minimap__position-tracker_dragging:hover{background:hsla(var(--ck-color-minimap-tracker-background), 0.4)}:is(.ck.ck-minimap .ck.ck-minimap__position-tracker.ck-minimap__position-tracker_dragging, .ck.ck-minimap .ck.ck-minimap__position-tracker.ck-minimap__position-tracker_dragging:hover):after{opacity:1}.ck.ck-minimap .ck.ck-minimap__position-tracker:after{content:attr(data-progress) "%";background:var(--ck-color-minimap-progress-background);color:var(--ck-color-base-background);border:1px solid var(--ck-color-base-background);opacity:0;border-radius:3px;padding:2px 4px;font-size:10px;transition:opacity 0.1s ease-in-out;position:absolute;top:5px;right:5px}@media (prefers-reduced-motion:reduce){.ck.ck-minimap .ck.ck-minimap__position-tracker:after{transition:none}}.ck-content .page-break,.ibo-is-html-content .page-break{clear:both;justify-content:center;align-items:center;padding:5px 0;display:flex;position:relative}.ck-content .page-break:after,.ibo-is-html-content .page-break:after{content:"";border-bottom:2px dashed #c4c4c4;width:100%;position:absolute}.ck-content .page-break__label,.ibo-is-html-content .page-break__label{z-index:1;text-transform:uppercase;color:#333;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #c4c4c4;border-radius:2px;padding:0.3em 0.6em;font-size:0.75em;font-weight:bold;display:block;position:relative;box-shadow:2px 2px 1px #00000026}@media print{.ck-content .page-break,.ibo-is-html-content .page-break{padding:0}.ck-content .page-break:after,.ibo-is-html-content .page-break:after{display:none}.ck-content :has(+ .page-break),.ibo-is-html-content :has(+ .page-break){margin-bottom:0}}:root{--ck-color-restricted-editing-exception-background: #ffa94c33;--ck-color-restricted-editing-exception-hover-background: #ffa94c59;--ck-color-restricted-editing-exception-brackets: #cc690066;--ck-color-restricted-editing-selected-exception-background: #ffa94c80;--ck-color-restricted-editing-selected-exception-brackets: #cc690099}.ck-editor__editable .restricted-editing-exception{background-color:var(--ck-color-restricted-editing-exception-background);border:1px solid;border-image:linear-gradient(to right, var(--ck-color-restricted-editing-exception-brackets) 0%, var(--ck-color-restricted-editing-exception-brackets) 5px, #0000 6px, #0000 calc(100% - 6px), var(--ck-color-restricted-editing-exception-brackets) calc(100% - 5px), var(--ck-color-restricted-editing-exception-brackets) 100%) 1;transition:background 0.2s ease-in-out}@media (prefers-reduced-motion:reduce){.ck-editor__editable .restricted-editing-exception{transition:none}}.ck-editor__editable .restricted-editing-exception.restricted-editing-exception_selected{background-color:var(--ck-color-restricted-editing-selected-exception-background);border-image:linear-gradient(to right, var(--ck-color-restricted-editing-selected-exception-brackets) 0%, var(--ck-color-restricted-editing-selected-exception-brackets) 5px, var(--ck-color-restricted-editing-selected-exception-brackets) calc(100% - 5px), var(--ck-color-restricted-editing-selected-exception-brackets) 100%) 1}.ck-editor__editable .restricted-editing-exception.restricted-editing-exception_collapsed{padding-left:1ch}.ck-restricted-editing_mode_restricted{cursor:default}.ck-restricted-editing_mode_restricted *{cursor:default}.ck-restricted-editing_mode_restricted .restricted-editing-exception{cursor:text}.ck-restricted-editing_mode_restricted .restricted-editing-exception *{cursor:text}.ck-restricted-editing_mode_restricted .restricted-editing-exception:hover{background:var(--ck-color-restricted-editing-exception-hover-background)}:root{--ck-show-blocks-border-color: #757575}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) address{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-address-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-address-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) aside{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-aside-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-aside-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) blockquote{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-blockquote-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-blockquote-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) details{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-details-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-details-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) div:not(.ck-widget, .ck-widget *){--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-div-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-div-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) footer{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-footer-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-footer-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h1{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-h1-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-h1-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h2{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-h2-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-h2-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h3{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-h3-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-h3-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h4{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-h4-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-h4-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h5{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-h5-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-h5-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h6{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-h6-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-h6-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) header{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-header-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-header-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) main{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-main-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-main-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) nav{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-nav-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-nav-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) pre{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-pre-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-pre-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) ol{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-ol-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-ol-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) ul{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-ul-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-ul-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) p{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-p-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-p-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) section{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-section-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-section-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) :where(figure.image, figure.table) figcaption{--ck-show-blocks-label-ltr: var(--ck-show-blocks-label-figcaption-ltr);--ck-show-blocks-label-rtl: var(--ck-show-blocks-label-figcaption-rtl)}.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) address,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) aside,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) blockquote,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) details,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) div:not(.ck-widget, .ck-widget *),.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) footer,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h1,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h2,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h3,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h4,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h5,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h6,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) header,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) main,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) nav,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) pre,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) ol,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) ul,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) p,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) section,.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) :where(figure.image, figure.table) figcaption{background-repeat:no-repeat;padding-top:15px}:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) address, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) aside, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) blockquote, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) details, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) div:not(.ck-widget, .ck-widget *), .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) footer, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h1, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h2, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h3, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h4, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h5, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) h6, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) header, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) main, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) nav, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) pre, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) ol, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) ul, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) p, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) section, .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget) :where(figure.image, figure.table) figcaption):where(:not(.ck-widget_selected):not(.ck-widget:hover)){outline:1px dashed var(--ck-show-blocks-border-color)}:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) address,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) aside,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) blockquote,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) details,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) div:not(.ck-widget, .ck-widget *),:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) footer,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) h1,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) h2,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) h3,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) h4,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) h5,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) h6,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) header,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) main,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) nav,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) pre,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) ol,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) ul,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) p,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) section,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="ltr"], [dir="ltr"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) :where(figure.image, figure.table) figcaption{background-image:var(--ck-show-blocks-label-ltr);background-position:1px 1px}:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) address,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) aside,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) blockquote,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) details,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) div:not(.ck-widget, .ck-widget *),:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) footer,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) h1,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) h2,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) h3,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) h4,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) h5,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) h6,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) header,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) main,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) nav,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) pre,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) ol,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) ul,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) p,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) section,:is(.ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)[dir="rtl"], [dir="rtl"] .ck.ck-editor__editable.ck-editor__editable_inline.ck-show-blocks:not(.ck-widget)) :where(figure.image, figure.table) figcaption{background-image:var(--ck-show-blocks-label-rtl);background-position:calc(100% - 1px) 1px}.ck-source-editing-area{position:relative;overflow:hidden}.ck-source-editing-area:after,.ck-source-editing-area textarea{padding:var(--ck-spacing-large);line-height:var(--ck-line-height-base);font-size:var(--ck-font-size-normal);white-space:pre-wrap;border:1px solid #0000;margin:0;font-family:monospace}.ck-source-editing-area:after{content:attr(data-value) " ";visibility:hidden;display:block}.ck-source-editing-area textarea{resize:none;box-sizing:border-box;border-color:var(--ck-color-base-border);border-radius:var(--ck-rounded-corners-radius);border-top-left-radius:0;border-top-right-radius:0;outline:none;width:100%;height:100%;position:absolute;overflow:hidden}.ck-source-editing-area textarea:not([readonly]):focus{border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow), 0 0;outline:none}.ck.ck-special-characters-navigation>.ck-label{text-overflow:ellipsis;max-width:160px;overflow:hidden}.ck.ck-special-characters-navigation>.ck-dropdown .ck-dropdown__panel{max-height:250px;overflow:hidden auto}@media screen and (width <= 600px){.ck.ck-special-characters-navigation{max-width:190px}.ck.ck-special-characters-navigation>.ck-form__header__label{text-overflow:ellipsis;overflow:hidden}}.ck.ck-special-characters>.ck-dialog__content>div{grid-column-gap:0px;grid-row-gap:0px;grid-template-rows:auto 1fr auto;grid-template-columns:1fr;width:350px;max-width:100%;height:100%;display:grid}.ck.ck-special-characters>.ck-dialog__content>div>.ck-character-categories{padding:var(--ck-spacing-medium) var(--ck-spacing-large);grid-area:0.25}.ck.ck-special-characters>.ck-dialog__content>div>.ck-character-categories>.ck-labeled-field-view{padding-top:var(--ck-spacing-standard);width:100%}.ck.ck-special-characters>.ck-dialog__content>div>.ck-character-categories>.ck-labeled-field-view .ck.ck-labeled-field-view__status{background:var(--ck-color-base-error);color:var(--ck-color-base-background);padding:var(--ck-spacing-small) var(--ck-spacing-medium);min-width:var(--ck-table-properties-min-error-width);text-align:center;animation:0.15s both ck-table-form-labeled-view-status-appear}.ck.ck-special-characters>.ck-dialog__content>div>.ck-character-categories>.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{border-color:transparent transparent var(--ck-color-base-error) transparent;border-width:0 var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size);border-style:solid}@media (prefers-reduced-motion:reduce){.ck.ck-special-characters>.ck-dialog__content>div>.ck-character-categories>.ck-labeled-field-view .ck.ck-labeled-field-view__status{animation:none}}.ck.ck-special-characters>.ck-dialog__content>div>.ck-character-categories>.ck-labeled-field-view .ck-input.ck-error:not(:focus)+.ck.ck-labeled-field-view__status{display:none}.ck.ck-special-characters>.ck-dialog__content>div>.ck-character-categories>.ck-labeled-field-view>.ck-label{font-size:var(--ck-font-size-tiny);text-align:center}.ck.ck-special-characters>.ck-dialog__content>div>.ck-character-categories .ck-dropdown{width:100%;display:block}.ck.ck-special-characters>.ck-dialog__content>div>.ck-character-categories .ck-dropdown>button:not(:focus){border:1px solid var(--ck-color-base-border)}.ck.ck-special-characters>.ck-dialog__content>div>.ck-character-categories .ck-dropdown>button>span{width:100%}.ck.ck-special-characters>.ck-dialog__content>div>.ck-character-grid{grid-area:0.3333333333;max-height:200px}.ck.ck-special-characters>.ck-dialog__content>div>.ck-character-info{grid-area:0.375}:root{--ck-character-grid-tile-size: 24px}.ck.ck-character-grid{overflow:hidden auto}.ck.ck-character-grid .ck-character-grid__tiles{grid-template-columns:repeat(auto-fill, minmax(var(--ck-character-grid-tile-size), 1fr));margin:var(--ck-spacing-standard) var(--ck-spacing-large);grid-gap:var(--ck-spacing-standard);display:grid}.ck.ck-character-grid .ck-character-grid__tile{width:var(--ck-character-grid-tile-size);height:var(--ck-character-grid-tile-size);min-width:var(--ck-character-grid-tile-size);min-height:var(--ck-character-grid-tile-size);border:0;padding:0;font-size:1.5em;transition:box-shadow 0.2s}@media (prefers-reduced-motion:reduce){.ck.ck-character-grid .ck-character-grid__tile{transition:none}}.ck.ck-character-grid .ck-character-grid__tile:focus:not(.ck-disabled),.ck.ck-character-grid .ck-character-grid__tile:hover:not(.ck-disabled){box-shadow:inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border);border:0}.ck.ck-character-grid .ck-character-grid__tile .ck-button__label{line-height:var(--ck-character-grid-tile-size);text-align:center;width:100%}.ck.ck-character-grid{max-width:100%}.ck.ck-character-info{padding:var(--ck-spacing-small) var(--ck-spacing-large);border-top:1px solid var(--ck-color-base-border);display:flex}.ck.ck-character-info>*{text-transform:uppercase;font-size:var(--ck-font-size-small)}.ck.ck-character-info .ck-character-info__name{text-overflow:ellipsis;max-width:280px;overflow:hidden}.ck.ck-character-info .ck-character-info__code{opacity:0.6}.ck.ck-character-info{justify-content:space-between}.ck.ck-dropdown.ck-style-dropdown.ck-style-dropdown_multiple-active>.ck-button>.ck-button__label{font-style:italic}:root{--ck-style-panel-button-width: 120px;--ck-style-panel-button-height: 80px;--ck-style-panel-button-label-background: #f0f0f0;--ck-style-panel-button-hover-label-background: #ebebeb;--ck-style-panel-button-hover-border-color: #b3b3b3;--ck-style-panel-columns: 3}.ck.ck-style-panel .ck-style-grid{row-gap:var(--ck-spacing-large);column-gap:var(--ck-spacing-large);grid-template-columns:repeat(var(--ck-style-panel-columns), auto);display:grid}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button{--ck-color-button-default-hover-background: var(--ck-color-base-background);--ck-color-button-default-active-background: var(--ck-color-base-background);width:var(--ck-style-panel-button-width);height:var(--ck-style-panel-button-height);justify-content:space-between;padding:0;display:flex}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:not(:focus){border:1px solid var(--ck-color-base-border)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button .ck-button__label{width:100%;height:22px;padding:0 var(--ck-spacing-medium);text-overflow:ellipsis;flex-shrink:0;line-height:22px;overflow:hidden}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button .ck-style-grid__button__preview{opacity:0.9;width:100%;padding:var(--ck-spacing-medium);background:var(--ck-color-base-background);border:2px solid var(--ck-color-base-background);flex-grow:1;flex-basis:100%;place-content:center flex-start;align-items:center;display:flex;overflow:hidden}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-disabled{--ck-color-button-default-disabled-background: var(--ck-color-base-foreground)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-disabled:not(:focus){border-color:var(--ck-style-panel-button-label-background)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-disabled .ck-style-grid__button__preview{opacity:0.4;border-color:var(--ck-color-base-foreground);filter:saturate(0.3)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-on{border-color:var(--ck-color-base-active)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-on .ck-button__label{box-shadow:0 -1px 0 var(--ck-color-base-active);z-index:1}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-on:hover{border-color:var(--ck-color-base-active-focus)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:not(.ck-on) .ck-button__label{background:var(--ck-style-panel-button-label-background)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:not(.ck-on):hover .ck-button__label{background:var(--ck-style-panel-button-hover-label-background)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:hover:not(.ck-disabled):not(.ck-on){border-color:var(--ck-style-panel-button-hover-border-color)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:hover:not(.ck-disabled):not(.ck-on) .ck-style-grid__button__preview{opacity:1}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button{flex-direction:column}.ck.ck-style-panel .ck-style-grid{justify-content:start}.ck.ck-style-panel .ck-style-panel__style-group>.ck-label{margin:var(--ck-spacing-large) 0}.ck.ck-style-panel .ck-style-panel__style-group:first-child>.ck-label{margin-top:0}:root{--ck-style-panel-max-height: 470px}.ck.ck-style-panel{padding:var(--ck-spacing-large);max-height:var(--ck-style-panel-max-height);overflow-y:auto}.ck-content .table th,.ibo-is-html-content .table th{text-align:start}.ck-content[dir="rtl"] .table th,.ibo-is-html-content[dir="rtl"] .table th{text-align:right}.ck-content[dir="ltr"] .table th,.ibo-is-html-content[dir="ltr"] .table th{text-align:left}.ck-content figure.table:not(.layout-table),.ibo-is-html-content figure.table:not(.layout-table){display:table}.ck-content figure.table:not(.layout-table)>table,.ibo-is-html-content figure.table:not(.layout-table)>table{width:100%;height:100%}.ck-content .table:not(.layout-table),.ibo-is-html-content .table:not(.layout-table){margin:0.9em auto}.ck-content table.table:not(.layout-table),.ibo-is-html-content table.table:not(.layout-table),.ck-content figure.table:not(.layout-table)>table,.ibo-is-html-content figure.table:not(.layout-table)>table{border-collapse:collapse;border-spacing:0;border:1px double #b3b3b3}:is(:is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>thead, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tfoot, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tbody)>tr>th{background:#0000000d;font-weight:bold}:is(:is(:is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>thead, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tfoot, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tbody)>tr>td, :is(:is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>thead, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tfoot, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tbody)>tr>th)>p:first-of-type{margin-top:0}:is(:is(:is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>thead, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tfoot, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tbody)>tr>td, :is(:is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>thead, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tfoot, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tbody)>tr>th)>p:last-of-type{margin-bottom:0}:is(:is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>thead, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tfoot, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tbody)>tr>td,:is(:is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>thead, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tfoot, :is(.ck-content table.table:not(.layout-table), .ck-content figure.table:not(.layout-table)>table)>tbody)>tr>th{border:1px solid #bfbfbf;min-width:2em;padding:0.4em}@media print{.ck-content figure.table:not(.layout-table),.ibo-is-html-content figure.table:not(.layout-table){width:fit-content;height:fit-content}.ck-content figure.table:not(.layout-table)>table,.ibo-is-html-content figure.table:not(.layout-table)>table{height:initial}}.ck-editor__editable .ck-table-bogus-paragraph{width:100%;display:inline-block}:root{--ck-color-table-focused-cell-background: #9ec9fa4d;--ck-table-content-default-border-color: #d4d4d4;--ck-table-border-none-helper-line-color: #d4d4d4;--ck-table-border-none-helper-line-style: dashed;--ck-table-border-none-helper-line-width: 1px}.ck-widget.table table[style*="border:none"],.ck-widget.table table[style*="border-style:none"],.ck-widget.table table[style*="border:0"],.ck-widget.table table[style*="border-width:0"]{outline:var(--ck-table-content-default-border-color) 1px dashed}:is(.ck-widget.table td, .ck-widget.table th).ck-editor__nested-editable{outline:unset}:is(.ck-widget.table td, .ck-widget.table th).ck-editor__nested-editable:not(.ck-editor__editable_selected).ck-editor__nested-editable_focused,:is(.ck-widget.table td, .ck-widget.table th).ck-editor__nested-editable:not(.ck-editor__editable_selected):focus{background:var(--ck-color-table-focused-cell-background);outline:1px solid var(--ck-color-focus-border);outline-offset:-1px}:where(.ck.ck-editor__editable.ck-table-show-hidden-borders .ck-widget.table){--ck-table-border-none-helper-line: var(--ck-table-border-none-helper-line-width)
var(--ck-table-border-none-helper-line-style)
- var(--ck-table-border-none-helper-line-color)}:where(.ck.ck-editor__editable.ck-table-show-hidden-borders .ck-widget.table) :where(td, th):where([style*="border:none"], [style*="border:0"], [style*="border-style:none"], [style*="border-width:0"]){border:var(--ck-table-border-none-helper-line) !important}:where(.ck.ck-editor__editable.ck-table-show-hidden-borders .ck-widget.table) :where(table, td, th):where([style*="border-top-style:none"], [style*="border-top-width:0"]){border-top:var(--ck-table-border-none-helper-line) !important}:where(.ck.ck-editor__editable.ck-table-show-hidden-borders .ck-widget.table) :where(table, td, th):where([style*="border-right-style:none"], [style*="border-right-width:0"]){border-right:var(--ck-table-border-none-helper-line) !important}:where(.ck.ck-editor__editable.ck-table-show-hidden-borders .ck-widget.table) :where(table, td, th):where([style*="border-bottom-style:none"], [style*="border-bottom-width:0"]){border-bottom:var(--ck-table-border-none-helper-line) !important}:where(.ck.ck-editor__editable.ck-table-show-hidden-borders .ck-widget.table) :where(table, td, th):where([style*="border-left-style:none"], [style*="border-left-width:0"]){border-left:var(--ck-table-border-none-helper-line) !important}.ck.ck-table-cell-properties-form{width:320px}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__padding-row{align-self:flex-end;width:25%;padding:0}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar{margin-top:var(--ck-spacing-standard);background:none}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar.ck-table-cell-properties-form__horizontal-alignment-toolbar{--ck-table-form-dimensions-input-width: calc(var(--ck-table-form-default-input-width) * 2 + var(--ck-spacing-large));width:var(--ck-table-form-dimensions-input-width);max-width:var(--ck-table-form-dimensions-input-width);min-width:var(--ck-table-form-dimensions-input-width);padding:0}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar.ck-table-cell-properties-form__vertical-alignment-toolbar{flex-grow:1}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar:first-of-type{flex-grow:0.57}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar:last-of-type{flex-grow:0.43}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar .ck-button{flex-grow:1}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row{flex-wrap:wrap}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__border-row .ck-labeled-field-view>.ck-label{font-size:var(--ck-font-size-tiny);text-align:center}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-style,.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-width{width:80px;min-width:80px;max-width:80px}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__dimensions-row{--ck-table-form-dimensions-input-width: calc(var(--ck-table-form-default-input-width) * 2 + var(--ck-spacing-large));width:var(--ck-table-form-dimensions-input-width);max-width:var(--ck-table-form-dimensions-input-width);min-width:var(--ck-table-form-dimensions-input-width);padding:0}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__width,.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__height{width:var(--ck-table-form-default-input-width);min-width:var(--ck-table-form-default-input-width);max-width:var(--ck-table-form-default-input-width);margin:0}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{width:0;height:var(--ck-ui-component-min-height);line-height:var(--ck-ui-component-min-height);margin:0 var(--ck-spacing-small);align-self:flex-end;display:inline-block;position:relative;left:-0.5ch;overflow:visible}.ck.ck-table-cell-properties-form .ck-form__row.ck-form__row.ck-table-form__action-row>.ck.ck-button{flex-grow:initial}.ck.ck-table-cell-properties-form .ck-form__row.ck-form__row.ck-table-form__action-row>.ck.ck-button .ck-button__label{color:currentColor}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__cell-type-row{--ck-table-form-dimensions-input-width: calc(var(--ck-table-form-default-input-width) * 2 + var(--ck-spacing-large));width:var(--ck-table-form-dimensions-input-width);max-width:var(--ck-table-form-dimensions-input-width);min-width:var(--ck-table-form-dimensions-input-width);padding:0}:root{--ck-table-layout-widget-type-around-button-size: 16px;--ck-table-layout-widget-type-around-icon-width: 10px;--ck-table-layout-widget-type-around-icon-height: 8px;--ck-table-layout-widget-handler-icon-size: 10px;--ck-table-layout-default-border-color: #d4d4d4}.ck-content table.table.layout-table,.ibo-is-html-content table.table.layout-table,.ck-content figure.table.layout-table,.ibo-is-html-content figure.table.layout-table{margin-top:0;margin-bottom:0}.ck-content table.table.layout-table,.ibo-is-html-content table.table.layout-table,.ck-content figure.table.layout-table>table,.ibo-is-html-content figure.table.layout-table>table{border-spacing:0}.ck-editor__editable .table.layout-table>table{border-collapse:revert;width:100%;height:100%}.ck-editor__editable .table.layout-table>table:not([style*="border:"], [style*="border-top"], [style*="border-bottom"], [style*="border-left"], [style*="border-right"], [style*="border-width"], [style*="border-style"], [style*="border-color"]){border-width:0;border-color:#0000;outline:none}.ck-editor__editable .table.layout-table>table>tbody>tr>td{box-shadow:revert;padding:revert;text-indent:1px;border-color:var(--ck-table-layout-default-border-color);border-style:dashed;min-width:2em}.ck-editor__editable .table.layout-table>table>tbody>tr>td[style^="width:"],.ck-editor__editable .table.layout-table>table>tbody>tr>td[style*=" width:"],.ck-editor__editable .table.layout-table>table>tbody>tr>td[style*=";width:"]{min-width:auto}.ck-editor__editable .table.layout-table>table>tbody>tr>td:focus{background-color:#0000}.ck-editor__editable .table.layout-table>table>tbody>tr>td:not([style*="border:"], [style*="border-top"], [style*="border-bottom"], [style*="border-left"], [style*="border-right"], [style*="border-width"], [style*="border-style"], [style*="border-color"]){outline:var(--ck-table-layout-default-border-color) 1px dashed;outline-offset:-1px;border-width:0;border-color:#0000}.ck-editor__editable .table.layout-table>table>tbody>tr>td:not([style*="border:"], [style*="border-top"], [style*="border-bottom"], [style*="border-left"], [style*="border-right"], [style*="border-width"], [style*="border-style"], [style*="border-color"]):focus{outline:var(--ck-color-focus-border) 1px solid}.ck-editor__editable .table.layout-table>table>tbody>tr>td>.ck-table-bogus-paragraph{text-indent:0;width:calc(100% - 1px)}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around{--ck-widget-type-around-button-size: var(--ck-table-layout-widget-type-around-button-size)}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button.ck-widget__type-around__button_before,.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button.ck-widget__type-around__button_after{z-index:2;transform:translateY(0)}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button.ck-widget__type-around__button_before{margin-left:var(--ck-table-layout-widget-type-around-button-size);border-radius:0 0 100px 100px;left:min(10%, 30px)}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button.ck-widget__type-around__button_before:after{border-radius:0 0 100px 100px}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button.ck-widget__type-around__button_after{border-radius:100px 100px 0 0}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button.ck-widget__type-around__button_after:after{border-radius:100px 100px 0 0}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button svg{width:var(--ck-table-layout-widget-type-around-icon-width);height:var(--ck-table-layout-widget-type-around-icon-height)}.ck-editor__editable .table.layout-table.ck-widget.ck-widget_with-selection-handle>.ck-widget__selection-handle{--ck-widget-handler-icon-size: var(--ck-table-layout-widget-handler-icon-size);transform:translateY(calc(0px - var(--ck-widget-outline-thickness)));z-index:3}.ck-editor__editable .table.layout-table.ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__fake-caret{top:0}.ck-editor__editable .table.layout-table.ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__fake-caret{bottom:0}.ck-editor__editable .table.layout-table.ck-widget:hover{z-index:var(--ck-z-default)}.ck-editor__editable .table.layout-table.ck-widget:hover>.ck-widget__selection-handle{opacity:0.75;visibility:visible}.ck-editor__editable .table.layout-table.ck-widget:hover>.ck-widget__selection-handle:hover{opacity:1}.ck-editor__editable .table.layout-table.ck-widget:has(.ck-widget.table:hover)>.ck-widget__selection-handle{opacity:0;visibility:hidden}.ck-editor__editable .table.layout-table.ck-widget.ck-widget_selected{z-index:var(--ck-z-default)}.ck-editor__editable .table.layout-table{margin:0;display:table}.ck-editor__editable.ck-editor__editable_inline>.ck-widget.ck-widget_with-selection-handle.layout-table:first-child{margin-top:var(--ck-spacing-large)}.ck-editor__editable.ck-editor__editable_inline>.ck-widget.ck-widget_with-selection-handle.layout-table:last-child,.ck-editor__editable.ck-editor__editable_inline>.ck-widget.ck-widget_with-selection-handle.layout-table:nth-last-child(2):has(+ .ck-fake-selection-container){margin-bottom:var(--ck-spacing-large)}.ck.ck-form__row>:not(.ck-label)+*{margin-inline-start:var(--ck-spacing-large)}.ck.ck-form__row>.ck-label{width:100%;min-width:100%}.ck.ck-form__row.ck-table-form__action-row{margin-top:var(--ck-spacing-large);justify-content:flex-end}.ck.ck-form__row.ck-table-form__action-row .ck-button-save,.ck.ck-form__row.ck-table-form__action-row .ck-button-cancel{justify-content:center}:root{--ck-table-properties-error-arrow-size: 6px;--ck-table-properties-min-error-width: 150px}.ck.ck-table-form{--ck-table-form-default-input-width: 80px}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-labeled-field-view>.ck-label{font-size:var(--ck-font-size-tiny);text-align:center}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-style,.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-width{width:var(--ck-table-form-default-input-width);min-width:var(--ck-table-form-default-input-width);max-width:var(--ck-table-form-default-input-width)}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row{--ck-table-form-dimensions-input-width: calc(var(--ck-table-form-default-input-width) * 2 + var(--ck-spacing-large));width:var(--ck-table-form-dimensions-input-width);max-width:var(--ck-table-form-dimensions-input-width);min-width:var(--ck-table-form-dimensions-input-width);padding:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__width,.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__height{width:var(--ck-table-form-default-input-width);min-width:var(--ck-table-form-default-input-width);max-width:var(--ck-table-form-default-input-width);margin:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{width:0;height:var(--ck-ui-component-min-height);line-height:var(--ck-ui-component-min-height);margin:0 var(--ck-spacing-small);align-self:flex-end;display:inline-block;position:relative;left:-0.5ch;overflow:visible}.ck.ck-table-form .ck-form__row.ck-table-form__border-row,.ck.ck-table-form .ck-form__row.ck-table-form__background-row,.ck.ck-table-form .ck-form__row.ck-table-form__cell-type-row{flex-wrap:wrap}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row,.ck.ck-table-form .ck-form__row.ck-table-form__cell-type-row{flex-wrap:wrap;align-items:center}:is(.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row, .ck.ck-table-form .ck-form__row.ck-table-form__cell-type-row) .ck-labeled-field-view{flex-direction:column-reverse;align-items:center;display:flex}:is(.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row, .ck.ck-table-form .ck-form__row.ck-table-form__cell-type-row) .ck-labeled-field-view .ck.ck-dropdown{flex-grow:0}.ck.ck-table-form .ck-form__row:not(.ck-table-form__action-row)>:not(.ck-label, .ck-table-form__dimension-operator){flex-grow:1}.ck.ck-table-form .ck.ck-labeled-field-view{padding-top:var(--ck-spacing-standard)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{border-radius:var(--ck-rounded-corners-radius);background:var(--ck-color-base-error);color:var(--ck-color-base-background);padding:var(--ck-spacing-small) var(--ck-spacing-medium);min-width:var(--ck-table-properties-min-error-width);text-align:center;left:50%;bottom:calc(-1 * var(--ck-table-properties-error-arrow-size));animation:0.15s both ck-table-form-labeled-view-status-appear;position:absolute;transform:translate(-50%, 100%)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{border-color:transparent transparent var(--ck-color-base-error) transparent;border-width:0 var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size);content:"";top:calc(-1 * var(--ck-table-properties-error-arrow-size));border-style:solid;position:absolute;left:50%;transform:translateX(-50%)}@media (prefers-reduced-motion:reduce){.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{animation:none}}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{z-index:1}.ck.ck-table-form .ck.ck-labeled-field-view .ck-input.ck-error:not(:focus)+.ck.ck-labeled-field-view__status{display:none}.ck.ck-table-form .ck.ck-labeled-field-view{position:relative}@keyframes ck-table-form-labeled-view-status-appear{0%{opacity:0}100%{opacity:1}}.ck.ck-table-properties-form{width:320px}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row{flex-wrap:wrap;flex-basis:0;align-content:baseline;align-self:flex-end}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar{margin-top:var(--ck-spacing-standard);background:none}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items>*{flex:1}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items{flex-wrap:nowrap}:root{--ck-content-table-style-spacing: 1.5em}.ck-content .table.table-style-align-left,.ibo-is-html-content .table.table-style-align-left{float:left;margin-right:var(--ck-content-table-style-spacing)}.ck-content .table.table-style-align-right,.ibo-is-html-content .table.table-style-align-right{float:right;margin-left:var(--ck-content-table-style-spacing)}.ck-content .table.table-style-align-center,.ibo-is-html-content .table.table-style-align-center{margin-left:auto;margin-right:auto}.ck-content .table.table-style-block-align-left,.ibo-is-html-content .table.table-style-block-align-left{margin-left:0;margin-right:auto}.ck-content .table.table-style-block-align-right,.ibo-is-html-content .table.table-style-block-align-right{margin-left:auto;margin-right:0}.ck-editor__editable .table.layout-table.table-style-align-center{margin-left:auto;margin-right:auto}.ck-editor__editable .table.layout-table.table-style-align-left{margin-right:var(--ck-content-table-style-spacing)}.ck-editor__editable .table.layout-table.table-style-align-right{margin-left:var(--ck-content-table-style-spacing)}.ck-editor__editable .table.layout-table.table-style-block-align-left{margin-left:0;margin-right:auto}.ck-editor__editable .table.layout-table.table-style-block-align-right{margin-left:auto;margin-right:0}:root{--ck-content-color-table-caption-background: #f7f7f7;--ck-content-color-table-caption-text: #333;--ck-color-table-caption-highlighted-background: #fd0}.ck-content .table>figcaption,.ibo-is-html-content .table>figcaption,.ck-content figure.table>table>caption,.ibo-is-html-content figure.table>table>caption{caption-side:top;word-break:normal;overflow-wrap:anywhere;text-align:center;color:var(--ck-content-color-table-caption-text);background-color:var(--ck-content-color-table-caption-background);outline-offset:-1px;padding:0.6em;font-size:0.75em;display:table-caption}@media (forced-colors:active){.ck-content .table>figcaption,.ibo-is-html-content .table>figcaption,.ck-content figure.table>table>caption,.ibo-is-html-content figure.table>table>caption{background-color:unset;color:unset}}@media (forced-colors:none){:is(.ck.ck-editor__editable .table>figcaption, .ck.ck-editor__editable figure.table>table>caption).table__caption_highlighted{animation:0.6s ease-out ck-table-caption-highlight}}:is(.ck.ck-editor__editable .table>figcaption, .ck.ck-editor__editable figure.table>table>caption).ck-placeholder:before{padding-left:inherit;padding-right:inherit;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@keyframes ck-table-caption-highlight{0%{background-color:var(--ck-color-table-caption-highlighted-background)}100%{background-color:var(--ck-content-color-table-caption-background)}}:root{--ck-table-selected-cell-background: #9ecffa4d}.ck.ck-editor__editable .table table td.ck-editor__editable_selected,.ck.ck-editor__editable .table table th.ck-editor__editable_selected{caret-color:#0000;box-shadow:unset;position:relative}:is(.ck.ck-editor__editable .table table td.ck-editor__editable_selected, .ck.ck-editor__editable .table table th.ck-editor__editable_selected):after{content:"";pointer-events:none;background-color:var(--ck-table-selected-cell-background);position:absolute;inset:0}:is(.ck.ck-editor__editable .table table td.ck-editor__editable_selected, .ck.ck-editor__editable .table table th.ck-editor__editable_selected) ::selection,:is(.ck.ck-editor__editable .table table td.ck-editor__editable_selected, .ck.ck-editor__editable .table table th.ck-editor__editable_selected):focus{background-color:#0000}:is(.ck.ck-editor__editable .table table td.ck-editor__editable_selected, .ck.ck-editor__editable .table table th.ck-editor__editable_selected) .ck-widget{outline:unset}:is(.ck.ck-editor__editable .table table td.ck-editor__editable_selected, .ck.ck-editor__editable .table table th.ck-editor__editable_selected) .ck-widget>.ck-widget__selection-handle{display:none}:root{--ck-color-table-column-resizer-hover: var(--ck-color-base-active);--ck-table-column-resizer-width: 7px;--ck-table-column-resizer-position-offset: calc(var(--ck-table-column-resizer-width) * -.5 - .5px)}.ck-content .table .ck-table-resized,.ibo-is-html-content .table .ck-table-resized{table-layout:fixed}.ck-content .table td,.ibo-is-html-content .table td,.ck-content .table th,.ibo-is-html-content .table th{overflow-wrap:break-word}.ck.ck-editor__editable .table td,.ck.ck-editor__editable .table th{position:relative}.ck.ck-editor__editable .table .ck-table-column-resizer{top:0;bottom:0;right:var(--ck-table-column-resizer-position-offset);width:var(--ck-table-column-resizer-width);cursor:col-resize;user-select:none;z-index:var(--ck-z-default);position:absolute}.ck.ck-editor__editable.ck-column-resize_disabled .table .ck-table-column-resizer,.ck.ck-editor__editable .table[draggable] .ck-table-column-resizer{display:none}.ck.ck-editor__editable .table .ck-table-column-resizer:hover,.ck.ck-editor__editable .table .ck-table-column-resizer__active{background-color:var(--ck-color-table-column-resizer-hover);opacity:0.25}.ck.ck-editor__editable[dir="rtl"] .table .ck-table-column-resizer{left:var(--ck-table-column-resizer-position-offset);right:unset}[dir="ltr"] :is(.ck.ck-input-color>.ck.ck-input-text){border-top-right-radius:0;border-bottom-right-radius:0}[dir="rtl"] :is(.ck.ck-input-color>.ck.ck-input-text){border-top-left-radius:0;border-bottom-left-radius:0}.ck.ck-input-color>.ck.ck-input-text:focus{z-index:0}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{padding:0;display:flex}[dir="ltr"] :is(.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button){border-top-left-radius:0;border-bottom-left-radius:0}[dir="ltr"] :is(.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button):not(:focus){border-left:1px solid #0000}[dir="rtl"] :is(.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button){border-top-right-radius:0;border-bottom-right-radius:0}[dir="rtl"] :is(.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button):not(:focus){border-right:1px solid #0000}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button.ck-disabled{background:var(--ck-color-input-disabled-background)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview{border-radius:var(--ck-rounded-corners-radius);border:1px solid var(--ck-color-input-border);width:20px;height:20px;position:relative;overflow:hidden}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview>.ck.ck-input-color__button__preview__no-color-indicator{transform-origin:50%;background:red;border-radius:2px;width:8%;height:150%;display:block;position:absolute;top:-30%;left:50%;transform:rotate(45deg)}.ck.ck-input-color .ck.ck-input-color__remove-color{width:100%;padding:calc(var(--ck-spacing-standard) / 2) var(--ck-spacing-standard);border-bottom-right-radius:0;border-bottom-left-radius:0}.ck.ck-input-color .ck.ck-input-color__remove-color:not(:focus){border-bottom:1px solid var(--ck-color-input-border)}[dir="ltr"] :is(.ck.ck-input-color .ck.ck-input-color__remove-color){border-top-right-radius:0}[dir="rtl"] :is(.ck.ck-input-color .ck.ck-input-color__remove-color){border-top-left-radius:0}.ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon{margin-right:var(--ck-spacing-standard)}[dir="rtl"] :is(.ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon){margin-right:0;margin-left:var(--ck-spacing-standard)}.ck.ck-input-color{flex-direction:row-reverse;width:100%;display:flex}.ck.ck-input-color>input.ck.ck-input-text{flex-grow:1;min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown{min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown>.ck-input-color__button .ck-dropdown__arrow{display:none}:root{--ck-insert-table-dropdown-padding: 10px;--ck-insert-table-dropdown-box-height: 11px;--ck-insert-table-dropdown-box-width: 12px;--ck-insert-table-dropdown-box-margin: 1px}.ck .ck-insert-table-dropdown__grid{width:calc(var(--ck-insert-table-dropdown-box-width) * 10 + var(--ck-insert-table-dropdown-box-margin) * 20 + var(--ck-insert-table-dropdown-padding) * 2);padding:var(--ck-insert-table-dropdown-padding) var(--ck-insert-table-dropdown-padding) 0;flex-flow:wrap;display:flex}.ck .ck-insert-table-dropdown__label,.ck[dir="rtl"] .ck-insert-table-dropdown__label{text-align:center}.ck .ck-insert-table-dropdown-grid-box{min-width:var(--ck-insert-table-dropdown-box-width);min-height:var(--ck-insert-table-dropdown-box-height);margin:var(--ck-insert-table-dropdown-box-margin);border:1px solid var(--ck-color-base-border);border-radius:1px;outline:none;transition:none}@media (prefers-reduced-motion:reduce){.ck .ck-insert-table-dropdown-grid-box{transition:none}}.ck .ck-insert-table-dropdown-grid-box:focus{box-shadow:none}.ck .ck-insert-table-dropdown-grid-box.ck-on{border-color:var(--ck-color-focus-border);background:var(--ck-color-focus-outer-shadow)}:root{--ck-widget-outline-thickness: 3px;--ck-widget-handler-icon-size: 16px;--ck-widget-handler-animation-duration: .2s;--ck-widget-handler-animation-curve: ease;--ck-color-widget-blurred-border: #dedede;--ck-color-widget-hover-border: #ffc83d;--ck-color-widget-editable-focus-background: var(--ck-color-base-background);--ck-color-widget-drag-handler-icon-color: var(--ck-color-base-background);--ck-color-resizer: var(--ck-color-focus-border);--ck-color-resizer-tooltip-background: #262626;--ck-color-resizer-tooltip-text: #f2f2f2;--ck-resizer-border-radius: var(--ck-border-radius);--ck-resizer-tooltip-offset: 10px;--ck-resizer-tooltip-height: calc(var(--ck-spacing-small) * 2 + 10px)}.ck .ck-widget{outline-width:var(--ck-widget-outline-thickness);transition:outline-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);outline-style:solid;outline-color:#0000}@media (prefers-reduced-motion:reduce){.ck .ck-widget{transition:none}}.ck .ck-widget.ck-widget_selected,.ck .ck-widget.ck-widget_selected:hover{outline:var(--ck-widget-outline-thickness) solid var(--ck-color-focus-border)}.ck .ck-widget:hover{outline-color:var(--ck-color-widget-hover-border)}.ck .ck-widget{position:relative}.ck .ck-editor__nested-editable{border:1px solid #0000}.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck .ck-editor__nested-editable:focus{box-shadow:var(--ck-inner-shadow), 0 0}@media (forced-colors:none){.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck .ck-editor__nested-editable:focus{background-color:var(--ck-color-widget-editable-focus-background)}}:is(.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused, .ck .ck-editor__nested-editable:focus):not(td, th){border:var(--ck-focus-ring);outline:none}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{box-sizing:border-box;opacity:0;transition:background-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve), visibility var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve), opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);border-radius:var(--ck-border-radius) var(--ck-border-radius) 0 0;left:calc(0px - var(--ck-widget-outline-thickness));background-color:#0000;padding:4px;top:0;transform:translateY(-100%)}@media (prefers-reduced-motion:reduce){.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{transition:none}}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{width:var(--ck-widget-handler-icon-size);height:var(--ck-widget-handler-icon-size);color:var(--ck-color-widget-drag-handler-icon-color)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:0;transition:opacity 0.3s var(--ck-widget-handler-animation-curve)}@media (prefers-reduced-motion:reduce){.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{transition:none}}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{display:block}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover .ck-icon .ck-icon__selected-indicator{opacity:1}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{position:absolute}.ck .ck-widget.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle{opacity:1;background-color:var(--ck-color-widget-hover-border);visibility:visible}:is(.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected, .ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover)>.ck-widget__selection-handle{opacity:1;background-color:var(--ck-color-focus-border);visibility:visible}:is(.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected, .ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover)>.ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:1}.ck .ck-widget.ck-widget_with-selection-handle{position:relative}.ck[dir="rtl"] .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{left:auto;right:calc(0px - var(--ck-widget-outline-thickness))}.ck.ck-editor__editable.ck-read-only .ck-widget{transition:none}.ck.ck-editor__editable.ck-read-only .ck-widget:not(.ck-widget_selected){--ck-widget-outline-thickness: 0px}.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle,.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck .ck-widget:has(.ck-widget.table:hover){outline-color:#0000}.ck .ck-widget.ck-widget_with-selection-handle:has(.ck-widget.table:hover)>.ck-widget__selection-handle{opacity:0;visibility:hidden}.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover{outline-color:var(--ck-color-widget-blurred-border)}:is(.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected, .ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover).ck-widget_with-selection-handle>.ck-widget__selection-handle,:is(.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected, .ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover).ck-widget_with-selection-handle>.ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable:not(.ck-pagination-view)>.ck-widget.ck-widget_with-selection-handle:first-child,.ck.ck-editor__editable:not(.ck-pagination-view) blockquote>.ck-widget.ck-widget_with-selection-handle:first-child{margin-top:calc(1em + var(--ck-widget-handler-icon-size))}.ck .ck-size-view{background:var(--ck-color-resizer-tooltip-background);color:var(--ck-color-resizer-tooltip-text);border:1px solid var(--ck-color-resizer-tooltip-text);border-radius:var(--ck-resizer-border-radius);font-size:var(--ck-font-size-tiny);padding:0 var(--ck-spacing-small);height:var(--ck-resizer-tooltip-height);line-height:var(--ck-resizer-tooltip-height);display:block}.ck .ck-size-view.ck-orientation-top-left,.ck .ck-size-view.ck-orientation-top-right,.ck .ck-size-view.ck-orientation-bottom-right,.ck .ck-size-view.ck-orientation-bottom-left,.ck .ck-size-view.ck-orientation-above-center{position:absolute}.ck .ck-size-view.ck-orientation-top-left{top:var(--ck-resizer-tooltip-offset);left:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-top-right{top:var(--ck-resizer-tooltip-offset);right:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-right{bottom:var(--ck-resizer-tooltip-offset);right:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-left{bottom:var(--ck-resizer-tooltip-offset);left:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-above-center{top:calc(var(--ck-resizer-tooltip-height) * -1);left:50%;transform:translate(-50%)}:root{--ck-resizer-size: 10px;--ck-resizer-offset: calc(( var(--ck-resizer-size) / -2 ) - 2px);--ck-resizer-border-width: 1px}.ck .ck-widget__resizer{outline:1px solid var(--ck-color-resizer);pointer-events:none;display:none;position:absolute;top:0;left:0}.ck .ck-widget__resizer__handle{width:var(--ck-resizer-size);height:var(--ck-resizer-size);background:var(--ck-color-focus-border);border:var(--ck-resizer-border-width) solid #fff;border-radius:var(--ck-resizer-border-radius);pointer-events:all;position:absolute}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-left{top:var(--ck-resizer-offset);left:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-right{top:var(--ck-resizer-offset);right:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-right{bottom:var(--ck-resizer-offset);right:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-left{bottom:var(--ck-resizer-offset);left:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-left,.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-right{cursor:nwse-resize}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-right,.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-left{cursor:nesw-resize}.ck .ck-widget_with-resizer{position:relative}.ck-focused .ck-widget_with-resizer.ck-widget_selected>.ck-widget__resizer{display:block}:root{--ck-widget-type-around-button-size: 20px;--ck-color-widget-type-around-button-active: var(--ck-color-focus-border);--ck-color-widget-type-around-button-hover: var(--ck-color-widget-hover-border);--ck-color-widget-type-around-button-blurred-editable: var(--ck-color-widget-blurred-border);--ck-color-widget-type-around-button-radar-start-alpha: 0;--ck-color-widget-type-around-button-radar-end-alpha: .3;--ck-color-widget-type-around-button-icon: var(--ck-color-base-background)}.ck .ck-widget .ck-widget__type-around__button{width:var(--ck-widget-type-around-button-size);height:var(--ck-widget-type-around-button-size);background:var(--ck-color-widget-type-around-button);transition:opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve), background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);opacity:0;pointer-events:none;z-index:var(--ck-z-default);border-radius:100px;display:block;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.ck .ck-widget .ck-widget__type-around__button{transition:none}}.ck .ck-widget .ck-widget__type-around__button svg{width:10px;height:8px;margin-top:1px;transition:transform 0.5s;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}@media (prefers-reduced-motion:reduce){.ck .ck-widget .ck-widget__type-around__button svg{transition:none}}.ck .ck-widget .ck-widget__type-around__button svg *{stroke-dasharray:10;stroke-dashoffset:0;fill:none;stroke:var(--ck-color-widget-type-around-button-icon);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.ck .ck-widget .ck-widget__type-around__button svg line{stroke-dasharray:7}.ck .ck-widget .ck-widget__type-around__button svg{z-index:calc(var(--ck-z-default) + 2)}.ck .ck-widget .ck-widget__type-around__button:hover{animation:1s infinite ck-widget-type-around-button-sonar}.ck .ck-widget .ck-widget__type-around__button:hover svg polyline{animation:2s linear ck-widget-type-around-arrow-dash}.ck .ck-widget .ck-widget__type-around__button:hover svg line{animation:2s linear ck-widget-type-around-arrow-tip-dash}@media (prefers-reduced-motion:reduce){.ck .ck-widget .ck-widget__type-around__button:hover{animation:none}.ck .ck-widget .ck-widget__type-around__button:hover svg polyline,.ck .ck-widget .ck-widget__type-around__button:hover svg line{animation:none}}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_before{top:calc(-.5 * var(--ck-widget-outline-thickness));left:min(10%, 30px);transform:translateY(-50%)}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_after{bottom:calc(-.5 * var(--ck-widget-outline-thickness));right:min(10%, 30px);transform:translateY(50%)}.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__button{opacity:1;pointer-events:auto}.ck .ck-widget:not(.ck-widget_selected)>.ck-widget__type-around>.ck-widget__type-around__button{background:var(--ck-color-widget-type-around-button-hover)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover{background:var(--ck-color-widget-type-around-button-active)}:is(.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button, .ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover):after{width:calc(var(--ck-widget-type-around-button-size) - 2px);height:calc(var(--ck-widget-type-around-button-size) - 2px);content:"";z-index:calc(var(--ck-z-default) + 1);background:linear-gradient(135deg, #fff0 0%, #ffffff4d 100%);border-radius:100px;display:block;position:absolute;top:1px;left:1px}.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_before,.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_after{outline-color:#0000}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button{opacity:1;pointer-events:auto}.ck .ck-widget.ck-widget_with-selection-handle>.ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:20px}.ck .ck-widget .ck-widget__type-around__fake-caret{pointer-events:none;background:var(--ck-color-base-text);outline:1px solid #ffffff80;height:1px;animation:1s linear infinite forwards ck-widget-type-around-fake-caret-pulse}:is(.ck .ck-widget.ck-widget_type-around_show-fake-caret_before, .ck .ck-widget.ck-widget_type-around_show-fake-caret_after).ck-widget_selected:hover{outline-color:var(--ck-color-widget-hover-border)}:is(.ck .ck-widget.ck-widget_type-around_show-fake-caret_before, .ck .ck-widget.ck-widget_type-around_show-fake-caret_after)>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}:is(:is(.ck .ck-widget.ck-widget_type-around_show-fake-caret_before, .ck .ck-widget.ck-widget_type-around_show-fake-caret_after).ck-widget_with-selection-handle.ck-widget_selected, :is(.ck .ck-widget.ck-widget_type-around_show-fake-caret_before, .ck .ck-widget.ck-widget_type-around_show-fake-caret_after).ck-widget_with-selection-handle.ck-widget_selected:hover)>.ck-widget__selection-handle{opacity:0}:is(.ck .ck-widget.ck-widget_type-around_show-fake-caret_before, .ck .ck-widget.ck-widget_type-around_show-fake-caret_after).ck-widget_selected.ck-widget_with-resizer>.ck-widget__resizer{opacity:0}.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__fake-caret{display:none;position:absolute;left:0;right:0}.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__fake-caret{left:calc(-1 * var(--ck-widget-outline-thickness));right:calc(-1 * var(--ck-widget-outline-thickness))}.ck .ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__fake-caret{top:calc(-1 * var(--ck-widget-outline-thickness) - 1px);display:block}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__fake-caret{bottom:calc(-1 * var(--ck-widget-outline-thickness) - 1px);display:block}.ck[dir="rtl"] .ck-widget.ck-widget_with-selection-handle .ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:0;margin-right:20px}:is(.ck-editor__nested-editable.ck-editor__editable_selected .ck-widget.ck-widget_selected, .ck-editor__nested-editable.ck-editor__editable_selected .ck-widget:hover)>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck .ck-widget:has(.ck-widget.table:hover)>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover){background:var(--ck-color-widget-type-around-button-blurred-editable)}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover) svg *{stroke:#999}@keyframes ck-widget-type-around-arrow-dash{0%{stroke-dashoffset:10px}20%,100%{stroke-dashoffset:0}}@keyframes ck-widget-type-around-arrow-tip-dash{0%,20%{stroke-dashoffset:7px}40%,100%{stroke-dashoffset:0}}@keyframes ck-widget-type-around-button-sonar{0%{box-shadow:0 0 0 0 hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha))}50%{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-end-alpha))}100%{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha))}}@keyframes ck-widget-type-around-fake-caret-pulse{0%{opacity:1}49%{opacity:1}50%{opacity:0}99%{opacity:0}100%{opacity:1}}.ck.ck-editor__editable.ck-read-only .ck-widget__type-around,.ck.ck-editor__editable.ck-widget__type-around_disabled .ck-widget__type-around{display:none}.ck.ck-editor__editable.ck-restricted-editing_mode_restricted .ck-widget__type-around{display:none}.ck.ck-editor__editable.ck-restricted-editing_mode_restricted div.restricted-editing-exception .ck-widget__type-around{display:initial}:root{--ck-color-list-button-on-background: #EFF0EF;--ck-color-list-button-on-background-focus: #EFF0EF;--ck-color-list-button-hover-background: #EFF0EF;--ck-color-list-button-on-text: black;--ck-color-image-caption-background: transparent;--ck-spacing-small: 0.35rem;--ck-ui-component-min-height: 1rem;--ck-icon-size: 1.3rem;--ck-z-default: 9999;--ck-z-panel: calc( var(--ck-z-default) + 999 );--ck-z-dialog: calc( var(--ck-z-panel) + 9999 );--ck-text-tiny-font-size: 0.7rem;--ck-text-small-font-size: 0.85rem;--ck-text-big-font-size: 1.4rem;--ck-text-huge-font-size: 1.8rem;--ck-content-font-size: 1rem}.text-tiny{font-size:var(--ck-text-tiny-font-size)}.text-small{font-size:var(--ck-text-small-font-size)}.text-big{font-size:var(--ck-text-big-font-size)}.text-huge{font-size:var(--ck-text-huge-font-size)}.ck-editor{z-index:0}.ck-content .image img,.ibo-is-html-content .image img{min-width:inherit;margin-left:0;margin-right:0}.ck-content .image-style-align-left,.ibo-is-html-content .image-style-align-left,.ck-content .image-style-align-right,.ibo-is-html-content .image-style-align-right{display:block;float:unset}.ck-content .image-style-align-left,.ibo-is-html-content .image-style-align-left{text-align:left;margin-right:0}.ck-content .image-style-align-right,.ibo-is-html-content .image-style-align-right{text-align:right;margin-left:0}.ck-content figure,.ibo-is-html-content figure{margin-left:0;margin-right:0}.ck-content figure table,.ibo-is-html-content figure table{text-align:initial}.ck-content .table,.ibo-is-html-content .table{margin-left:0;margin-right:0}.ck-content .table table th,.ibo-is-html-content .table table th{background-color:#F4F4F4}.ck-content .marker-yellow,.ibo-is-html-content .marker-yellow{background-color:#FDFD77}.ck-content .marker-green,.ibo-is-html-content .marker-green{background-color:#62F962}.ck-content .marker-pink,.ibo-is-html-content .marker-pink{background-color:#FC7899}.ck-content .marker-blue,.ibo-is-html-content .marker-blue{background-color:#72CCFD}.ck.ck-fullscreen__main-wrapper .ck-fullscreen__sidebar{display:none}.ck-fullscreen__editable{display:flex;flex-direction:column;width:100%;margin:0;padding:0}.ck-table-show-hidden-borders{width:100%;max-width:100%;margin:0;border:0;padding:2em;flex-grow:1}.ck-fullscreen__main-wrapper .ck-fullscreen__editable-wrapper{--ck-fullscreen-editor-top-margin: 0;--ck-fullscreen-editor-bottom-margin: 0;flex-grow:1}.ck-fullscreen__main-wrapper .ck-fullscreen__editable::after{display:none}.ck.ck-fullscreen__right-edge{margin-left:0}.ck-fullscreen__main-wrapper .ck-fullscreen__editable .ck.ck-editor__editable:not(.ck-editor__nested-editable){height:100%;width:100%;max-width:100%;padding:0}:root{--ck-content-font-family: inherit;--ck-content-font-color: inherit;--ck-content-font-size: inherit;--ck-content-line-height: inherit;--ck-content-word-break: inherit;--ck-content-overflow-wrap: inherit}.ck{--ck-color-list-button-on-background: #e1e7ec;--ck-color-list-button-on-background-focus: #e1e7ec;--ck-color-list-button-hover-background: #e1e7ec;--ck-color-list-button-on-text: #212934;--ck-text-tiny-font-size: 0.67rem;--ck-text-small-font-size: 0.83rem;--ck-text-big-font-size: 1.33rem;--ck-text-huge-font-size: 1.83rem;--ck-color-image-caption-text: #212934}.ck-editor{width:100% !important;display:inline-grid;z-index:1}.ck-editor .ck-editor__main{overflow:auto}.ck.ck-content,.ck.ibo-is-html-content{color:#212934}.ck.ck-content .table table,.ck.ibo-is-html-content .table table{width:100% !important}.ck-editor__editable_inline:not(.ck-comment__input *){height:200px}.ck-content pre[data-language],.ibo-is-html-content pre[data-language]{padding:0 !important}.ck-content pre[data-language] code,.ibo-is-html-content pre[data-language] code{display:block;background:#212934 !important;padding:0.9rem !important;color:white !important}.ck-maximize_editor_main .ck-source-editing-area textarea{overflow:auto !important}.ck-mentions .ck-button{line-height:1.6rem;padding:4px 8px !important}.c3 path:not(.c3-legend-item-tile),.c3 line:not(.c3-legend-item-tile){stroke:#212934 !important}.c3-chart-arc path:not(.c3-legend-item-tile){stroke:white !important}.c3-axis{fill:#212934 !important}.c3-tooltip th{background-color:#aebecd !important;color:white !important}.c3-tooltip td{background-color:#929fb1 !important}.c3-legend-background{fill:white !important;stroke:#f2f2f2 !important}.c3-tooltip{background-color:#aebecd !important}.c3-tooltip tr{border:1px solid #CCC}.c3-legend-item{fill:#212934 !important}.tippy-content{white-space:pre-line}.ui-dialog{box-sizing:content-box;display:flex;flex-direction:column;position:absolute;top:0;left:0;background-color:white;border-radius:5px;overflow:hidden;outline:0;z-index:21}.ui-dialog .ui-dialog-titlebar{padding:0.4em 30px;position:relative;background-color:white;height:50px;border-bottom:solid 1px #e1e7ec;display:flex;flex-direction:row;align-items:center;justify-content:space-between}.ui-dialog .ui-dialog-title{float:left;margin:0.1em 0;width:100%;padding-right:24px}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:0;top:0.4em;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{box-sizing:content-box;position:relative;padding:16px 30px;overflow:auto}.ui-dialog .ui-dialog-buttonpane{margin-top:auto;text-align:left;border-width:1px 0 0 0;background-image:none;padding:0.4em 30px;position:relative;background-color:white;border-top:solid 1px #e1e7ec;height:50px}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:0.5em 0.4em 0.5em 0;cursor:pointer}.ui-dialog .ui-resizable-n{height:2px;top:0}.ui-dialog .ui-resizable-e{width:2px;right:0}.ui-dialog .ui-resizable-s{height:2px;bottom:0}.ui-dialog .ui-resizable-w{width:2px;left:0}.ui-dialog .ui-resizable-se{width:7px;height:7px;right:0;bottom:0}.ui-dialog .ui-resizable-sw{width:7px;height:7px;left:0;bottom:0}.ui-dialog .ui-resizable-ne{width:7px;height:7px;right:0;top:0}.ui-dialog .ui-resizable-nw{width:7px;height:7px;left:0;top:0}.ui-dialog .ui-button>.ui-icon{background-image:none;float:unset;margin:auto}.ui-dialog .ui-button>.ui-icon.ui-icon-closethick::after{content:"";font-family:"Font Awesome 5 Free";font-weight:600;text-indent:0;position:absolute;left:0px;width:100%;top:4px}.ui-button-icon-only{text-indent:-9999px;white-space:nowrap}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-widget-overlay.ui-front{position:fixed;top:0;left:0;width:100%;height:100%;opacity:0.6;filter:alpha(opacity=60);background-color:#37474f}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle{display:none}.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-layout-pane{overflow:auto}.ui-datepicker{display:none;background-color:white;border-radius:5px;box-shadow:0 1px 2px rgba(0, 0, 0, 0.25), 0 1px 3px rgba(0, 0, 0, 0.12);z-index:32 !important;padding:0 8px 5px 8px}.ui-datepicker .ui-datepicker-header{position:relative;margin:8px 8px 4px 8px;padding-top:24px}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:0}.ui-datepicker .ui-datepicker-prev{left:0}.ui-datepicker .ui-datepicker-next{right:0}.ui-datepicker .ui-datepicker-title{display:flex;justify-content:space-evenly}.ui-datepicker .ui-datepicker-title select{flex-grow:1}.ui-datepicker .ui-datepicker-year{margin-left:8px}.ui-datepicker .ui-datepicker-calendar{margin:0 8px 8px 8px}.ui-datepicker th{padding:0.7em 0.3em;text-align:center;font-weight:bold}.ui-datepicker td{padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:0.2em 0;text-align:center;width:23px;border-radius:100%;color:#c05621}.ui-datepicker td span.ui-state-active,.ui-datepicker td a.ui-state-active{background-color:#c05621;color:floralwhite}.ui-datepicker td span.ui-state-highlight:not(.ui-state-active),.ui-datepicker td a.ui-state-highlight:not(.ui-state-active){background-color:#feebc8}.ui-datepicker td span.ui-state-hover:not(.ui-state-active),.ui-datepicker td a.ui-state-hover:not(.ui-state-active){color:#7b341e}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:0.7em 0 0 0;padding:0 0.2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:0.5em 0.2em 0.4em;cursor:pointer;padding:0.2em 0.6em 0.3em 0.6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto 0.4em}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current{float:right}.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-slider{position:relative;text-align:left;background-color:#f8f9fa;border:solid 1px #929fb1;border-radius:3px}.ui-slider .ui-slider-handle{background-color:white;border:solid 1px #929fb1;border-radius:3px;position:absolute;z-index:2;width:1.4em;height:1.4em;-ms-touch-action:none;touch-action:none;cursor:pointer}.ui-slider .ui-slider-handle:hover,.ui-slider .ui-slider-handle:active{border:solid 1px #c05621}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:0.7em;display:block;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle{filter:inherit}.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:0.8em}.ui-slider-horizontal .ui-slider-handle{top:-0.2em;margin-left:-0.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:0.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-0.3em;margin-left:0;margin-bottom:-0.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default;z-index:100}.ui-autocomplete .ui-menu-item{padding:0}.ui-autocomplete-input{width:auto;display:inline}.ui-helper-hidden-accessible{clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-tabs-tab.ui-state-disabled a{cursor:not-allowed !important}.ui-multiselect{width:auto !important;padding-left:0.7em !important;padding-right:1.5em !important;text-align:left;white-space:nowrap;overflow:hidden;display:grid}button.ui-multiselect>span{overflow:hidden}.ui-multiselect span.ui-icon{float:right}.ui-multiselect-single .ui-multiselect-checkboxes input{position:absolute !important;top:auto !important;left:-9999px}.ui-multiselect-single .ui-multiselect-checkboxes label{padding:5px !important}.ui-multiselect-header{margin-bottom:3px;padding:3px 0}.ui-multiselect-header ul{padding-left:24px}.ui-multiselect-header ul li{float:left;padding:0 10px 0 0}.ui-multiselect-header span.ui-icon{float:left}.ui-multiselect-header li.ui-multiselect-close{float:right;text-align:right;padding-right:0}.ui-multiselect-menu{display:none;padding:3px;position:absolute;z-index:10000;text-align:left}.ui-multiselect-checkboxes{position:relative;overflow-y:scroll !important}.ui-multiselect-checkboxes label{display:flex;align-items:center;cursor:pointer;padding:3px 1px}.ui-multiselect-checkboxes label input{margin-right:5px;position:relative;top:1px}.ui-multiselect-checkboxes li{clear:both;padding-right:3px}.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label{text-align:center}.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label a{display:block;padding:3px;margin:1px 0;text-decoration:none}.ui-dialog-titlebar.ui-multiselect-header{padding-left:20px;padding-right:20px}.ui-dialog-titlebar.ui-multiselect-header ul{padding-left:0;width:100%}.ui-dialog-titlebar.ui-multiselect-header a{color:#212934;font-weight:normal}.ui-multiselect,.ui-multiselect-menu,.ui-multiselect-header{background-color:#f8f9fa}button.ui-multiselect{padding-right:10px !important}button.ui-multiselect .fas{float:right;padding-left:10px}.dataTables_paginate{color:#404b5a}.dataTables_paginate a.paginate_button{display:inline-flex;justify-content:center;align-items:center;padding:0 5px;min-width:20px;height:20px;border-radius:3px}.dataTables_paginate a.paginate_button:hover{background-color:#f8f9fa}.dataTables_paginate a.paginate_button.disabled{color:#929fb1;background-color:transparent;cursor:default}.dataTables_paginate a.paginate_button.current{color:#212934;background-color:#e1e7ec;box-shadow:inset 0px 1px 0px rgba(0, 0, 0, 0.15)}.dataTables_length select{}.dataTables_length select[aria-controls]{display:inline-flex;width:unset;min-width:50px;height:20px;padding:0 4px}.dataTables_scrollHead{}.dataTables_scrollHead thead tr th{cursor:pointer}.dataTables_scrollHead thead tr th.sorting::after{position:absolute;right:calc((12px - 8px) / 2);content:"";opacity:0.3;line-height:inherit}.dataTables_scrollHead thead tr th.sorting_asc:after{content:"";opacity:1}.dataTables_scrollHead thead tr th.sorting_desc:after{content:"";opacity:1}.dataTables_scrollHeadInner{border-bottom:1px solid #ccd4db}.dataTable th,.dataTable td{position:relative;padding:10px 12px}.dataTable tr:nth-child(odd){background-color:white}.dataTable tr:nth-child(even){background-color:#f2f2f2}.dataTable tr.ibo-is-red{background-color:#fce8e8}.dataTable tr.ibo-is-danger{background-color:#fed7d7}.dataTable tr.ibo-is-alert{background-color:#fed7d7}.dataTable tr.ibo-is-orange{background-color:floralwhite}.dataTable tr.ibo-is-warning{background-color:#feebc8}.dataTable tr.ibo-is-blue{background-color:#bee3f8}.dataTable tr.ibo-is-info{background-color:#bee3f8}.dataTable tr.ibo-is-green{background-color:#dcedc8}.dataTable tr.ibo-is-success{background-color:#c5e1a5}.dataTable tr.ibo-is-red td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#feb2b2}.dataTable tr.ibo-is-danger td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#fc8181}.dataTable tr.ibo-is-alert td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#fc8181}.dataTable tr.ibo-is-orange td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#fbd38d}.dataTable tr.ibo-is-warning td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#f6ae55}.dataTable tr.ibo-is-blue td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#63b4ed}.dataTable tr.ibo-is-info td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#63b4ed}.dataTable tr.ibo-is-green td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#aed581}.dataTable tr.ibo-is-success td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#aed581}.treeview,.treeview ul{padding:0;margin:0;list-style:none}.treeview div.hitarea{height:15px;width:15px;margin-left:-15px;float:left;cursor:pointer}.treeview li{margin:0;padding:3px 0 3px 16px}.treeview a.selected{background-color:#f8f9fa}#treecontrol{margin:1em 0}.treeview .hover{color:#dd6c20;cursor:pointer}.treeview li{background:url("..//images/tv-item.gif") 0 0 no-repeat}.treeview .collapsable{background-image:url("..//images/tv-collapsable.gif")}.treeview .expandable{background-image:url("..//images/tv-expandable.gif")}.treeview .last{background-image:url("..//images/tv-item-last.gif")}.treeview .lastCollapsable{background-image:url("..//images/tv-collapsable-last.gif")}.treeview .lastExpandable{background-image:url("..//images/tv-expandable-last.gif")}.filetree li{padding:3px 0 1px 16px}.filetree span.folder,.filetree span.file{padding-left:16px;display:block;height:15px}.filetree span.folder{background:url("..//images/tv-folder.gif") 0 0 no-repeat}.filetree span.file{background:url("..//images/tv-file.gif") 0 0 no-repeat}.blockUI.blockOverlay{background-color:#f2f2f2}.blockUI.blockMsg{font-size:6em;text-align:center;color:#6e7a8a;border:none;background-color:transparent}.mfp-bg{z-index:1100}.mfp-wrap{z-index:1101}.selectize-dropdown,.selectize-input,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active,.selectize-input input,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active input{color:#212934}.selectize-control.single .selectize-input,.selectize-control.single .ibo-quick-create--input.selectize-control.single .selectize-input.input-active,.ibo-quick-create--input.selectize-control.single .selectize-control.single .selectize-input.input-active{box-shadow:unset;background-color:white;background-image:unset;background-repeat:unset}.selectize-input,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active,.selectize-control.single .selectize-input.input-active,.selectize-control.single .ibo-quick-create--input.selectize-control.single .selectize-input.input-active,.ibo-quick-create--input.selectize-control.single .selectize-control.single .selectize-input.input-active{background:unset;background-color:white;cursor:text;display:inline-flex}.selectize-control.single .selectize-input.dropdown-active:after,.selectize-control.single .ibo-quick-create--input.selectize-control.single .dropdown-active.selectize-input.input-active:after,.ibo-quick-create--input.selectize-control.single .selectize-control.single .dropdown-active.selectize-input.input-active:after{margin-top:unset;border-width:unset;border-color:unset}.selectize-control.single .selectize-input:after,.selectize-control.single .ibo-quick-create--input.selectize-control.single .selectize-input.input-active:after,.ibo-quick-create--input.selectize-control.single .selectize-control.single .selectize-input.input-active:after,.selectize-control.single .selectize-input:not(.no-arrow):after,.selectize-control.single .ibo-quick-create--input.selectize-control.single .selectize-input.input-active:not(.no-arrow):after,.ibo-quick-create--input.selectize-control.single .selectize-control.single .selectize-input.input-active:not(.no-arrow):after{content:unset}.selectize-input::after,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active::after{content:unset}.selectize-input>*,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active>*{display:inline-flex}.selectize-control.single .selectize-input,.selectize-control.single .ibo-quick-create--input.selectize-control.single .selectize-input.input-active,.ibo-quick-create--input.selectize-control.single .selectize-control.single .selectize-input.input-active,.selectize-dropdown.single{border-color:#aebecd}.selectize-dropdown{background-color:white;color:#212934}.selectize-dropdown .selected,.selectize-dropdown .active,.selectize-dropdown .active:not(.selected){background:#ebf8ff;color:#212934}.selectize-dropdown [data-selectable],.selectize-dropdown .optgroup-header{padding:5px 8px}.selectize-dropdown .option{opacity:1}.selectize-add-option{display:inline-flex;justify-content:center;align-items:flex-end;position:absolute;right:0;padding-bottom:10px;height:100%;width:24px;z-index:1;color:#212934}.selectize-input .attribute-set-item>*,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item>*{display:inline}.selectize-input .attribute-set-item.item-add::before,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-add::before,.selectize-input .attribute-set-item.item-remove::before,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-remove::before{margin-right:4px}.selectize-input .attribute-set-item.item-add,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-add{background-color:#dcedc8 !important}.selectize-input .attribute-set-item.item-add::before,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-add::before{color:#33691e;content:""}.selectize-input .attribute-set-item.item-remove,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-remove{background-color:#fce8e8 !important}.selectize-input .attribute-set-item.item-remove::before,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-remove::before{color:#9b2c2c;content:""}.selectize-input .attribute-set-item.item-ignore-partial,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-ignore-partial{background-color:#e1e7ec !important}.selectize-input.selectize-input-error,.ibo-quick-create--input.selectize-control.single .selectize-input-error.selectize-input.input-active{border:1px solid #e53e3e}.toastify.on{opacity:1}.toast-close{background:transparent;border:0;color:inherit;cursor:pointer;font-family:inherit;padding:0;margin-left:8px}.toastify-right{right:16px}.toastify-left{left:16px}.toastify-top{top:-150px}.toastify-bottom{bottom:-150px}.toastify-rounded{border-radius:25px}.toastify-avatar{width:1.5em;height:1.5em;margin:-7px 5px;border-radius:2px}.toastify-center{margin-left:auto;margin-right:auto;left:0;right:0;max-width:fit-content;max-width:-moz-fit-content}@media only screen and (max-width:360px){.toastify-right,.toastify-left{margin-left:auto;margin-right:auto;left:0;right:0;max-width:fit-content}}:root{--ibo-scrollbar--scrollbar-width: 8px;--ibo-scrollbar--scrollbar-height: 8px;--ibo-scrollbar--scrollbar-track-background-color: rgba(255, 255, 255, 0);--ibo-scrollbar--scrollbar-track-border-radius: 5px;--ibo-scrollbar--scrollbar-thumb-background-color: #d5dde5;--ibo-scrollbar--scrollbar-thumb-border: none;--ibo-scrollbar--scrollbar-thumb-border-radius: 5px}*,*::before,*::after{box-sizing:border-box}*{scrollbar-width:thin;scrollbar-color:var(--ibo-scrollbar--scrollbar-thumb-background-color) var(--ibo-scrollbar--scrollbar-track-background-color)}*::-webkit-scrollbar{width:var(--ibo-scrollbar--scrollbar-width);height:var(--ibo-scrollbar--scrollbar-height)}*::-webkit-scrollbar-track{background-color:var(--ibo-scrollbar--scrollbar-track-background-color);border-radius:var(--ibo-scrollbar--scrollbar-track-border-radius)}* ::-webkit-scrollbar-thumb{background-color:var(--ibo-scrollbar--scrollbar-thumb-background-color);border:var(--ibo-scrollbar--scrollbar-thumb-border);border-radius:var(--ibo-scrollbar--scrollbar-thumb-border-radius)}html{font-size:12px}a{color:var(--ibo-hyperlink-color);text-decoration:var(--ibo-hyperlink-text-decoration)}a:hover,a:active,a:visited{text-decoration:var(--ibo-hyperlink-text-decoration)}a:hover{color:var(--ibo-hyperlink-color--on-hover);text-decoration:var(--ibo-hyperlink-text-decoration--on-hover)}a:active{color:var(--ibo-hyperlink-color--on-active);text-decoration:var(--ibo-hyperlink-text-decoration--on-active)}.ibo-alert.ibo-is-primary{background-color:#feebc8;color:#7b341e}.ibo-alert.ibo-is-primary a{color:#7b341e}.ibo-alert.ibo-is-primary::before{background-color:#c05621}.ibo-alert.ibo-is-secondary,.ui-dialog .ibo-alert.ui-button,.ibo-alert.ui-datepicker-current,.ibo-alert.ui-datepicker-close{background-color:#e1e7ec;color:#212934}.ibo-alert.ibo-is-secondary a,.ui-dialog .ibo-alert.ui-button a,.ibo-alert.ui-datepicker-current a,.ibo-alert.ui-datepicker-close a{color:#212934}.ibo-alert.ibo-is-secondary::before,.ui-dialog .ibo-alert.ui-button::before,.ibo-alert.ui-datepicker-current::before,.ibo-alert.ui-datepicker-close::before{background-color:#6e7a8a}.ibo-alert.ibo-is-neutral,.ui-dialog .ibo-alert.ui-button.ui-dialog-titlebar-close{background-color:#e1e7ec;color:#212934}.ibo-alert.ibo-is-neutral a,.ui-dialog .ibo-alert.ui-button.ui-dialog-titlebar-close a{color:#212934}.ibo-alert.ibo-is-neutral::before,.ui-dialog .ibo-alert.ui-button.ui-dialog-titlebar-close::before{background-color:#6e7a8a}.ibo-toast.ibo-is-information,.ibo-alert.ibo-is-information{background-color:#bee3f8;color:#2a4265}.ibo-toast.ibo-is-information a,.ibo-alert.ibo-is-information a{color:#2a4265}.ibo-toast.ibo-is-information::before,.ibo-alert.ibo-is-information::before{background-color:#2b6bb0}.ibo-toast.ibo-is-success,.ibo-alert.ibo-is-success{background-color:#dcedc8;color:#33691e}.ibo-toast.ibo-is-success a,.ibo-alert.ibo-is-success a{color:#33691e}.ibo-toast.ibo-is-success::before,.ibo-alert.ibo-is-success::before{background-color:#689f38}.ibo-alert.ibo-is-failure{background-color:#fed7d7;color:#742a2a}.ibo-alert.ibo-is-failure a{color:#742a2a}.ibo-alert.ibo-is-failure::before{background-color:#c53030}.ibo-toast.ibo-is-warning,.ibo-alert.ibo-is-warning{background-color:#feebc8;color:#7b341e}.ibo-toast.ibo-is-warning a,.ibo-alert.ibo-is-warning a{color:#7b341e}.ibo-toast.ibo-is-warning::before,.ibo-alert.ibo-is-warning::before{background-color:#c05621}.ibo-toast.ibo-is-error,.ibo-alert.ibo-is-danger{background-color:#fed7d7;color:#742a2a}.ibo-toast.ibo-is-error a,.ibo-alert.ibo-is-danger a{color:#742a2a}.ibo-toast.ibo-is-error::before,.ibo-alert.ibo-is-danger::before{background-color:#c53030}.ibo-alert.ibo-is-grey{background-color:#e1e7ec;color:#212934}.ibo-alert.ibo-is-grey a{color:#212934}.ibo-alert.ibo-is-grey::before{background-color:#6e7a8a}.ibo-alert.ibo-is-blue-grey{background-color:#b0bec5;color:#263238}.ibo-alert.ibo-is-blue-grey a{color:#263238}.ibo-alert.ibo-is-blue-grey::before{background-color:#455a64}.ibo-alert.ibo-is-blue{background-color:#bee3f8;color:#2a4265}.ibo-alert.ibo-is-blue a{color:#2a4265}.ibo-alert.ibo-is-blue::before{background-color:#2b6bb0}.ibo-alert.ibo-is-cyan{background-color:#c9eef2;color:#006164}.ibo-alert.ibo-is-cyan a{color:#006164}.ibo-alert.ibo-is-cyan::before{background-color:#2b6bb0}.ibo-alert.ibo-is-green{background-color:#dcedc8;color:#33691e}.ibo-alert.ibo-is-green a{color:#33691e}.ibo-alert.ibo-is-green::before{background-color:#689f38}.ibo-alert.ibo-is-orange{background-color:#feebc8;color:#7b341e}.ibo-alert.ibo-is-orange a{color:#7b341e}.ibo-alert.ibo-is-orange::before{background-color:#c05621}.ibo-alert.ibo-is-red{background-color:#fed7d7;color:#742a2a}.ibo-alert.ibo-is-red a{color:#742a2a}.ibo-alert.ibo-is-red::before{background-color:#c53030}.ibo-alert.ibo-is-pink{background-color:#fed7e2;color:#702459}.ibo-alert.ibo-is-pink a{color:#702459}.ibo-alert.ibo-is-pink::before{background-color:#b83280}.ibo-alert{position:relative;padding:18px 20px;min-height:30px;border-radius:3px;overflow:hidden}.ibo-alert::before{display:block;position:absolute;top:0;left:0;content:"";width:4px;height:100%}.ibo-alert .ibo-alert--title{cursor:pointer}.ibo-alert.ibo-is-opened .ibo-alert--minimize-button,.ibo-alert.ibo-input-select-icon--menu .ibo-alert--minimize-button{display:block}.ibo-alert.ibo-is-opened .ibo-alert--maximize-button,.ibo-alert.ibo-input-select-icon--menu .ibo-alert--maximize-button{display:none}.ibo-alert:not(.ibo-is-opened){padding:5px 20px}.ibo-alert:not(.ibo-is-opened) .ibo-alert--title{padding-bottom:0}.ibo-alert:not(.ibo-is-opened) .ibo-alert--minimize-button{display:none}.ibo-alert:not(.ibo-is-opened) .ibo-alert--maximize-button{display:block}.ibo-alert:not(.ibo-is-opened) .ibo-alert--body{display:none}.ibo-alert--title+.ibo-alert--body{margin-top:4px}.ibo-alert--action-button{position:absolute;cursor:pointer;top:5px}.ibo-alert--action-button:hover i{opacity:0.8}.ibo-alert--action-button.ibo-alert--maximize-button,.ibo-alert--action-button.ibo-alert--minimize-button{right:30px}.ibo-alert--action-button.ibo-alert--close-button{right:10px}.ibo-button.ibo-is-regular.ibo-is-neutral,.ui-dialog .ibo-is-regular.ibo-is-neutral.ui-button,.ui-dialog .ibo-is-neutral.ui-button,.ui-dialog .ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-current,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-close,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ibo-is-regular.ibo-is-neutral.ui-datepicker-current,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-neutral.ui-datepicker-current,.ibo-is-neutral.ui-datepicker-current.ui-datepicker-close,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ibo-is-regular.ibo-is-neutral.ui-datepicker-close,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ibo-is-neutral.ui-datepicker-close.ui-datepicker-current,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-neutral.ui-datepicker-close,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-button.ibo-is-neutral.ui-button,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close,.ibo-button.ibo-is-neutral.ui-datepicker-current,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-button.ibo-is-neutral.ui-datepicker-close,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-regular.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:#f8f9fa;color:#212934;box-shadow:0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-neutral:hover,.ui-dialog .ibo-is-regular.ibo-is-neutral.ui-button:hover,.ui-dialog .ibo-is-neutral.ui-button:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-close:hover,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-neutral.ui-datepicker-current:hover,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button:hover,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-neutral.ui-datepicker-current:hover,.ibo-is-neutral.ui-datepicker-current.ui-datepicker-close:hover,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-neutral.ui-datepicker-close:hover,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button:hover,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-neutral.ui-datepicker-close.ui-datepicker-current:hover,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-neutral.ui-datepicker-close:hover,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-button.ibo-is-neutral.ui-button:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:hover,.ibo-button.ibo-is-neutral.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-button.ibo-is-neutral.ui-datepicker-close:hover,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-regular.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close:hover,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#e1e7ec;color:#212934;box-shadow:0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-neutral:active,.ui-dialog .ibo-is-regular.ibo-is-neutral.ui-button:active,.ui-dialog .ibo-is-neutral.ui-button:active,.ui-dialog .ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-current:active,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-close:active,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ibo-is-regular.ibo-is-neutral.ui-datepicker-current:active,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button:active,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-neutral.ui-datepicker-current:active,.ibo-is-neutral.ui-datepicker-current.ui-datepicker-close:active,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ibo-is-regular.ibo-is-neutral.ui-datepicker-close:active,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button:active,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ibo-is-neutral.ui-datepicker-close.ui-datepicker-current:active,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-neutral.ui-datepicker-close:active,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-button.ibo-is-neutral.ui-button:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:active,.ibo-button.ibo-is-neutral.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-button.ibo-is-neutral.ui-datepicker-close:active,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-regular.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close:active,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#e1e7ec;color:#212934;box-shadow:inset 0px 2px 0px #d5dde5 , 0px 2px 0px #e1e7ec}.ibo-button.ibo-is-regular.ibo-is-neutral:disabled,.ui-dialog .ibo-is-regular.ibo-is-neutral.ui-button:disabled,.ui-dialog .ibo-is-neutral.ui-button:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-close:disabled,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-neutral.ui-datepicker-current:disabled,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button:disabled,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-neutral.ui-datepicker-current:disabled,.ibo-is-neutral.ui-datepicker-current.ui-datepicker-close:disabled,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-neutral.ui-datepicker-close:disabled,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button:disabled,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-neutral.ui-datepicker-close.ui-datepicker-current:disabled,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-neutral.ui-datepicker-close:disabled,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ibo-is-neutral.ui-button:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:disabled,.ibo-button.ibo-is-neutral.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-button.ibo-is-neutral.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-regular.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close:disabled,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-primary,.ui-dialog .ibo-is-regular.ibo-is-primary.ui-button,.ui-dialog .ibo-is-primary.ui-button,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-primary.ui-datepicker-current,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button,.ibo-is-primary.ui-datepicker-current,.ibo-is-primary.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-primary.ui-datepicker-close,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button,.ibo-is-primary.ui-datepicker-close.ui-datepicker-current,.ibo-is-primary.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-primary.ui-button,.ibo-button.ibo-is-primary.ui-datepicker-current,.ibo-button.ibo-is-primary.ui-datepicker-close{background-color:#00838f;color:white;box-shadow:0px 2px 0px #003636}.ibo-button.ibo-is-regular.ibo-is-primary:hover,.ui-dialog .ibo-is-regular.ibo-is-primary.ui-button:hover,.ui-dialog .ibo-is-primary.ui-button:hover,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-primary.ui-datepicker-current:hover,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button:hover,.ibo-is-primary.ui-datepicker-current:hover,.ibo-is-primary.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-primary.ui-datepicker-close:hover,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button:hover,.ibo-is-primary.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-primary.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-primary.ui-button:hover,.ibo-button.ibo-is-primary.ui-datepicker-current:hover,.ibo-button.ibo-is-primary.ui-datepicker-close:hover{background-color:#006164;color:white;box-shadow:0px 2px 0px #003636}.ibo-button.ibo-is-regular.ibo-is-primary:active,.ui-dialog .ibo-is-regular.ibo-is-primary.ui-button:active,.ui-dialog .ibo-is-primary.ui-button:active,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-primary.ui-datepicker-current:active,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button:active,.ibo-is-primary.ui-datepicker-current:active,.ibo-is-primary.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-primary.ui-datepicker-close:active,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button:active,.ibo-is-primary.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-primary.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-primary.ui-button:active,.ibo-button.ibo-is-primary.ui-datepicker-current:active,.ibo-button.ibo-is-primary.ui-datepicker-close:active{background-color:#006164;color:white;box-shadow:inset 0px 2px 0px #003636 , 0px 2px 0px #006164}.ibo-button.ibo-is-regular.ibo-is-primary:disabled,.ui-dialog .ibo-is-regular.ibo-is-primary.ui-button:disabled,.ui-dialog .ibo-is-primary.ui-button:disabled,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-primary.ui-datepicker-current:disabled,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button:disabled,.ibo-is-primary.ui-datepicker-current:disabled,.ibo-is-primary.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-primary.ui-datepicker-close:disabled,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button:disabled,.ibo-is-primary.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-primary.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-primary.ui-button:disabled,.ibo-button.ibo-is-primary.ui-datepicker-current:disabled,.ibo-button.ibo-is-primary.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-secondary,.ui-dialog .ibo-is-regular.ibo-is-secondary.ui-button,.ui-dialog .ibo-is-secondary.ui-button,.ui-dialog .ui-button,.ui-dialog .ui-button.ui-datepicker-current,.ui-dialog .ui-button.ui-datepicker-close,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-current,.ui-dialog .ui-button.ui-datepicker-current.ui-datepicker-close,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-close,.ui-dialog .ui-button.ui-datepicker-close.ui-datepicker-current,.ui-dialog .ibo-is-regular.ui-button,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-secondary.ui-datepicker-current,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button,.ui-dialog .ui-datepicker-current.ui-button,.ui-dialog .ui-datepicker-current.ui-button.ui-datepicker-close,.ibo-is-secondary.ui-datepicker-current,.ui-datepicker-current,.ui-datepicker-current.ui-datepicker-close,.ibo-is-secondary.ui-datepicker-current.ui-datepicker-close,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button,.ibo-is-regular.ui-datepicker-current,.ibo-is-regular.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-secondary.ui-datepicker-close,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button,.ui-dialog .ui-datepicker-close.ui-button,.ui-dialog .ui-datepicker-close.ui-button.ui-datepicker-current,.ibo-is-secondary.ui-datepicker-close.ui-datepicker-current,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button,.ui-datepicker-close.ui-datepicker-current,.ibo-is-secondary.ui-datepicker-close,.ui-datepicker-close,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button,.ibo-is-regular.ui-datepicker-close.ui-datepicker-current,.ibo-is-regular.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-secondary.ui-button,.ui-dialog .ibo-button.ui-button,.ui-dialog .ibo-button.ui-button.ui-datepicker-current,.ui-dialog .ibo-button.ui-button.ui-datepicker-close,.ibo-button.ibo-is-secondary.ui-datepicker-current,.ui-dialog .ibo-button.ui-datepicker-current.ui-button,.ibo-button.ui-datepicker-current,.ibo-button.ui-datepicker-current.ui-datepicker-close,.ibo-button.ibo-is-secondary.ui-datepicker-close,.ui-dialog .ibo-button.ui-datepicker-close.ui-button,.ibo-button.ui-datepicker-close.ui-datepicker-current,.ibo-button.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-regular.ui-button,.ibo-button.ibo-is-regular.ui-datepicker-current,.ibo-button.ibo-is-regular.ui-datepicker-close{background-color:#f8f9fa;color:#212934;box-shadow:0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-secondary:hover,.ui-dialog .ibo-is-regular.ibo-is-secondary.ui-button:hover,.ui-dialog .ibo-is-secondary.ui-button:hover,.ui-dialog .ui-button:hover,.ui-dialog .ui-button.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-datepicker-close:hover,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-datepicker-current.ui-datepicker-close:hover,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-close:hover,.ui-dialog .ui-button.ui-datepicker-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-regular.ui-button:hover,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-secondary.ui-datepicker-current:hover,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button:hover,.ui-dialog .ui-datepicker-current.ui-button:hover,.ui-dialog .ui-datepicker-current.ui-button.ui-datepicker-close:hover,.ibo-is-secondary.ui-datepicker-current:hover,.ui-datepicker-current:hover,.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-secondary.ui-datepicker-current.ui-datepicker-close:hover,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button:hover,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button:hover,.ibo-is-regular.ui-datepicker-current:hover,.ibo-is-regular.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-secondary.ui-datepicker-close:hover,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button:hover,.ui-dialog .ui-datepicker-close.ui-button:hover,.ui-dialog .ui-datepicker-close.ui-button.ui-datepicker-current:hover,.ibo-is-secondary.ui-datepicker-close.ui-datepicker-current:hover,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button:hover,.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-secondary.ui-datepicker-close:hover,.ui-datepicker-close:hover,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button:hover,.ibo-is-regular.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-regular.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-secondary.ui-button:hover,.ui-dialog .ibo-button.ui-button:hover,.ui-dialog .ibo-button.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-button.ui-datepicker-close:hover,.ibo-button.ibo-is-secondary.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-datepicker-current.ui-button:hover,.ibo-button.ui-datepicker-current:hover,.ibo-button.ui-datepicker-current.ui-datepicker-close:hover,.ibo-button.ibo-is-secondary.ui-datepicker-close:hover,.ui-dialog .ibo-button.ui-datepicker-close.ui-button:hover,.ibo-button.ui-datepicker-close.ui-datepicker-current:hover,.ibo-button.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-regular.ui-button:hover,.ibo-button.ibo-is-regular.ui-datepicker-current:hover,.ibo-button.ibo-is-regular.ui-datepicker-close:hover{background-color:#e1e7ec;color:#212934;box-shadow:0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-secondary:active,.ui-dialog .ibo-is-regular.ibo-is-secondary.ui-button:active,.ui-dialog .ibo-is-secondary.ui-button:active,.ui-dialog .ui-button:active,.ui-dialog .ui-button.ui-datepicker-current:active,.ui-dialog .ui-button.ui-datepicker-close:active,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-current:active,.ui-dialog .ui-button.ui-datepicker-current.ui-datepicker-close:active,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-close:active,.ui-dialog .ui-button.ui-datepicker-close.ui-datepicker-current:active,.ui-dialog .ibo-is-regular.ui-button:active,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-secondary.ui-datepicker-current:active,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button:active,.ui-dialog .ui-datepicker-current.ui-button:active,.ui-dialog .ui-datepicker-current.ui-button.ui-datepicker-close:active,.ibo-is-secondary.ui-datepicker-current:active,.ui-datepicker-current:active,.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-secondary.ui-datepicker-current.ui-datepicker-close:active,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button:active,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button:active,.ibo-is-regular.ui-datepicker-current:active,.ibo-is-regular.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-secondary.ui-datepicker-close:active,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button:active,.ui-dialog .ui-datepicker-close.ui-button:active,.ui-dialog .ui-datepicker-close.ui-button.ui-datepicker-current:active,.ibo-is-secondary.ui-datepicker-close.ui-datepicker-current:active,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button:active,.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-secondary.ui-datepicker-close:active,.ui-datepicker-close:active,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button:active,.ibo-is-regular.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-regular.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-secondary.ui-button:active,.ui-dialog .ibo-button.ui-button:active,.ui-dialog .ibo-button.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-button.ui-datepicker-close:active,.ibo-button.ibo-is-secondary.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-datepicker-current.ui-button:active,.ibo-button.ui-datepicker-current:active,.ibo-button.ui-datepicker-current.ui-datepicker-close:active,.ibo-button.ibo-is-secondary.ui-datepicker-close:active,.ui-dialog .ibo-button.ui-datepicker-close.ui-button:active,.ibo-button.ui-datepicker-close.ui-datepicker-current:active,.ibo-button.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-regular.ui-button:active,.ibo-button.ibo-is-regular.ui-datepicker-current:active,.ibo-button.ibo-is-regular.ui-datepicker-close:active{background-color:#e1e7ec;color:#212934;box-shadow:inset 0px 2px 0px #d5dde5 , 0px 2px 0px #e1e7ec}.ibo-button.ibo-is-regular.ibo-is-secondary:disabled,.ui-dialog .ibo-is-regular.ibo-is-secondary.ui-button:disabled,.ui-dialog .ibo-is-secondary.ui-button:disabled,.ui-dialog .ui-button:disabled,.ui-dialog .ui-button.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-datepicker-close:disabled,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-datepicker-current.ui-datepicker-close:disabled,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-close:disabled,.ui-dialog .ui-button.ui-datepicker-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-regular.ui-button:disabled,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-secondary.ui-datepicker-current:disabled,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button:disabled,.ui-dialog .ui-datepicker-current.ui-button:disabled,.ui-dialog .ui-datepicker-current.ui-button.ui-datepicker-close:disabled,.ibo-is-secondary.ui-datepicker-current:disabled,.ui-datepicker-current:disabled,.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-secondary.ui-datepicker-current.ui-datepicker-close:disabled,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button:disabled,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button:disabled,.ibo-is-regular.ui-datepicker-current:disabled,.ibo-is-regular.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-secondary.ui-datepicker-close:disabled,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button:disabled,.ui-dialog .ui-datepicker-close.ui-button:disabled,.ui-dialog .ui-datepicker-close.ui-button.ui-datepicker-current:disabled,.ibo-is-secondary.ui-datepicker-close.ui-datepicker-current:disabled,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button:disabled,.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-secondary.ui-datepicker-close:disabled,.ui-datepicker-close:disabled,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button:disabled,.ibo-is-regular.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-regular.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-secondary.ui-button:disabled,.ui-dialog .ibo-button.ui-button:disabled,.ui-dialog .ibo-button.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-button.ui-datepicker-close:disabled,.ibo-button.ibo-is-secondary.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-datepicker-current.ui-button:disabled,.ibo-button.ui-datepicker-current:disabled,.ibo-button.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-button.ibo-is-secondary.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ui-datepicker-close.ui-button:disabled,.ibo-button.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-button.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-regular.ui-button:disabled,.ibo-button.ibo-is-regular.ui-datepicker-current:disabled,.ibo-button.ibo-is-regular.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-danger,.ui-dialog .ibo-is-regular.ibo-is-danger.ui-button,.ui-dialog .ibo-is-danger.ui-button,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-danger.ui-datepicker-current,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button,.ibo-is-danger.ui-datepicker-current,.ibo-is-danger.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-danger.ui-datepicker-close,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button,.ibo-is-danger.ui-datepicker-close.ui-datepicker-current,.ibo-is-danger.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-danger.ui-button,.ibo-button.ibo-is-danger.ui-datepicker-current,.ibo-button.ibo-is-danger.ui-datepicker-close{background-color:#c53030;color:white;box-shadow:0px 2px 0px #742a2a}.ibo-button.ibo-is-regular.ibo-is-danger:hover,.ui-dialog .ibo-is-regular.ibo-is-danger.ui-button:hover,.ui-dialog .ibo-is-danger.ui-button:hover,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-danger.ui-datepicker-current:hover,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button:hover,.ibo-is-danger.ui-datepicker-current:hover,.ibo-is-danger.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-danger.ui-datepicker-close:hover,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button:hover,.ibo-is-danger.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-danger.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-danger.ui-button:hover,.ibo-button.ibo-is-danger.ui-datepicker-current:hover,.ibo-button.ibo-is-danger.ui-datepicker-close:hover{background-color:#9b2c2c;color:white;box-shadow:0px 2px 0px #742a2a}.ibo-button.ibo-is-regular.ibo-is-danger:active,.ui-dialog .ibo-is-regular.ibo-is-danger.ui-button:active,.ui-dialog .ibo-is-danger.ui-button:active,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-danger.ui-datepicker-current:active,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button:active,.ibo-is-danger.ui-datepicker-current:active,.ibo-is-danger.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-danger.ui-datepicker-close:active,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button:active,.ibo-is-danger.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-danger.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-danger.ui-button:active,.ibo-button.ibo-is-danger.ui-datepicker-current:active,.ibo-button.ibo-is-danger.ui-datepicker-close:active{background-color:#9b2c2c;color:white;box-shadow:inset 0px 2px 0px #742a2a , 0px 2px 0px #9b2c2c}.ibo-button.ibo-is-regular.ibo-is-danger:disabled,.ui-dialog .ibo-is-regular.ibo-is-danger.ui-button:disabled,.ui-dialog .ibo-is-danger.ui-button:disabled,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-danger.ui-datepicker-current:disabled,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button:disabled,.ibo-is-danger.ui-datepicker-current:disabled,.ibo-is-danger.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-danger.ui-datepicker-close:disabled,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button:disabled,.ibo-is-danger.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-danger.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-danger.ui-button:disabled,.ibo-button.ibo-is-danger.ui-datepicker-current:disabled,.ibo-button.ibo-is-danger.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-success,.ui-dialog .ibo-is-regular.ibo-is-success.ui-button,.ui-dialog .ibo-is-success.ui-button,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-success.ui-datepicker-current,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button,.ibo-is-success.ui-datepicker-current,.ibo-is-success.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-success.ui-datepicker-close,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button,.ibo-is-success.ui-datepicker-close.ui-datepicker-current,.ibo-is-success.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-success.ui-button,.ibo-button.ibo-is-success.ui-datepicker-current,.ibo-button.ibo-is-success.ui-datepicker-close{background-color:#558b2f;color:white;box-shadow:0px 2px 0px #235816}.ibo-button.ibo-is-regular.ibo-is-success:hover,.ui-dialog .ibo-is-regular.ibo-is-success.ui-button:hover,.ui-dialog .ibo-is-success.ui-button:hover,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-success.ui-datepicker-current:hover,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button:hover,.ibo-is-success.ui-datepicker-current:hover,.ibo-is-success.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-success.ui-datepicker-close:hover,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button:hover,.ibo-is-success.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-success.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-success.ui-button:hover,.ibo-button.ibo-is-success.ui-datepicker-current:hover,.ibo-button.ibo-is-success.ui-datepicker-close:hover{background-color:#33691e;color:white;box-shadow:0px 2px 0px #235816}.ibo-button.ibo-is-regular.ibo-is-success:active,.ui-dialog .ibo-is-regular.ibo-is-success.ui-button:active,.ui-dialog .ibo-is-success.ui-button:active,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-success.ui-datepicker-current:active,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button:active,.ibo-is-success.ui-datepicker-current:active,.ibo-is-success.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-success.ui-datepicker-close:active,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button:active,.ibo-is-success.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-success.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-success.ui-button:active,.ibo-button.ibo-is-success.ui-datepicker-current:active,.ibo-button.ibo-is-success.ui-datepicker-close:active{background-color:#33691e;color:white;box-shadow:inset 0px 2px 0px #235816 , 0px 2px 0px #33691e}.ibo-button.ibo-is-regular.ibo-is-success:disabled,.ui-dialog .ibo-is-regular.ibo-is-success.ui-button:disabled,.ui-dialog .ibo-is-success.ui-button:disabled,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-success.ui-datepicker-current:disabled,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button:disabled,.ibo-is-success.ui-datepicker-current:disabled,.ibo-is-success.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-success.ui-datepicker-close:disabled,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button:disabled,.ibo-is-success.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-success.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-success.ui-button:disabled,.ibo-button.ibo-is-success.ui-datepicker-current:disabled,.ibo-button.ibo-is-success.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-red,.ui-dialog .ibo-is-regular.ibo-is-red.ui-button,.ui-dialog .ibo-is-red.ui-button,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-red.ui-datepicker-current,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button,.ibo-is-red.ui-datepicker-current,.ibo-is-red.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-red.ui-datepicker-close,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button,.ibo-is-red.ui-datepicker-close.ui-datepicker-current,.ibo-is-red.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-red.ui-button,.ibo-button.ibo-is-red.ui-datepicker-current,.ibo-button.ibo-is-red.ui-datepicker-close{background-color:#c53030;color:white;box-shadow:0px 2px 0px #742a2a}.ibo-button.ibo-is-regular.ibo-is-red:hover,.ui-dialog .ibo-is-regular.ibo-is-red.ui-button:hover,.ui-dialog .ibo-is-red.ui-button:hover,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-red.ui-datepicker-current:hover,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button:hover,.ibo-is-red.ui-datepicker-current:hover,.ibo-is-red.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-red.ui-datepicker-close:hover,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button:hover,.ibo-is-red.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-red.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-red.ui-button:hover,.ibo-button.ibo-is-red.ui-datepicker-current:hover,.ibo-button.ibo-is-red.ui-datepicker-close:hover{background-color:#9b2c2c;color:white;box-shadow:0px 2px 0px #742a2a}.ibo-button.ibo-is-regular.ibo-is-red:active,.ui-dialog .ibo-is-regular.ibo-is-red.ui-button:active,.ui-dialog .ibo-is-red.ui-button:active,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-red.ui-datepicker-current:active,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button:active,.ibo-is-red.ui-datepicker-current:active,.ibo-is-red.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-red.ui-datepicker-close:active,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button:active,.ibo-is-red.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-red.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-red.ui-button:active,.ibo-button.ibo-is-red.ui-datepicker-current:active,.ibo-button.ibo-is-red.ui-datepicker-close:active{background-color:#9b2c2c;color:white;box-shadow:inset 0px 2px 0px #742a2a , 0px 2px 0px #9b2c2c}.ibo-button.ibo-is-regular.ibo-is-red:disabled,.ui-dialog .ibo-is-regular.ibo-is-red.ui-button:disabled,.ui-dialog .ibo-is-red.ui-button:disabled,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-red.ui-datepicker-current:disabled,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button:disabled,.ibo-is-red.ui-datepicker-current:disabled,.ibo-is-red.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-red.ui-datepicker-close:disabled,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button:disabled,.ibo-is-red.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-red.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-red.ui-button:disabled,.ibo-button.ibo-is-red.ui-datepicker-current:disabled,.ibo-button.ibo-is-red.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-green,.ui-dialog .ibo-is-regular.ibo-is-green.ui-button,.ui-dialog .ibo-is-green.ui-button,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-green.ui-datepicker-current,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button,.ibo-is-green.ui-datepicker-current,.ibo-is-green.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-green.ui-datepicker-close,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button,.ibo-is-green.ui-datepicker-close.ui-datepicker-current,.ibo-is-green.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-green.ui-button,.ibo-button.ibo-is-green.ui-datepicker-current,.ibo-button.ibo-is-green.ui-datepicker-close{background-color:#558b2f;color:white;box-shadow:0px 2px 0px #235816}.ibo-button.ibo-is-regular.ibo-is-green:hover,.ui-dialog .ibo-is-regular.ibo-is-green.ui-button:hover,.ui-dialog .ibo-is-green.ui-button:hover,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-green.ui-datepicker-current:hover,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button:hover,.ibo-is-green.ui-datepicker-current:hover,.ibo-is-green.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-green.ui-datepicker-close:hover,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button:hover,.ibo-is-green.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-green.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-green.ui-button:hover,.ibo-button.ibo-is-green.ui-datepicker-current:hover,.ibo-button.ibo-is-green.ui-datepicker-close:hover{background-color:#33691e;color:white;box-shadow:0px 2px 0px #235816}.ibo-button.ibo-is-regular.ibo-is-green:active,.ui-dialog .ibo-is-regular.ibo-is-green.ui-button:active,.ui-dialog .ibo-is-green.ui-button:active,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-green.ui-datepicker-current:active,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button:active,.ibo-is-green.ui-datepicker-current:active,.ibo-is-green.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-green.ui-datepicker-close:active,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button:active,.ibo-is-green.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-green.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-green.ui-button:active,.ibo-button.ibo-is-green.ui-datepicker-current:active,.ibo-button.ibo-is-green.ui-datepicker-close:active{background-color:#33691e;color:white;box-shadow:inset 0px 2px 0px #235816 , 0px 2px 0px #33691e}.ibo-button.ibo-is-regular.ibo-is-green:disabled,.ui-dialog .ibo-is-regular.ibo-is-green.ui-button:disabled,.ui-dialog .ibo-is-green.ui-button:disabled,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-green.ui-datepicker-current:disabled,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button:disabled,.ibo-is-green.ui-datepicker-current:disabled,.ibo-is-green.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-green.ui-datepicker-close:disabled,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button:disabled,.ibo-is-green.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-green.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-green.ui-button:disabled,.ibo-button.ibo-is-green.ui-datepicker-current:disabled,.ibo-button.ibo-is-green.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-cyan,.ui-dialog .ibo-is-regular.ibo-is-cyan.ui-button,.ui-dialog .ibo-is-cyan.ui-button,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-cyan.ui-datepicker-current,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button,.ibo-is-cyan.ui-datepicker-current,.ibo-is-cyan.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-cyan.ui-datepicker-close,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button,.ibo-is-cyan.ui-datepicker-close.ui-datepicker-current,.ibo-is-cyan.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-cyan.ui-button,.ibo-button.ibo-is-cyan.ui-datepicker-current,.ibo-button.ibo-is-cyan.ui-datepicker-close{background-color:#00838f;color:white;box-shadow:0px 2px 0px #003636}.ibo-button.ibo-is-regular.ibo-is-cyan:hover,.ui-dialog .ibo-is-regular.ibo-is-cyan.ui-button:hover,.ui-dialog .ibo-is-cyan.ui-button:hover,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-cyan.ui-datepicker-current:hover,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button:hover,.ibo-is-cyan.ui-datepicker-current:hover,.ibo-is-cyan.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-cyan.ui-datepicker-close:hover,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button:hover,.ibo-is-cyan.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-cyan.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-cyan.ui-button:hover,.ibo-button.ibo-is-cyan.ui-datepicker-current:hover,.ibo-button.ibo-is-cyan.ui-datepicker-close:hover{background-color:#006164;color:white;box-shadow:0px 2px 0px #003636}.ibo-button.ibo-is-regular.ibo-is-cyan:active,.ui-dialog .ibo-is-regular.ibo-is-cyan.ui-button:active,.ui-dialog .ibo-is-cyan.ui-button:active,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-cyan.ui-datepicker-current:active,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button:active,.ibo-is-cyan.ui-datepicker-current:active,.ibo-is-cyan.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-cyan.ui-datepicker-close:active,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button:active,.ibo-is-cyan.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-cyan.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-cyan.ui-button:active,.ibo-button.ibo-is-cyan.ui-datepicker-current:active,.ibo-button.ibo-is-cyan.ui-datepicker-close:active{background-color:#006164;color:white;box-shadow:inset 0px 2px 0px #003636 , 0px 2px 0px #006164}.ibo-button.ibo-is-regular.ibo-is-cyan:disabled,.ui-dialog .ibo-is-regular.ibo-is-cyan.ui-button:disabled,.ui-dialog .ibo-is-cyan.ui-button:disabled,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-cyan.ui-datepicker-current:disabled,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button:disabled,.ibo-is-cyan.ui-datepicker-current:disabled,.ibo-is-cyan.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-cyan.ui-datepicker-close:disabled,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button:disabled,.ibo-is-cyan.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-cyan.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-cyan.ui-button:disabled,.ibo-button.ibo-is-cyan.ui-datepicker-current:disabled,.ibo-button.ibo-is-cyan.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-alternative.ibo-is-neutral,.ui-dialog .ibo-is-alternative.ibo-is-neutral.ui-button,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-current,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-close,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-neutral.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-alternative.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#212934;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-neutral:hover,.ui-dialog .ibo-is-alternative.ibo-is-neutral.ui-button:hover,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-current:hover,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-close:hover,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-neutral.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-alternative.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#f8f9fa;color:#212934;box-shadow:0px 2px 0px #f8f9fa}.ibo-button.ibo-is-alternative.ibo-is-neutral:active,.ui-dialog .ibo-is-alternative.ibo-is-neutral.ui-button:active,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-current:active,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-close:active,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-neutral.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-alternative.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#f8f9fa;color:#212934;box-shadow:inset 0px 2px 0px #e1e7ec , 0px 2px 0px #f8f9fa}.ibo-button.ibo-is-alternative.ibo-is-neutral:disabled,.ui-dialog .ibo-is-alternative.ibo-is-neutral.ui-button:disabled,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-current:disabled,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-close:disabled,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-neutral.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-alternative.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-primary,.ui-dialog .ibo-is-alternative.ibo-is-primary.ui-button,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-primary.ui-datepicker-current,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-primary.ui-datepicker-close,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-primary.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#006164;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-primary:hover,.ui-dialog .ibo-is-alternative.ibo-is-primary.ui-button:hover,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-primary.ui-datepicker-current:hover,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-primary.ui-datepicker-close:hover,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-primary.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:white;color:#212934;box-shadow:0px 2px 0px white}.ibo-button.ibo-is-alternative.ibo-is-primary:active,.ui-dialog .ibo-is-alternative.ibo-is-primary.ui-button:active,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-primary.ui-datepicker-current:active,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-primary.ui-datepicker-close:active,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-primary.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:white;color:#212934;box-shadow:inset 0px 2px 0px white , 0px 2px 0px white}.ibo-button.ibo-is-alternative.ibo-is-primary:disabled,.ui-dialog .ibo-is-alternative.ibo-is-primary.ui-button:disabled,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-primary.ui-datepicker-current:disabled,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-primary.ui-datepicker-close:disabled,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-primary.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-secondary,.ui-dialog .ibo-is-alternative.ibo-is-secondary.ui-button,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ibo-is-alternative.ui-button,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-current,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-close,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-current,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button,.ibo-is-alternative.ui-datepicker-current,.ibo-is-alternative.ui-datepicker-current.ui-datepicker-close,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-close,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button,.ibo-is-alternative.ui-datepicker-close.ui-datepicker-current,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-secondary.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-alternative.ui-button,.ibo-button.ibo-is-alternative.ui-datepicker-current,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-button.ibo-is-alternative.ui-datepicker-close,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close{background-color:transparent;color:#212934;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-secondary:hover,.ui-dialog .ibo-is-alternative.ibo-is-secondary.ui-button:hover,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ibo-is-alternative.ui-button:hover,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-close:hover,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-current:hover,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button:hover,.ibo-is-alternative.ui-datepicker-current:hover,.ibo-is-alternative.ui-datepicker-current.ui-datepicker-close:hover,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-close:hover,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button:hover,.ibo-is-alternative.ui-datepicker-close.ui-datepicker-current:hover,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-secondary.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close:hover,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-alternative.ui-button:hover,.ibo-button.ibo-is-alternative.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-button.ibo-is-alternative.ui-datepicker-close:hover,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover{background-color:#f8f9fa;color:#212934;box-shadow:0px 2px 0px #f8f9fa}.ibo-button.ibo-is-alternative.ibo-is-secondary:active,.ui-dialog .ibo-is-alternative.ibo-is-secondary.ui-button:active,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ibo-is-alternative.ui-button:active,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-current:active,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-close:active,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-current:active,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button:active,.ibo-is-alternative.ui-datepicker-current:active,.ibo-is-alternative.ui-datepicker-current.ui-datepicker-close:active,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-close:active,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button:active,.ibo-is-alternative.ui-datepicker-close.ui-datepicker-current:active,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-secondary.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close:active,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-alternative.ui-button:active,.ibo-button.ibo-is-alternative.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-button.ibo-is-alternative.ui-datepicker-close:active,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active{background-color:#f8f9fa;color:#212934;box-shadow:inset 0px 2px 0px #e1e7ec , 0px 2px 0px #f8f9fa}.ibo-button.ibo-is-alternative.ibo-is-secondary:disabled,.ui-dialog .ibo-is-alternative.ibo-is-secondary.ui-button:disabled,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ibo-is-alternative.ui-button:disabled,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-close:disabled,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-current:disabled,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button:disabled,.ibo-is-alternative.ui-datepicker-current:disabled,.ibo-is-alternative.ui-datepicker-current.ui-datepicker-close:disabled,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-close:disabled,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button:disabled,.ibo-is-alternative.ui-datepicker-close.ui-datepicker-current:disabled,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-secondary.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close:disabled,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-alternative.ui-button:disabled,.ibo-button.ibo-is-alternative.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-button.ibo-is-alternative.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-danger,.ui-dialog .ibo-is-alternative.ibo-is-danger.ui-button,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-danger.ui-datepicker-current,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-danger.ui-datepicker-close,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-danger.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#c53030;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-danger:hover,.ui-dialog .ibo-is-alternative.ibo-is-danger.ui-button:hover,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-danger.ui-datepicker-current:hover,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-danger.ui-datepicker-close:hover,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-danger.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#fed7d7;color:#742a2a;box-shadow:0px 2px 0px #fed7d7}.ibo-button.ibo-is-alternative.ibo-is-danger:active,.ui-dialog .ibo-is-alternative.ibo-is-danger.ui-button:active,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-danger.ui-datepicker-current:active,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-danger.ui-datepicker-close:active,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-danger.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#fed7d7;color:#742a2a;box-shadow:inset 0px 2px 0px #c53030 , 0px 2px 0px #fed7d7}.ibo-button.ibo-is-alternative.ibo-is-danger:disabled,.ui-dialog .ibo-is-alternative.ibo-is-danger.ui-button:disabled,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-danger.ui-datepicker-current:disabled,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-danger.ui-datepicker-close:disabled,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-danger.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-success,.ui-dialog .ibo-is-alternative.ibo-is-success.ui-button,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-success.ui-datepicker-current,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-success.ui-datepicker-close,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-success.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#33691e;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-success:hover,.ui-dialog .ibo-is-alternative.ibo-is-success.ui-button:hover,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-success.ui-datepicker-current:hover,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-success.ui-datepicker-close:hover,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-success.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#dcedc8;color:#33691e;box-shadow:0px 2px 0px #dcedc8}.ibo-button.ibo-is-alternative.ibo-is-success:active,.ui-dialog .ibo-is-alternative.ibo-is-success.ui-button:active,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-success.ui-datepicker-current:active,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-success.ui-datepicker-close:active,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-success.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#dcedc8;color:#33691e;box-shadow:inset 0px 2px 0px #689f38 , 0px 2px 0px #dcedc8}.ibo-button.ibo-is-alternative.ibo-is-success:disabled,.ui-dialog .ibo-is-alternative.ibo-is-success.ui-button:disabled,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-success.ui-datepicker-current:disabled,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-success.ui-datepicker-close:disabled,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-success.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-red,.ui-dialog .ibo-is-alternative.ibo-is-red.ui-button,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-red.ui-datepicker-current,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-red.ui-datepicker-close,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-red.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#c53030;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-red:hover,.ui-dialog .ibo-is-alternative.ibo-is-red.ui-button:hover,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-red.ui-datepicker-current:hover,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-red.ui-datepicker-close:hover,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-red.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#fed7d7;color:#742a2a;box-shadow:0px 2px 0px #fed7d7}.ibo-button.ibo-is-alternative.ibo-is-red:active,.ui-dialog .ibo-is-alternative.ibo-is-red.ui-button:active,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-red.ui-datepicker-current:active,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-red.ui-datepicker-close:active,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-red.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#fed7d7;color:#742a2a;box-shadow:inset 0px 2px 0px #c53030 , 0px 2px 0px #fed7d7}.ibo-button.ibo-is-alternative.ibo-is-red:disabled,.ui-dialog .ibo-is-alternative.ibo-is-red.ui-button:disabled,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-red.ui-datepicker-current:disabled,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-red.ui-datepicker-close:disabled,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-red.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-green,.ui-dialog .ibo-is-alternative.ibo-is-green.ui-button,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-green.ui-datepicker-current,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-green.ui-datepicker-close,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-green.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#33691e;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-green:hover,.ui-dialog .ibo-is-alternative.ibo-is-green.ui-button:hover,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-green.ui-datepicker-current:hover,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-green.ui-datepicker-close:hover,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-green.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#dcedc8;color:#33691e;box-shadow:0px 2px 0px #dcedc8}.ibo-button.ibo-is-alternative.ibo-is-green:active,.ui-dialog .ibo-is-alternative.ibo-is-green.ui-button:active,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-green.ui-datepicker-current:active,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-green.ui-datepicker-close:active,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-green.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#dcedc8;color:#33691e;box-shadow:inset 0px 2px 0px #689f38 , 0px 2px 0px #dcedc8}.ibo-button.ibo-is-alternative.ibo-is-green:disabled,.ui-dialog .ibo-is-alternative.ibo-is-green.ui-button:disabled,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-green.ui-datepicker-current:disabled,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-green.ui-datepicker-close:disabled,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-green.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-cyan,.ui-dialog .ibo-is-alternative.ibo-is-cyan.ui-button,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-current,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-close,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-cyan.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#006164;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-cyan:hover,.ui-dialog .ibo-is-alternative.ibo-is-cyan.ui-button:hover,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-current:hover,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-close:hover,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-cyan.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#c9eef2;color:#006164;box-shadow:0px 2px 0px #c9eef2}.ibo-button.ibo-is-alternative.ibo-is-cyan:active,.ui-dialog .ibo-is-alternative.ibo-is-cyan.ui-button:active,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-current:active,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-close:active,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-cyan.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#c9eef2;color:#006164;box-shadow:inset 0px 2px 0px #00838f , 0px 2px 0px #c9eef2}.ibo-button.ibo-is-alternative.ibo-is-cyan:disabled,.ui-dialog .ibo-is-alternative.ibo-is-cyan.ui-button:disabled,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-current:disabled,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-close:disabled,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-cyan.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button,.ui-dialog .ui-button,.ui-datepicker-current,.ui-datepicker-close{position:relative;display:inline-block;padding:6px 9px;border:0;border-radius:4px;cursor:pointer;text-transform:uppercase;white-space:nowrap}.ibo-button.ibo-action-button,.ui-dialog .ibo-action-button.ui-button,.ibo-action-button.ui-datepicker-current,.ibo-action-button.ui-datepicker-close{float:right}.ibo-button .ibo-button--loading-icon,.ui-dialog .ui-button .ibo-button--loading-icon,.ui-datepicker-current .ibo-button--loading-icon,.ui-datepicker-close .ibo-button--loading-icon{display:none}.ibo-button.ibo-is-loading .ibo-button--icon,.ui-dialog .ibo-is-loading.ui-button .ibo-button--icon,.ibo-is-loading.ui-datepicker-current .ibo-button--icon,.ibo-is-loading.ui-datepicker-close .ibo-button--icon{display:none}.ibo-button.ibo-is-loading .ibo-button--loading-icon,.ui-dialog .ibo-is-loading.ui-button .ibo-button--loading-icon,.ibo-is-loading.ui-datepicker-current .ibo-button--loading-icon,.ibo-is-loading.ui-datepicker-close .ibo-button--loading-icon{display:inline-block}.ibo-button.ibo-is-loading .ibo-button--loading-icon+.ibo-button--label,.ui-dialog .ibo-is-loading.ui-button .ibo-button--loading-icon+.ibo-button--label,.ibo-is-loading.ui-datepicker-current .ibo-button--loading-icon+.ibo-button--label,.ibo-is-loading.ui-datepicker-close .ibo-button--loading-icon+.ibo-button--label{margin-left:4px}.ibo-button--icon+.ibo-button--label{margin-left:4px}.ibo-button--vertical-align{margin-top:4px;margin-bottom:4px}.ibo-button-group{display:inline-flex;flex-wrap:nowrap}.ibo-button-group .ibo-button,.ibo-button-group .ui-dialog .ui-button,.ui-dialog .ibo-button-group .ui-button,.ibo-button-group .ui-datepicker-current,.ibo-button-group .ui-datepicker-close{position:relative}.ibo-button-group .ibo-button:first-child,.ibo-button-group .ui-dialog .ui-button:first-child,.ui-dialog .ibo-button-group .ui-button:first-child,.ibo-button-group .ui-datepicker-current:first-child,.ibo-button-group .ui-datepicker-close:first-child{border-radius:4px 0 0 4px}.ibo-button-group .ibo-button:last-child,.ibo-button-group .ui-dialog .ui-button:last-child,.ui-dialog .ibo-button-group .ui-button:last-child,.ibo-button-group .ui-datepicker-current:last-child,.ibo-button-group .ui-datepicker-close:last-child{border-radius:0 4px 4px 0}.ibo-button-group .ibo-button:not(:first-child):not(:last-child),.ibo-button-group .ui-dialog .ui-button:not(:first-child):not(:last-child),.ui-dialog .ibo-button-group .ui-button:not(:first-child):not(:last-child),.ibo-button-group .ui-datepicker-current:not(:first-child):not(:last-child),.ibo-button-group .ui-datepicker-close:not(:first-child):not(:last-child){border-radius:0}.ibo-button-group .ibo-button+.ibo-button,.ibo-button-group .ui-dialog .ui-button+.ibo-button,.ibo-button-group .ui-dialog .ui-dialog .ui-button+.ui-button,.ui-dialog .ibo-button-group .ui-dialog .ui-button+.ui-button,.ibo-button-group .ui-dialog .ui-button+.ui-datepicker-current,.ibo-button-group .ui-dialog .ui-button+.ui-datepicker-close,.ui-dialog .ibo-button-group .ui-button+.ibo-button,.ibo-button-group .ui-datepicker-current+.ibo-button,.ibo-button-group .ui-dialog .ui-datepicker-current+.ui-button,.ui-dialog .ibo-button-group .ui-datepicker-current+.ui-button,.ibo-button-group .ui-datepicker-current+.ui-datepicker-current,.ibo-button-group .ui-datepicker-current+.ui-datepicker-close,.ibo-button-group .ui-datepicker-close+.ibo-button,.ibo-button-group .ui-dialog .ui-datepicker-close+.ui-button,.ui-dialog .ibo-button-group .ui-datepicker-close+.ui-button,.ibo-button-group .ui-datepicker-close+.ui-datepicker-current,.ibo-button-group .ui-datepicker-close+.ui-datepicker-close,.ibo-button-group .ui-dialog .ibo-button+.ui-button,.ui-dialog .ibo-button-group .ibo-button+.ui-button,.ibo-button-group .ibo-button+.ui-datepicker-current,.ibo-button-group .ibo-button+.ui-datepicker-close{margin-left:0}.ibo-button-group .ibo-button+.ibo-button::before,.ibo-button-group .ui-dialog .ui-button+.ibo-button::before,.ui-dialog .ibo-button-group .ui-button+.ibo-button::before,.ibo-button-group .ui-datepicker-current+.ibo-button::before,.ibo-button-group .ui-datepicker-close+.ibo-button::before,.ibo-button-group .ui-dialog .ibo-button+.ui-button::before,.ui-dialog .ibo-button-group .ibo-button+.ui-button::before,.ibo-button-group .ibo-button+.ui-datepicker-current::before,.ibo-button-group .ibo-button+.ui-datepicker-close::before{content:"";position:absolute;top:6px;bottom:6px;left:0;width:1px;border-left:1px solid transparent}.ibo-button-group>*+*.ibo-is-regular.ibo-is-neutral::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-current::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-close::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button.ui-dialog-titlebar-close::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close::before{border-left-color:#d5dde5}.ibo-button-group>*+*.ibo-is-regular.ibo-is-neutral:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:hover::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-current:hover::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button.ui-dialog-titlebar-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover::before{border-left-color:#d5dde5}.ibo-button-group>*+*.ibo-is-regular.ibo-is-neutral:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:active::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-current:active::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button.ui-dialog-titlebar-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active::before{border-left-color:#e1e7ec}.ibo-button-group>*+*.ibo-is-regular.ibo-is-neutral:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:disabled::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-current:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button.ui-dialog-titlebar-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-primary::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-close::before{border-left-color:#006164}.ibo-button-group>*+*.ibo-is-regular.ibo-is-primary:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-close:hover::before{border-left-color:#006164}.ibo-button-group>*+*.ibo-is-regular.ibo-is-primary:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button:active::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-close:active::before{border-left-color:#006164}.ibo-button-group>*+*.ibo-is-regular.ibo-is-primary:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-secondary::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button::before,.ui-dialog .ibo-button-group>*+*.ui-button::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-current::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-close::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-current::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button::before,.ibo-button-group>*+*.ui-datepicker-current::before,.ibo-button-group>*+*.ui-datepicker-current.ui-datepicker-close::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-close::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button::before,.ibo-button-group>*+*.ui-datepicker-close.ui-datepicker-current::before,.ibo-button-group>*+*.ui-datepicker-close::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-close::before{border-left-color:#d5dde5}.ibo-button-group>*+*.ibo-is-regular.ibo-is-secondary:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-current:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-close:hover::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-current:hover::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button:hover::before,.ibo-button-group>*+*.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ui-datepicker-current.ui-datepicker-close:hover::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button:hover::before,.ibo-button-group>*+*.ui-datepicker-close.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ui-datepicker-close:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-close:hover::before{border-left-color:#d5dde5}.ibo-button-group>*+*.ibo-is-regular.ibo-is-secondary:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button:active::before,.ui-dialog .ibo-button-group>*+*.ui-button:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-current:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-close:active::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-current:active::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button:active::before,.ibo-button-group>*+*.ui-datepicker-current:active::before,.ibo-button-group>*+*.ui-datepicker-current.ui-datepicker-close:active::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button:active::before,.ibo-button-group>*+*.ui-datepicker-close.ui-datepicker-current:active::before,.ibo-button-group>*+*.ui-datepicker-close:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button:active::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-close:active::before{border-left-color:#e1e7ec}.ibo-button-group>*+*.ibo-is-regular.ibo-is-secondary:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-current:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-close:disabled::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-current:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button:disabled::before,.ibo-button-group>*+*.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ui-datepicker-current.ui-datepicker-close:disabled::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button:disabled::before,.ibo-button-group>*+*.ui-datepicker-close.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ui-datepicker-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-danger::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-close::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-regular.ibo-is-danger:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-close:hover::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-regular.ibo-is-danger:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button:active::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-close:active::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-regular.ibo-is-danger:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-success::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-close::before{border-left-color:#33691e}.ibo-button-group>*+*.ibo-is-regular.ibo-is-success:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-close:hover::before{border-left-color:#33691e}.ibo-button-group>*+*.ibo-is-regular.ibo-is-success:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button:active::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-close:active::before{border-left-color:#33691e}.ibo-button-group>*+*.ibo-is-regular.ibo-is-success:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-red::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-close::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-regular.ibo-is-red:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-close:hover::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-regular.ibo-is-red:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button:active::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-close:active::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-regular.ibo-is-red:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-green::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-close::before{border-left-color:#33691e}.ibo-button-group>*+*.ibo-is-regular.ibo-is-green:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-close:hover::before{border-left-color:#33691e}.ibo-button-group>*+*.ibo-is-regular.ibo-is-green:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button:active::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-close:active::before{border-left-color:#33691e}.ibo-button-group>*+*.ibo-is-regular.ibo-is-green:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-cyan::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-close::before{border-left-color:#006164}.ibo-button-group>*+*.ibo-is-regular.ibo-is-cyan:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-close:hover::before{border-left-color:#006164}.ibo-button-group>*+*.ibo-is-regular.ibo-is-cyan:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button:active::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-close:active::before{border-left-color:#006164}.ibo-button-group>*+*.ibo-is-regular.ibo-is-cyan:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-neutral::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button.ui-dialog-titlebar-close::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button.ui-dialog-titlebar-close::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-neutral:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button.ui-dialog-titlebar-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-neutral:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button.ui-dialog-titlebar-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-neutral:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button.ui-dialog-titlebar-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-primary::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button.ui-dialog-titlebar-close::before{border-left-color:#00838f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-primary:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-primary:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-primary:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-secondary::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button.ui-dialog-titlebar-close::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-current::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-close::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-secondary:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button.ui-dialog-titlebar-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-current:hover::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-secondary:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button.ui-dialog-titlebar-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button:active::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-current:active::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-secondary:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button.ui-dialog-titlebar-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-current:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-danger::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button.ui-dialog-titlebar-close::before{border-left-color:#e53e3e}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-danger:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-danger:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-danger:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-success::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button.ui-dialog-titlebar-close::before{border-left-color:#558b2f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-success:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#558b2f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-success:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#558b2f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-success:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-red::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button.ui-dialog-titlebar-close::before{border-left-color:#e53e3e}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-red:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-red:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-red:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-green::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button.ui-dialog-titlebar-close::before{border-left-color:#558b2f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-green:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#558b2f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-green:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#558b2f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-green:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-cyan::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button.ui-dialog-titlebar-close::before{border-left-color:#00838f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-cyan:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#00838f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-cyan:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#00838f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-cyan:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-breadcrumbs{position:relative;margin-right:32px}.ibo-breadcrumbs.ibo-is-overflowing{justify-content:right}.ibo-breadcrumbs *{display:flex;align-items:center}.ibo-breadcrumbs--item{color:#404b5a}.ibo-breadcrumbs--item:not(:last-child):hover .ibo-breadcrumbs--item-icon>*{opacity:1;filter:none}.ibo-breadcrumbs--item-icon{margin-right:8px;transition:all 0.1s linear}.ibo-breadcrumbs--item-icon>span{color:#929fb1;opacity:0.6}.ibo-breadcrumbs--item-icon>img{height:auto;max-width:16px;opacity:0.3;filter:grayscale(100%)}.ibo-breadcrumbs--item-label{display:inline;max-width:100px}.ibo-breadcrumbs--item:not(:last-child)::after,.ibo-breadcrumbs--previous-items-list-toggler:not(:last-child)::after{content:"";margin:0 12px;color:#aebecd}.ibo-breadcrumbs--previous-items-list-toggler{margin-right:24px;color:#6e7a8a !important}.ibo-breadcrumbs--previous-items-list-toggler:not(:last-child)::after{position:absolute;right:-24px}.ibo-breadcrumbs--previous-items-list{display:flex;flex-direction:column;align-items:stretch;position:fixed;top:37px;padding:8px 0;background-color:white}.ibo-breadcrumbs--previous-item{color:#404b5a;padding:12px 12px}.ibo-breadcrumbs--previous-item .ibo-breadcrumbs--item-label{max-width:200px}@keyframes ibo-quick-create--drawer--opening{from{top:-310px;box-shadow:none}to{top:100%;box-shadow:0 3px 6px rgba(0, 0, 0, 0.1), 0 10px 20px rgba(0, 0, 0, 0.15)}}.ibo-quick-create{position:relative}.ibo-quick-create.ibo-is-opened .ibo-quick-create--input,.ibo-quick-create.ibo-input-select-icon--menu .ibo-quick-create--input{width:245px}.ibo-quick-create.ibo-is-opened .ibo-quick-create--drawer,.ibo-quick-create.ibo-input-select-icon--menu .ibo-quick-create--drawer{animation-name:ibo-quick-create--drawer--opening;animation-delay:0.1s;animation-duration:0.2s;animation-direction:normal;animation-fill-mode:forwards}.ibo-quick-create--head{background-color:white}.ibo-quick-create--icon{color:#dd6c20;align-self:center;padding:0 16px}.ibo-quick-create--icon:hover{color:#c05621}.ibo-quick-create--icon:active{color:#9c4221}.ibo-quick-create--input{width:0;border:none;transition:all 0.2s ease-in-out}.ibo-quick-create--input.selectize-control.single{position:sticky;display:flex}.ibo-quick-create--input.selectize-control.single .selectize-input,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active{display:flex;background-color:transparent;background-image:none;border:none;box-shadow:none}.ibo-quick-create--input.selectize-control.single .selectize-input>input,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active>input{color:#404b5a;outline:none;border:none}.ibo-quick-create--input.selectize-control.single .selectize-input>input::placeholder,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active>input::placeholder{color:#929fb1}.ibo-quick-create--input.selectize-control.single .selectize-input>input:-ms-input-placeholder,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active>input:-ms-input-placeholder,.ibo-quick-create--input.selectize-control.single .selectize-input>input::-ms-input-placeholder,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active>input::-ms-input-placeholder{color:#929fb1}.ibo-quick-create--input.selectize-control.single .selectize-input>.item,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active>.item{color:#404b5a;line-height:200%}.ibo-quick-create--input.selectize-control.single .selectize-dropdown{background-color:white;border:none;border-radius:0}.ibo-quick-create--drawer{z-index:-1;position:absolute;left:0;right:0;top:-310px;padding:16px 16px;background-color:white;box-shadow:none}.ibo-quick-create--compartment-title{margin-top:8px;margin-bottom:8px;padding-left:32px;overflow-x:hidden;color:#404b5a}.ibo-quick-create--compartment-title>span{position:relative}.ibo-quick-create--compartment-title>span::before,.ibo-quick-create--compartment-title>span::after{content:"";display:inline-block;position:absolute;top:50%;height:1px;width:600px;border-top:1px solid #404b5a}.ibo-quick-create--compartment-title>span::before{right:100%;margin-right:8px}.ibo-quick-create--compartment-title>span::after{left:100%;margin-left:8px}.ibo-quick-create--compartment-content{color:#212934}.ibo-quick-create--compartment-element{display:flex;align-items:center;padding:4px 8px;margin-left:-8px;margin-right:-8px;color:inherit}.ibo-quick-create--compartment-element-image{margin-right:8px;width:20px}.ibo-quick-create--compartment-results--container{position:static;width:100% !important;background:transparent;border:none;box-shadow:none}.ibo-quick-create--compartment-results--element{overflow:unset;max-height:unset}.ibo-quick-create--compartment-results--element>.option{padding:4px 8px;margin-left:-8px;margin-right:-8px;color:inherit}.ibo-quick-create--compartment-results--element>.option.active{background-color:#e1e7ec;border-radius:3px}.ibo-quick-create--compartment-results--element>.option:hover{cursor:pointer;color:#9c4221;text-decoration:none}.ibo-quick-create--compartment-results--element>.option .highlight{font-weight:bold}.ibo-quick-create--compartment--placeholder{align-items:center;display:flex;flex-direction:column}.ibo-quick-create--compartment--placeholder-image>svg{width:66%;height:inherit;margin:24px auto 16px auto;display:flex}.ibo-quick-create--compartment--placeholder-hint{text-align:justify;padding:0 8px;color:#6e7a8a}@keyframes ibo-global-search--drawer--opening{from{top:-310px;box-shadow:none}to{top:100%;box-shadow:0 3px 6px rgba(0, 0, 0, 0.1), 0 10px 20px rgba(0, 0, 0, 0.15)}}.ibo-global-search{position:relative}.ibo-global-search.ibo-is-opened .ibo-global-search--input,.ibo-global-search.ibo-input-select-icon--menu .ibo-global-search--input,.ibo-global-search.ibo-is-opened .ibo-global-search--input:hover,.ibo-global-search.ibo-is-opened .ibo-global-search--input:focus,.ibo-global-search.ibo-is-opened .ibo-global-search--input:active,.ibo-global-search.ibo-input-select-icon--menu .ibo-global-search--input:hover,.ibo-global-search.ibo-input-select-icon--menu .ibo-global-search--input:focus,.ibo-global-search.ibo-input-select-icon--menu .ibo-global-search--input:active{padding:8px 8px;width:245px}.ibo-global-search.ibo-is-opened .ibo-global-search--drawer,.ibo-global-search.ibo-input-select-icon--menu .ibo-global-search--drawer{animation-name:ibo-global-search--drawer--opening;animation-delay:0.1s;animation-duration:0.2s;animation-direction:normal;animation-fill-mode:forwards}.ibo-global-search--head{background-color:white}.ibo-global-search--icon{color:#dd6c20;align-self:center;padding:0 16px}.ibo-global-search--icon:hover{color:#c05621}.ibo-global-search--icon:active{color:#9c4221}.ibo-global-search--input,.ibo-global-search--input:hover,.ibo-global-search--input:focus,.ibo-global-search--input:active{padding:0;width:0;color:#404b5a;background-color:transparent;border:none;outline:none;transition:all 0.2s ease-in-out}.ibo-global-search--input::placeholder,.ibo-global-search--input:hover::placeholder,.ibo-global-search--input:focus::placeholder,.ibo-global-search--input:active::placeholder{color:#929fb1}.ibo-global-search--input:-ms-input-placeholder,.ibo-global-search--input:hover:-ms-input-placeholder,.ibo-global-search--input:focus:-ms-input-placeholder,.ibo-global-search--input:active:-ms-input-placeholder,.ibo-global-search--input::-ms-input-placeholder,.ibo-global-search--input:hover::-ms-input-placeholder,.ibo-global-search--input:focus::-ms-input-placeholder,.ibo-global-search--input:active::-ms-input-placeholder{color:#929fb1}.ibo-global-search--drawer{z-index:-1;position:absolute;left:0;right:0;top:-310px;padding:16px 16px;background-color:white;box-shadow:none}.ibo-global-search--compartment-title{margin-bottom:8px;padding-left:32px;overflow-x:hidden;color:#404b5a}.ibo-global-search--compartment-title>span{position:relative}.ibo-global-search--compartment-title>span::before,.ibo-global-search--compartment-title>span::after{content:"";display:inline-block;position:absolute;top:50%;height:1px;width:600px;border-top:1px solid #404b5a}.ibo-global-search--compartment-title>span::before{right:100%;margin-right:8px}.ibo-global-search--compartment-title>span::after{left:100%;margin-left:8px}.ibo-global-search--compartment-content{color:#212934}.ibo-global-search--compartment-element{display:flex;align-items:center;color:inherit}.ibo-global-search--compartment-element:not(:last-child){margin-bottom:8px}.ibo-global-search--compartment-element-image{margin-right:8px;width:20px}.ibo-global-search--compartment--placeholder{align-items:center;display:flex;flex-direction:column}.ibo-global-search--compartment--placeholder-image>svg{width:66%;height:inherit;margin:24px auto 16px auto;display:flex}.ibo-global-search--compartment--placeholder-hint{text-align:justify;padding:0 8px;color:#6e7a8a}.ibo-popover-menu,.ui-menu,.ui-multiselect-menu,.ibo-input-select-icon--menu,.graph_config .toolkit_menu.graph>ul>li ul{display:none;padding:0;background-color:white;border-radius:3px;flex-wrap:wrap;position:absolute}.ibo-popover-menu.ibo-is-opened,.ibo-is-opened.ui-menu,.ui-menu.ibo-input-select-icon--menu,.ibo-is-opened.ui-multiselect-menu,.ui-multiselect-menu.ibo-input-select-icon--menu,.ibo-is-opened.ibo-input-select-icon--menu,.ibo-input-select-icon--menu,.graph_config .toolkit_menu.graph>ul>li ul.ibo-is-opened,.graph_config .toolkit_menu.graph>ul>li ul.ibo-input-select-icon--menu,.ibo-popover-menu.ibo-input-select-icon--menu,.ibo-input-select-icon--menu.ui-menu,.ibo-input-select-icon--menu.ui-multiselect-menu{display:flex;flex-direction:column}.ibo-popover-menu--toggler-visual-hint{margin-left:0.5rem}.ibo-popover-menu--section,.ui-multiselect-checkboxes{display:flex;flex-direction:column;align-self:flex-start;margin:0 0;width:100%;white-space:nowrap;overflow:hidden}.ibo-popover-menu--section:first-child,.ui-multiselect-checkboxes:first-child{border-radius:3px 3px 0 0}.ibo-popover-menu--section:last-child,.ui-multiselect-checkboxes:last-child{border-radius:0 0 3px 3px}.ibo-popover-menu--item,.ui-menu-item,.ui-multiselect-checkboxes li,.ibo-input-select-icon--menu--item,.graph_config .toolkit_menu.graph>ul>li ul li{padding:12px 24px 12px 16px;color:#212934}.ibo-popover-menu--item a,.ui-menu-item a,.ui-multiselect-checkboxes li a,.ibo-input-select-icon--menu--item a,.graph_config .toolkit_menu.graph>ul>li ul li a{color:#212934}.ibo-popover-menu--item:hover,.ui-menu-item:hover,.ui-multiselect-checkboxes li:hover,.ibo-input-select-icon--menu--item:hover,.graph_config .toolkit_menu.graph>ul>li ul li:hover{background-color:#e1e7ec;color:inherit}.ibo-popover-menu--item.ibo-popover-menu--item-separator,.ibo-popover-menu--item-separator.ui-menu-item,.ui-menu-item.ui-autocomplete-category,.ui-multiselect-checkboxes li.ibo-popover-menu--item-separator,.ui-multiselect-checkboxes li.ui-autocomplete-category,.ibo-popover-menu--item-separator.ibo-input-select-icon--menu--item,.ibo-input-select-icon--menu--item.ui-autocomplete-category,.graph_config .toolkit_menu.graph>ul>li ul li.ibo-popover-menu--item-separator,.graph_config .toolkit_menu.graph>ul>li ul li.ui-autocomplete-category,.ibo-popover-menu--item.ui-autocomplete-category,.ui-autocomplete-category.ui-menu-item,.ui-autocomplete-category.ibo-input-select-icon--menu--item{padding:0;margin:0;background-color:#e1e7ec}.ibo-popover-menu--item--icon{padding-right:5px;color:#6e7a8a;font-size:1.33rem}#ibo-navigation-menu--notifications-menu{flex-flow:column;min-width:min(550px, 90vw);max-width:90vw}#ibo-navigation-menu--notifications-menu .ibo-navigation-menu--notifications--messages-section{overflow:auto}.ibo-navigation-menu--notifications--show-all-messages,.ibo-navigation-menu--notifications-dismiss-all,.ibo-navigation-menu--notifications-show-all-multiple{overflow-x:inherit;text-align:center;min-height:45px}.ibo-navigation-menu--notifications--item--image{max-width:20px;max-height:20px;margin:0 6px;border-radius:100%}.ibo-navigation-menu--notifications--item--image[src=""]{display:none}.ibo-navigation-menu--notifications--item--image:not([src=""])~.ibo-navigation-menu--notifications--item--image{display:none}.ibo-navigation-menu--notifications--item--bottom-text{display:flex;flex-direction:column;align-items:center;float:right;align-self:center;margin-left:auto;margin-right:auto}.ibo-navigation-menu--notifications--item--content{flex-grow:1;padding:0 14px;max-height:128px;overflow-y:auto;white-space:normal}.ibo-navigation-menu--notifications--item--content img{max-height:100px;padding:5px}.ibo-navigation-menu--notifications-item{display:flex;flex-direction:row;cursor:pointer}.ibo-navigation-menu--notifications--item--new-message-indicator{width:13px;height:13px;background-color:white;border:solid 2px #aebecd;border-radius:100%;margin-top:4px;flex-shrink:0}.ibo-navigation-menu--notifications--item--new-message-indicator.ibo-is-priority-1{background-color:#fce8e8;border:solid 2px #f56565}.ibo-navigation-menu--notifications--item--new-message-indicator.ibo-is-priority-2{background-color:floralwhite;border:solid 2px #ea7d1e}.ibo-navigation-menu--notifications--item--new-message-indicator.ibo-is-priority-3{background-color:#ebf8ff;border:solid 2px #429ae1}.ibo-navigation-menu--notifications--item--new-message-indicator.ibo-is-priority-4{background-color:white;border:solid 2px #aebecd}.ibo-navigation-menu--notifications-show-all-multiple~.ibo-popover-menu .ibo-navigation-menu--notifications--item--new-message-indicator,.ibo-navigation-menu--notifications-show-all-multiple~.ui-menu .ibo-navigation-menu--notifications--item--new-message-indicator,.ibo-navigation-menu--notifications-show-all-multiple~.ui-multiselect-menu .ibo-navigation-menu--notifications--item--new-message-indicator,.ibo-navigation-menu--notifications-show-all-multiple~.ibo-input-select-icon--menu .ibo-navigation-menu--notifications--item--new-message-indicator,.graph_config .toolkit_menu.graph>ul>li .ibo-navigation-menu--notifications-show-all-multiple~ul .ibo-navigation-menu--notifications--item--new-message-indicator{display:inline-block;margin-right:15px}.ibo-navigation-menu--notifications-dismiss-all--icon{margin:0 10px 0 0}.ibo-popover-menu--item--no-message{text-align:center}.ibo-popover-menu--item--no-message--image>svg{max-width:220px;height:inherit;padding:15px}.ibo-panel.ibo-has-sticky-header>.ibo-panel--header .ibo-panel--title,.ibo-panel.ibo-has-sticky-header>.ibo-object-summary--header .ibo-panel--title,.ibo-panel.ibo-has-sticky-header>.ibo-panel--header .ibo-panel--subtitle,.ibo-panel.ibo-has-sticky-header>.ibo-object-summary--header .ibo-panel--subtitle,.ibo-panel.ibo-has-sticky-header>.ibo-panel--header .ibo-panel--icon,.ibo-panel.ibo-has-sticky-header>.ibo-object-summary--header .ibo-panel--icon,.ibo-panel.ibo-has-sticky-header>.ibo-panel--header .ibo-panel--titles,.ibo-panel.ibo-has-sticky-header>.ibo-object-summary--header .ibo-panel--titles,.ibo-object-details.ibo-has-sticky-header>.ibo-panel--header .ibo-panel--header-left,.ibo-object-details.ibo-has-sticky-header>.ibo-object-summary--header .ibo-panel--header-left{transition:all 0.15s linear}.ibo-panel{--ibo-main-color: #929fb1;position:relative}.ibo-panel.ibo-has-icon>.ibo-panel--header .ibo-panel--titles,.ibo-panel.ibo-has-icon>.ibo-object-summary--header .ibo-panel--titles{padding-left:16px}.ibo-panel.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header .ibo-panel--header-left,.ibo-panel.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header .ibo-panel--header-left{position:relative;z-index:1;margin-left:16px}.ibo-panel.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header .ibo-panel--header-left .ibo-panel--icon,.ibo-panel.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header .ibo-panel--header-left .ibo-panel--icon{position:absolute;bottom:-24px;left:0;overflow:hidden;width:72px;height:72px;min-width:72px;min-height:72px;background-color:#f8f9fa;border:2px solid #90a4ae;border-radius:100%}.ibo-panel.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header .ibo-panel--header-left .ibo-panel--titles,.ibo-panel.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header .ibo-panel--header-left .ibo-panel--titles{padding-left:calc(72px + 16px)}.ibo-panel.ibo-is-selectable .ibo-panel--body::after{content:" ";background-color:transparent;cursor:pointer;position:absolute;display:flex;align-items:center;justify-content:center;height:100%;width:100%;z-index:3;font-size:7rem}.ibo-panel.ibo-is-selectable:hover .ibo-panel--body::after{content:"";color:#f8f9fa;background-color:rgba(146, 159, 177, 0.4);display:flex}.ibo-panel.ibo-is-selected .ibo-panel--body::after{content:"";color:#f8f9fa;background-color:rgba(33, 41, 52, 0.5);display:flex}.ibo-panel.ibo-is-selected:hover .ibo-panel--body::after{background-color:rgba(110, 122, 138, 0.5);display:flex}.ibo-panel--header,.ibo-object-summary--header{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:4px}.ibo-panel--header-left{justify-content:left}.ibo-panel--icon{width:48px;height:48px;min-width:48px;min-height:48px}.ibo-panel--icon-img,.ibo-panel--icon-background{width:100%;height:100%;object-position:center;object-fit:contain;background-position:center;background-repeat:no-repeat;background-size:contain}.ibo-panel--icon-img--must-contain,.ibo-panel--icon-background--must-contain{object-fit:contain;background-size:contain}.ibo-panel--icon-img--must-cover,.ibo-panel--icon-background--must-cover{object-fit:cover;background-size:cover}.ibo-panel--icon-img--must-zoomout,.ibo-panel--icon-background--must-zoomout{width:66.67%;height:66.67%}.ibo-panel--title{display:inline-block;color:#212934;flex-grow:1}.ibo-panel--subtitle{display:flex;color:#404b5a}.ibo-panel--body{position:relative;z-index:1;padding:32px 16px 24px 16px;background-color:white;border:1px solid #ccd4db;border-radius:5px;overflow:hidden}.ibo-panel--body::before{position:absolute;top:0;left:0;display:block;background-color:var(--ibo-main-color);content:"";width:100%;height:8px;padding-bottom:8px}.ibo-panel.ibo-is-primary>.ibo-panel--body::before{background-color:#dd6c20}.ibo-panel.ibo-is-secondary>.ibo-panel--body::before,.ui-dialog .ibo-panel.ui-button>.ibo-panel--body::before,.ibo-panel.ui-datepicker-current>.ibo-panel--body::before,.ibo-panel.ui-datepicker-close>.ibo-panel--body::before{background-color:#929fb1}.ibo-panel.ibo-is-neutral>.ibo-panel--body::before,.ui-dialog .ibo-panel.ui-button.ui-dialog-titlebar-close>.ibo-panel--body::before{background-color:#929fb1}.ibo-panel.ibo-is-information>.ibo-panel--body::before{background-color:#3182ce}.ibo-panel.ibo-is-success>.ibo-panel--body::before{background-color:#7cb342}.ibo-panel.ibo-is-failure>.ibo-panel--body::before{background-color:#e53e3e}.ibo-panel.ibo-is-warning>.ibo-panel--body::before{background-color:#dd6c20}.ibo-panel.ibo-is-danger>.ibo-panel--body::before{background-color:#e53e3e}.ibo-panel.ibo-is-grey>.ibo-panel--body::before{background-color:#929fb1}.ibo-panel.ibo-is-blue-grey>.ibo-panel--body::before{background-color:#546e7a}.ibo-panel.ibo-is-blue>.ibo-panel--body::before{background-color:#2c5382}.ibo-panel.ibo-is-cyan>.ibo-panel--body::before{background-color:#00aac1}.ibo-panel.ibo-is-green>.ibo-panel--body::before{background-color:#7cb342}.ibo-panel.ibo-is-orange>.ibo-panel--body::before{background-color:#dd6c20}.ibo-panel.ibo-is-red>.ibo-panel--body::before{background-color:#e53e3e}.ibo-panel.ibo-is-pink>.ibo-panel--body::before{background-color:#d53f8c}.ibo-panel--collapsible-toggler{display:inline-block;margin-right:8px;font-size:1.5rem;color:#6e7a8a;cursor:pointer}.ibo-panel .ibo-panel--collapsible-toggler--opened{display:block}.ibo-panel .ibo-panel--collapsible-toggler--closed{display:none}.ibo-panel:not(.ibo-is-opened) .ibo-panel--collapsible-toggler--closed{display:block}.ibo-panel:not(.ibo-is-opened) .ibo-panel--collapsible-toggler--opened{display:none}.ibo-panel:not(.ibo-is-opened) .ibo-panel--body{display:none}.ibo-panel.ibo-has-sticky-header>.ibo-panel--header,.ibo-panel.ibo-has-sticky-header>.ibo-object-summary--header{position:sticky;top:0;border:transparent;transition-property:all, top, background-color;transition-duration:0.15s, 0s, 0s;transition-timing-function:linear}.ibo-panel.ibo-has-sticky-header>.ibo-panel--header.ibo-is-sticking,.ibo-panel.ibo-has-sticky-header>.ibo-is-sticking.ibo-object-summary--header{padding-top:4px;padding-bottom:4px;background-color:#f8f9fa;border:1px solid #ccd4db;align-items:center}.ibo-panel.ibo-has-sticky-header>.ibo-panel--header.ibo-is-sticking .ibo-panel--title,.ibo-panel.ibo-has-sticky-header>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--title{font-size:1.17rem}.ibo-panel.ibo-has-sticky-header>.ibo-panel--header.ibo-is-sticking .ibo-panel--subtitle,.ibo-panel.ibo-has-sticky-header>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--subtitle{font-size:1rem}.ibo-panel.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header,.ibo-panel.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header{}.ibo-panel.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header.ibo-is-sticking .ibo-panel--icon,.ibo-panel.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--icon{bottom:-12px;width:48px;height:48px;min-width:48px;min-height:48px;border:1px solid #ccd4db}.ibo-panel.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header.ibo-is-sticking .ibo-panel--titles,.ibo-panel.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--titles{padding-left:calc(48px + 16px)}.ibo-collapsible-section--header{display:flex;align-items:stretch}.ibo-collapsible-section.ibo-is-opened .ibo-collapsible-section--minimize-button,.ibo-collapsible-section.ibo-input-select-icon--menu .ibo-collapsible-section--minimize-button{display:block}.ibo-collapsible-section.ibo-is-opened .ibo-collapsible-section--maximize-button,.ibo-collapsible-section.ibo-input-select-icon--menu .ibo-collapsible-section--maximize-button{display:none}.ibo-collapsible-section:not(.ibo-is-opened) .ibo-collapsible-section--minimize-button{display:none}.ibo-collapsible-section:not(.ibo-is-opened) .ibo-collapsible-section--maximize-button{display:block}.ibo-collapsible-section:not(.ibo-is-opened) .ibo-collapsible-section--body{display:none}.ibo-collapsible-section .ibo-collapsible-section--header{cursor:pointer}.ibo-collapsible-section .ibo-collapsible-section--header:hover i{opacity:0.8}.ibo-collapsible-section .ibo-collapsible-section--header .ibo-collapsible-section--action-button{align-self:center}.ibo-collapsible-section .ibo-collapsible-section--header .ibo-collapsible-section--action-button.ibo-collapsible-section--maximize-button,.ibo-collapsible-section .ibo-collapsible-section--header .ibo-collapsible-section--action-button.ibo-collapsible-section--minimize-button{color:#6e7a8a;margin-right:8px}.ibo-collapsible-section .ibo-collapsible-section--header .ibo-collapsible-section--title{color:#212934;flex-grow:1}.ibo-collapsible-section .ibo-collapsible-section--body{position:relative;padding:24px 16px 16px;background-color:white;border:solid 1px #ccd4db;border-radius:5px;overflow:hidden}.ibo-modal{display:flex;flex-direction:column;max-height:90vh !important;max-width:90vw !important}.ibo-modal.ibo-is-extra-small{height:calc(min(20vh, 150px)) !important;width:calc(min(20vw, 200px)) !important}.ibo-modal.ibo-is-small{height:calc(min(60vh, 400px)) !important;width:calc(min(60vw, 800px)) !important}.ibo-modal.ibo-is-medium{height:calc(min(75vh, 600px)) !important;width:calc(min(75vw, 1200px)) !important}.ibo-modal.ibo-is-large{height:calc(min(90vh, 900px)) !important;width:calc(min(90vw, 1800px)) !important}.ibo-modal-option--do-not-show-again{margin-top:16px}.ibo-modal-option--do-not-show-again .ibo-modal-option--do-not-show-again--checkbox{height:auto;display:inline-block;width:auto}.ibo-modal.ibo-is-informative{align-items:center;min-width:384px;min-height:24px !important}.ibo-modal.ibo-is-informative::before{display:block;position:absolute;top:0;left:0;content:"";width:4px;height:100%}.ibo-modal.ibo-is-informative.ibo-is-error::before{background-color:#e53e3e}.ibo-modal.ibo-is-informative.ibo-is-warning::before{background-color:#dd6c20}.ibo-modal.ibo-is-informative.ibo-is-information::before{background-color:#3182ce}.ibo-modal.ibo-is-informative.ibo-is-success::before{background-color:#7cb342}.ibo-dashlet{position:relative;width:calc(100% - 24px);margin:calc(24px / 2) calc(24px / 2)}.ibo-dashlet.dashlet-selected{position:relative}.ibo-dashlet--is-inline{width:auto}.ibo-dashlet-blocker{position:absolute;z-index:9;top:0;left:0;width:100%;height:100%;cursor:not-allowed}:root{--ibo-dashlet-badge--min-width: 200px;--ibo-dashlet-badge--padding-x: 16px;--ibo-dashlet-badge--padding-y: 16px;--ibo-dashlet-badge--background-color: white;--ibo-dashlet-badge--border: 1px solid #ccd4db;--ibo-dashlet-badge--border-radius: 5px}.ibo-dashlet-badge{max-width:350px;flex-basis:200px;flex-grow:1;flex-shrink:1;padding:16px 16px;background-color:white;border:1px solid #ccd4db;border-radius:5px}.ibo-dashlet-badge--body{display:flex;justify-items:left;align-items:center}.ibo-dashlet-badge--icon-container{margin-right:16px}.ibo-dashlet-badge--icon{width:48px;min-width:48px;max-height:48px}.ibo-dashlet-badge--actions{flex-grow:1;overflow-x:hidden}.ibo-dashlet-badge--action-list{color:inherit}.ibo-dashlet-badge--action-list-count{margin-right:8px}.ibo-dashlet-badge--action-list-label{display:inline-block}.ibo-dashlet-badge--action-create-icon{margin-right:8px}.ibo-dashlet-badge--body--tooltip-title{margin-bottom:16px}.ibo-dashlet-header-static{padding:16px 16px 0 16px;overflow-x:hidden}.ibo-dashlet-header-static--body{position:relative;display:inline-flex;justify-items:left;align-items:center;margin-left:48px;color:#212934}.ibo-dashlet-header-static--body::before,.ibo-dashlet-header-static--body::after{content:"";position:absolute;top:50%;width:10000px;height:1px;border-bottom:2px solid #ccd4db}.ibo-dashlet-header-static--body::before{right:calc(100% + 16px)}.ibo-dashlet-header-static--body::after{left:calc(100% + 16px)}.ibo-dashlet-header-static--icon-container{margin-right:16px}.ibo-dashlet-header-static--icon{width:48px;min-width:48px;max-height:48px}.ibo-dashlet-header-dynamic--container{display:flex;flex-wrap:wrap}.ibo-dashlet-header-dynamic--count{margin-right:10px}.ibo-input,.ui-autocomplete-input,.ui-multiselect,.dataTables_length select,.ui_tpicker_hour_slider>select,.ui_tpicker_minute_slider>select,.ui_tpicker_second_slider>select,select.ibo-input-select-placeholder,.ibo-datatableconfig--attributes-panel--per-page--input,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper input[type="text"]{height:30px;width:100%;background-color:white;color:#212934;padding:0 10px;border:1px solid #aebecd;border-radius:3px}.ibo-input:focus,.ui-autocomplete-input:focus,.ui-multiselect:focus,.dataTables_length select:focus,.ui_tpicker_hour_slider>select:focus,.ui_tpicker_minute_slider>select:focus,.ui_tpicker_second_slider>select:focus,select.ibo-input-select-placeholder:focus,.ibo-datatableconfig--attributes-panel--per-page--input:focus,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"]:focus,.search_form_handler .sf_filter .sff_input_wrapper input[type="text"]:focus{border-color:#dd6c20}.ibo-input:disabled,.ui-autocomplete-input:disabled,.ui-multiselect:disabled,.dataTables_length select:disabled,.ui_tpicker_hour_slider>select:disabled,.ui_tpicker_minute_slider>select:disabled,.ui_tpicker_second_slider>select:disabled,select.ibo-input-select-placeholder:disabled,.ibo-datatableconfig--attributes-panel--per-page--input:disabled,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"]:disabled,.search_form_handler .sf_filter .sff_input_wrapper input[type="text"]:disabled{background-color:#d5dde5;color:#929fb1}.ibo-input::placeholder,.ui-autocomplete-input::placeholder,.ui-multiselect::placeholder,.dataTables_length select::placeholder,.ui_tpicker_hour_slider>select::placeholder,.ui_tpicker_minute_slider>select::placeholder,.ui_tpicker_second_slider>select::placeholder,select.ibo-input-select-placeholder::placeholder,.ibo-datatableconfig--attributes-panel--per-page--input::placeholder,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"]::placeholder,.search_form_handler .sf_filter .sff_input_wrapper input[type="text"]::placeholder{color:#929fb1}textarea.ibo-input,textarea.ui-autocomplete-input,textarea.ui-multiselect,textarea.ibo-datatableconfig--attributes-panel--per-page--input{height:unset}.ibo-input-wrapper.is-error .ibo-input,.is-error.ui_tpicker_hour_slider .ibo-input,.is-error.ui_tpicker_hour_slider .ui-autocomplete-input,.is-error.ui_tpicker_hour_slider .ui-multiselect,.is-error.ui_tpicker_hour_slider .dataTables_length select,.dataTables_length .is-error.ui_tpicker_hour_slider select,.is-error.ui_tpicker_hour_slider .ui_tpicker_hour_slider>select,.is-error.ui_tpicker_hour_slider .ui_tpicker_minute_slider>select,.is-error.ui_tpicker_hour_slider .ui_tpicker_second_slider>select,.is-error.ui_tpicker_hour_slider select.ibo-input-select-placeholder,.is-error.ui_tpicker_hour_slider .ibo-datatableconfig--attributes-panel--per-page--input,.is-error.ui_tpicker_hour_slider .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .is-error.ui_tpicker_hour_slider input[type="text"],.is-error.ui_tpicker_hour_slider .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .is-error.ui_tpicker_hour_slider input[type="text"],.is-error.ui_tpicker_minute_slider .ibo-input,.is-error.ui_tpicker_minute_slider .ui-autocomplete-input,.is-error.ui_tpicker_minute_slider .ui-multiselect,.is-error.ui_tpicker_minute_slider .dataTables_length select,.dataTables_length .is-error.ui_tpicker_minute_slider select,.is-error.ui_tpicker_minute_slider .ui_tpicker_hour_slider>select,.is-error.ui_tpicker_minute_slider .ui_tpicker_minute_slider>select,.is-error.ui_tpicker_minute_slider .ui_tpicker_second_slider>select,.is-error.ui_tpicker_minute_slider select.ibo-input-select-placeholder,.is-error.ui_tpicker_minute_slider .ibo-datatableconfig--attributes-panel--per-page--input,.is-error.ui_tpicker_minute_slider .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .is-error.ui_tpicker_minute_slider input[type="text"],.is-error.ui_tpicker_minute_slider .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .is-error.ui_tpicker_minute_slider input[type="text"],.is-error.ui_tpicker_second_slider .ibo-input,.is-error.ui_tpicker_second_slider .ui-autocomplete-input,.is-error.ui_tpicker_second_slider .ui-multiselect,.is-error.ui_tpicker_second_slider .dataTables_length select,.dataTables_length .is-error.ui_tpicker_second_slider select,.is-error.ui_tpicker_second_slider .ui_tpicker_hour_slider>select,.is-error.ui_tpicker_second_slider .ui_tpicker_minute_slider>select,.is-error.ui_tpicker_second_slider .ui_tpicker_second_slider>select,.is-error.ui_tpicker_second_slider select.ibo-input-select-placeholder,.is-error.ui_tpicker_second_slider .ibo-datatableconfig--attributes-panel--per-page--input,.is-error.ui_tpicker_second_slider .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .is-error.ui_tpicker_second_slider input[type="text"],.is-error.ui_tpicker_second_slider .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .is-error.ui_tpicker_second_slider input[type="text"],.ibo-input-wrapper.is-error .ui-autocomplete-input,.ibo-input-wrapper.is-error .ui-multiselect,.ibo-input-wrapper.is-error .dataTables_length select,.dataTables_length .ibo-input-wrapper.is-error select,.ibo-input-wrapper.is-error .ui_tpicker_hour_slider>select,.ibo-input-wrapper.is-error .ui_tpicker_minute_slider>select,.ibo-input-wrapper.is-error .ui_tpicker_second_slider>select,.ibo-input-wrapper.is-error select.ibo-input-select-placeholder,.ibo-input-wrapper.is-error .ibo-datatableconfig--attributes-panel--per-page--input,.ibo-input-wrapper.is-error .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .ibo-input-wrapper.is-error input[type="text"],.ibo-input-wrapper.is-error .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .ibo-input-wrapper.is-error input[type="text"],.ibo-input-wrapper.is-error .ibo-input-vanilla,.is-error.ui_tpicker_hour_slider .ibo-input-vanilla,.is-error.ui_tpicker_minute_slider .ibo-input-vanilla,.is-error.ui_tpicker_second_slider .ibo-input-vanilla,.ibo-input-wrapper.is-error .ck-editor,.is-error.ui_tpicker_hour_slider .ck-editor,.is-error.ui_tpicker_minute_slider .ck-editor,.is-error.ui_tpicker_second_slider .ck-editor,.ibo-input-wrapper.is-error textarea,.is-error.ui_tpicker_hour_slider textarea,.is-error.ui_tpicker_minute_slider textarea,.is-error.ui_tpicker_second_slider textarea,.ibo-input-field-wrapper.is-error .ibo-input,.ibo-input-field-wrapper.is-error .ui-autocomplete-input,.ibo-input-field-wrapper.is-error .ui-multiselect,.ibo-input-field-wrapper.is-error .dataTables_length select,.dataTables_length .ibo-input-field-wrapper.is-error select,.ibo-input-field-wrapper.is-error .ui_tpicker_hour_slider>select,.ibo-input-field-wrapper.is-error .ui_tpicker_minute_slider>select,.ibo-input-field-wrapper.is-error .ui_tpicker_second_slider>select,.ibo-input-field-wrapper.is-error select.ibo-input-select-placeholder,.ibo-input-field-wrapper.is-error .ibo-datatableconfig--attributes-panel--per-page--input,.ibo-input-field-wrapper.is-error .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .ibo-input-field-wrapper.is-error input[type="text"],.ibo-input-field-wrapper.is-error .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .ibo-input-field-wrapper.is-error input[type="text"],.ibo-input-field-wrapper.is-error .ibo-input-vanilla,.ibo-input-field-wrapper.is-error .ck-editor,.ibo-input-field-wrapper.is-error textarea{border-color:#e53e3e}.ibo-input-wrapper.is-error .ibo-input-vanilla input,.is-error.ui_tpicker_hour_slider .ibo-input-vanilla input,.is-error.ui_tpicker_minute_slider .ibo-input-vanilla input,.is-error.ui_tpicker_second_slider .ibo-input-vanilla input,.ibo-input-field-wrapper.is-error .ibo-input-vanilla input{border:0;background-color:rgba(255, 255, 255, 0)}input.ibo-input-vanilla{width:unset;display:initial}.ibo-input-wrapper--with-buttons,.ibo-input-select-wrapper--with-buttons{position:relative;display:flex}.ibo-field-validation{color:#c53030}.file-input{display:block;position:relative}.ibo-input--label-right{margin-right:4px;display:inline}.ibo-input--label-left{margin-left:4px;display:inline}.disabled{background-color:#d5dde5}.ibo-input-checkbox{height:16px;width:auto}.ibo-input-date-wrapper{position:relative}.ibo-input-date{display:inline-block;width:100%}.ibo-input-date+button{position:absolute;display:inline-block;margin-left:-20px;margin-top:5px;padding:0;background-color:transparent;color:#404b5a;border:none}.ibo-input-datetime-wrapper{position:relative}.ibo-input-datetime{display:inline-block;width:100%}.ibo-input-datetime--action-button{position:absolute;display:inline-block;margin-left:-20px;margin-top:5px;padding:0;color:#404b5a}.ui_tpicker_hour_slider>select,.ui_tpicker_minute_slider>select,.ui_tpicker_second_slider>select{width:auto;padding-right:18px}.ibo-input-duration{display:inline-block;width:unset;text-align:right}.ibo-input-image{display:flex;justify-content:flex-start;align-items:flex-start}.ibo-input-image--image-view{position:relative;overflow:hidden;min-height:96px;background-color:#e1e7ec;border-radius:5px}.ibo-input-image--image-view img[src=""],.ibo-input-image--image-view img[src="null"]{visibility:hidden}.ibo-input-image--image-view input[type="file"]{position:absolute;top:0;bottom:0;left:0;right:0;width:100%;opacity:0}.ibo-input-image--edit-buttons{display:flex;flex-direction:column;margin-left:0.5rem}.ibo-input-image--edit-buttons .ibo-button+.ibo-button,.ibo-input-image--edit-buttons .ui-dialog .ui-button+.ibo-button,.ibo-input-image--edit-buttons .ui-dialog .ui-dialog .ui-button+.ui-button,.ui-dialog .ibo-input-image--edit-buttons .ui-dialog .ui-button+.ui-button,.ibo-input-image--edit-buttons .ui-dialog .ui-button+.ui-datepicker-current,.ibo-input-image--edit-buttons .ui-dialog .ui-button+.ui-datepicker-close,.ui-dialog .ibo-input-image--edit-buttons .ui-button+.ibo-button,.ibo-input-image--edit-buttons .ui-datepicker-current+.ibo-button,.ibo-input-image--edit-buttons .ui-dialog .ui-datepicker-current+.ui-button,.ui-dialog .ibo-input-image--edit-buttons .ui-datepicker-current+.ui-button,.ibo-input-image--edit-buttons .ui-datepicker-current+.ui-datepicker-current,.ibo-input-image--edit-buttons .ui-datepicker-current+.ui-datepicker-close,.ibo-input-image--edit-buttons .ui-datepicker-close+.ibo-button,.ibo-input-image--edit-buttons .ui-dialog .ui-datepicker-close+.ui-button,.ui-dialog .ibo-input-image--edit-buttons .ui-datepicker-close+.ui-button,.ibo-input-image--edit-buttons .ui-datepicker-close+.ui-datepicker-current,.ibo-input-image--edit-buttons .ui-datepicker-close+.ui-datepicker-close,.ibo-input-image--edit-buttons .ui-dialog .ibo-button+.ui-button,.ui-dialog .ibo-input-image--edit-buttons .ibo-button+.ui-button,.ibo-input-image--edit-buttons .ibo-button+.ui-datepicker-current,.ibo-input-image--edit-buttons .ibo-button+.ui-datepicker-close{margin-top:0.5rem;margin-left:0}.ibo-input-richtext-placeholder{height:192px;width:100%;visibility:hidden}.ibo-input-select,.ui-multiselect,.ui_tpicker_hour_slider>select,.ui_tpicker_minute_slider>select,.ui_tpicker_second_slider>select,select.ibo-input-select-placeholder{display:inline-flex;min-width:50px;appearance:none}.ibo-input-select.ibo-input-selectize,.ibo-input-selectize.ui-multiselect,.ui_tpicker_hour_slider>select.ibo-input-selectize,.ui_tpicker_minute_slider>select.ibo-input-selectize,.ui_tpicker_second_slider>select.ibo-input-selectize,select.ibo-input-selectize.ibo-input-select-placeholder{padding-right:0;padding-left:0;min-width:150px !important}.ibo-input-select.ibo-input-selectize input,.ibo-input-selectize.ui-multiselect input,.ui_tpicker_hour_slider>select.ibo-input-selectize input,.ui_tpicker_minute_slider>select.ibo-input-selectize input,.ui_tpicker_second_slider>select.ibo-input-selectize input,select.ibo-input-selectize.ibo-input-select-placeholder input{border-width:0;color:inherit;border-color:white;padding-left:10px}.ibo-input-select.ibo-input-selectize>[data-value],.ibo-input-selectize.ui-multiselect>[data-value],.ui_tpicker_hour_slider>select.ibo-input-selectize>[data-value],.ui_tpicker_minute_slider>select.ibo-input-selectize>[data-value],.ui_tpicker_second_slider>select.ibo-input-selectize>[data-value],select.ibo-input-selectize.ibo-input-select-placeholder>[data-value]{height:100%;line-height:30px;padding-left:10px}.ibo-input-select[size],.ui-multiselect[size],.ui_tpicker_hour_slider>select[size],.ui_tpicker_minute_slider>select[size],.ui_tpicker_second_slider>select[size],select.ibo-input-select-placeholder[size]{height:auto}.ibo-input-select[multiple],.ui-multiselect[multiple],.ui_tpicker_hour_slider>select[multiple],.ui_tpicker_minute_slider>select[multiple],.ui_tpicker_second_slider>select[multiple],select.ibo-input-select-placeholder[multiple]{padding-left:unset;padding-right:unset}.ibo-input-select[multiple] option,.ui-multiselect[multiple] option,.ui_tpicker_hour_slider>select[multiple] option,.ui_tpicker_minute_slider>select[multiple] option,.ui_tpicker_second_slider>select[multiple] option,select.ibo-input-select-placeholder[multiple] option{padding:4px 10px}.ibo-input-select-autocomplete{min-width:150px !important;text-overflow:ellipsis}.ibo-input-selectize{min-width:150px !important}.ibo-input-selectize>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibo-input-selectize>input{background-color:unset;border:unset}.ibo-input-selectize>input:focus{outline:none !important}.ibo-input-selectize.input-active{border:1px solid #dd6c20}.ibo-input-select-wrapper,.ui_tpicker_hour_slider,.ui_tpicker_minute_slider,.ui_tpicker_second_slider{position:relative}.ibo-input-select-wrapper--with-buttons .selectize-control{display:grid;width:100%}.ibo-input-select-wrapper::after,.ui_tpicker_hour_slider::after,.ui_tpicker_minute_slider::after,.ui_tpicker_second_slider::after{position:absolute;z-index:1;content:"";font-family:"Font Awesome 5 Free";font-weight:600;height:28px;margin-left:-16px;margin-top:1px;padding-top:3px;background-color:inherit;color:#212934;pointer-events:none}.ibo-input-select-container{display:flex}.ibo-input-select-wrapper--with-buttons:not(.ibo-input-select-autocomplete-wrapper)::after{position:absolute;z-index:1;content:"";font-family:"Font Awesome 5 Free";font-weight:600;cursor:pointer;right:8px;height:28px;margin-left:-16px;margin-top:1px;padding-top:3px;background-color:inherit;color:#212934;pointer-events:none}.ibo-input-select--action-buttons{position:absolute;z-index:1;display:flex;height:28px;margin-top:0;margin-right:3px;font-size:1rem;background-color:inherit;color:#404b5a;padding:0 2px;text-align:right;bottom:0;top:0;right:0}.ibo-input-select-wrapper .ibo-input-select--action-buttons,.ui_tpicker_hour_slider .ibo-input-select--action-buttons,.ui_tpicker_minute_slider .ibo-input-select--action-buttons,.ui_tpicker_second_slider .ibo-input-select--action-buttons{margin-right:20px}.ibo-input-select--action-button{display:flex;align-items:center;padding-left:6px;padding-right:2px;float:right}.selectize-dropdown.ui-autocomplete,.selectize-dropdown.set-dropdown,.selectize-dropdown.plugin-custom_itop{z-index:2000;max-height:50vh;max-width:50em;overflow-y:auto}.selectize-dropdown-content{max-height:calc(50vh - 4px)}.selectize-dropdown.ui-menu .ui-state-active{margin:unset;background-color:#ebf8ff;color:#404b5a}.ibo-input-select--autocomplete-item,.ibo-input-select--notification-item{display:flex;justify-content:left;align-items:center}.ibo-input-select--autocomplete-item-image{width:30px;height:30px;min-width:30px;min-height:30px;background-position:center center;background-size:100%;border-radius:100%;margin-right:0.7rem;background-color:#ebf8ff;border:1px solid #929fb1}.ibo-input-select--autocomplete-item-image.ibo-is-not-medallion{border:unset;border-radius:0;background-color:unset}.ibo-input-select-icon{display:inline-flex;text-align:left}.ibo-input-select-icon>img{max-height:100%;max-width:100%;padding-right:4px}.ibo-input-select-icon>span{overflow:hidden}.ibo-input-select-icon--menu{position:absolute;z-index:21;max-height:300px;overflow-x:hidden;overflow-y:auto;flex-wrap:nowrap}.ibo-input-select-icon--menu--item>*{width:100%;white-space:nowrap;overflow-x:hidden;text-overflow:ellipsis}.ibo-input-select-icon--menu--item>*>.ibo-input-select-icon--menu--icon{max-width:100%;max-height:100%;margin-right:10px}.ibo-input-one-way-password-wrapper>*:not(first-child){margin-top:6px}.ibo-input-set{flex-wrap:wrap;height:auto;min-height:30px}.ibo-input-set>input{height:auto}.ibo-input-set .item[data-value]>.remove{font-size:18px;padding-top:0.15em;border-left:none}.attribute-set .attribute-set-item,.selectize-control.multi .selectize-input.ibo-input-set .attribute-set-item,.selectize-control.multi .ibo-quick-create--input.selectize-control.single .ibo-input-set.selectize-input.input-active .attribute-set-item,.ibo-quick-create--input.selectize-control.single .selectize-control.multi .ibo-input-set.selectize-input.input-active .attribute-set-item{display:inline-flex;margin-top:1px;margin-right:0;margin-bottom:1px;padding:4px 6px;max-width:360px;background:white none;border:none;border-radius:3px;box-shadow:0 1px 1px rgba(0, 0, 0, 0.15), 0 0 1px 1px rgba(241, 241, 241, 0.7);color:#212934;text-shadow:none}.attribute-set .attribute-set-item:not(:first-child),.selectize-control.multi .selectize-input.ibo-input-set .attribute-set-item:not(:first-child),.selectize-control.multi .ibo-quick-create--input.selectize-control.single .ibo-input-set.selectize-input.input-active .attribute-set-item:not(:first-child),.ibo-quick-create--input.selectize-control.single .selectize-control.multi .ibo-input-set.selectize-input.input-active .attribute-set-item:not(:first-child){margin-left:3px}.attribute-set.history-added .attribute-set-item{font-weight:bold}.attribute-set.history-removed .attribute-set-item{text-decoration:line-through;font-style:italic}.selectize-control.multi .selectize-input.ibo-input-set,.selectize-control.multi .ibo-quick-create--input.selectize-control.single .ibo-input-set.selectize-input.input-active,.ibo-quick-create--input.selectize-control.single .selectize-control.multi .ibo-input-set.selectize-input.input-active{padding:0 8px}.ibo-input-text,textarea{width:100%;min-height:12rem;padding:10px 12px}.ibo-input-text.ibo-is-code,textarea.ibo-is-code{background-color:white}.ibo-input-text--export{width:100%;min-height:15em}.ibo-toggler--wrapper{position:relative;display:inline-block;width:36px;height:20px;vertical-align:baseline}.ibo-toggler--wrapper .ibo-toggler{display:none}.ibo-toggler--slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;border-radius:16px;background-color:#929fb1;transition:0.4s}.ibo-toggler--slider:before{content:"";position:absolute;left:3px;bottom:3px;height:15px;width:15px;border-radius:100%;background-color:#f8f9fa;transition:0.4s}.ibo-toggler--wrapper input:checked+.ibo-toggler--slider{background-color:#dd6c20}.ibo-toggler--wrapper input:disabled+.ibo-toggler--slider{background-color:#e1e7ec}.ibo-toggler--wrapper input:checked:disabled+.ibo-toggler--slider{background-color:#feebc8}input:focus+.ibo-toggler--slider{box-shadow:0 0 1px #dd6c20}input:checked+.ibo-toggler--slider:before{transform:translateX(14.5px)}label~.ibo-toggler--wrapper{margin-left:4px}.ibo-pill.ibo-is-new{color:#2a4265;background-color:#ebf8ff}.ibo-pill.ibo-is-neutral,.ui-dialog .ibo-pill.ui-button.ui-dialog-titlebar-close{color:#2a4265;background-color:#ebf8ff}.ibo-pill.ibo-is-waiting{color:#9c4221;background-color:floralwhite}.ibo-pill.ibo-is-success{color:#33691e;background-color:#dcedc8}.ibo-pill.ibo-is-failure{color:#9b2c2c;background-color:#fce8e8}.ibo-pill.ibo-is-frozen{color:#6e7a8a;background-color:#f8f9fa}.ibo-pill.ibo-is-active{color:#33691e;background-color:#dcedc8}.ibo-pill.ibo-is-inactive{color:#9c4221;background-color:floralwhite}.ibo-pill{--ibo-main-color--100: #ebf8ff;--ibo-main-color--900: #2a4265;max-width:240px;margin-top:4px;margin-bottom:4px;padding:6px 10px;border-radius:3px;color:var(--ibo-main-color--900);background-color:var(--ibo-main-color--100)}.ibo-pill:hover,.ibo-pill:active{color:inherit}.ibo-prop--apply{width:calc(32px + 12px);padding-left:12px}.ibo-prop--apply.ui-state-error:after{color:#404b5a;content:"";vertical-align:bottom}.ibo-prop--apply.ui-state-error>span{display:none !important}.ibo-prop--cancel{width:calc(32px + 8px);padding-left:8px}.ibo-prop--apply,.ibo-prop--cancel{height:28px}.ibo-prop--apply>span,.ibo-prop--cancel>span{display:block;height:28px;width:32px;text-align:center}.ibo-prop--apply>span>div,.ibo-prop--cancel>span>div{display:inline-flex;justify-content:center;align-items:center;width:100%;height:100%}.ibo-spinner.ibo-is-inline{display:inline-block}.ibo-spinner.ibo-is-inline>*{display:inline-block}.ibo-spinner.ibo-is-small,.ibo-spinner.ibo-is-medium,.ibo-spinner.ibo-is-large{display:flex;flex-direction:column}.ibo-spinner.ibo-is-small>.ibo-spinner--icon,.ibo-spinner.ibo-is-medium>.ibo-spinner--icon,.ibo-spinner.ibo-is-large>.ibo-spinner--icon{align-self:center;color:#929fb1}.ibo-spinner.ibo-is-small>.ibo-spinner--description,.ibo-spinner.ibo-is-medium>.ibo-spinner--description,.ibo-spinner.ibo-is-large>.ibo-spinner--description{align-self:center;color:#404b5a}.ibo-spinner.ibo-is-small>.ibo-spinner--description{margin-top:4px}.ibo-spinner.ibo-is-medium>.ibo-spinner--description{margin-top:8px}.ibo-spinner.ibo-is-large>.ibo-spinner--description{margin-top:16px}.ibo-title{color:#212934;padding:12px 0}.ibo-title--icon{width:90px;height:90px;min-width:90px;min-height:90px;overflow:hidden}.ibo-title--icon>.ibo-title--icon-level-2{width:80px;height:80px;min-width:80px;min-height:80px}.ibo-title--icon>.ibo-title--icon-level-3{width:70px;height:70px;min-width:70px;min-height:70px}.ibo-title--icon-img,.ibo-title--icon-background{width:100%;height:100%;object-position:center;object-fit:contain;background-size:contain}.ibo-title--icon-img--must-contain,.ibo-title--icon-background--must-contain{object-fit:contain;background-size:contain}.ibo-title--icon-img--must-cover,.ibo-title--icon-background--must-cover{object-fit:cover;background-size:cover}.ibo-title--icon-img--must-zoomout,.ibo-title--icon-background--must-zoomout{width:66.67%;height:66.67%}.ibo-title--subtitle{margin-top:2px;margin-bottom:2px;flex-wrap:wrap}.ibo-title-for-dashlet{padding-top:2em}.ibo-title-for-dashlet--content{background-color:white;border-radius:5px;border:1px solid;border-color:#ccd4db;padding-bottom:1em}.ibo-title-separator{border-radius:5px 5px 0 0;border-color:#3182ce;color:#3182ce;background-color:#3182ce;border:3px solid;margin:0;padding:0}:root{--ibo-datatable-panel--table-spacing: 48px}.ibo-datatable--toolbar{display:flex;justify-content:space-between;align-items:center;padding:0 6px;color:#404b5a}.ibo-datatable--toolbar:first-child{margin-bottom:18px}.ibo-datatable--toolbar:not(:first-child){margin-top:18px}.ibo-datatable--toolbar-left>*:not(:first-child),.ibo-datatable--toolbar-right>*:not(:first-child){margin-left:1rem}.ibo-datatable-header{color:#212934}.ibo-datatable-panel>.ibo-panel--body{padding:32px 0 24px}.ibo-datatable--selection-validation-buttons-toolbar{clear:both;margin-top:10px}.ibo-list-column{max-height:150px;overflow-y:auto}.ibo-sort-order::after{color:#dd6c20}.ibo-sort-order.ibo-is-descending::after{content:""}.ibo-sort-order.ibo-is-ascending::after{content:""}.ibo-sort-order.ibo-is-none::after{content:""}.itop-fieldsorter>.selected{background-color:#bee3f8}.ibo-datatable tbody>tr{transition:background-color 300ms linear}.ibo-datatable tbody>tr:hover,.ibo-datatable tbody>tr.selected:hover{cursor:pointer;background-color:#feebc8}.ibo-datatable tbody>tr.selected{background-color:#fbd38d}.ibo-datatable tbody>tr .ibo-datatable--row-actions-toolbar{justify-content:end}.ibo-datatable tbody>tr>[data-attribute-type="AttributeHTML"],.ibo-datatable tbody>tr>[data-attribute-type="AttributeText"],.ibo-datatable tbody>tr>[data-attribute-type="AttributeLongText"]{max-width:100%;overflow:auto}.ibo-datatable--selected-count,.ibo-datatable--result-count{padding-right:0.2em;padding-left:0.1em}.ibo-datatable[data-status="loading"]{margin-top:18px}.ibo-datatable[data-status="loading"] td,.ibo-datatable[data-status="loading"] th{position:relative;padding:10px 12px}.ibo-datatable[data-status="loading"] tr:nth-child(even){background-color:#f2f2f2}.ibo-datatable[data-status="loading"] th{border-bottom:1px solid #ccd4db}.ibo-datatableconfig--attributes-panel .ibo-multi-column .ibo-column:first-child{margin:8px 0;max-height:150px;overflow-y:scroll}.ibo-datatableconfig--attributes-panel--per-page--input{margin:0 4px;max-width:4em;display:initial}.ibo-datatableconfig--settings-panel .ibo-panel--body{display:flex;flex-direction:row}.ibo-datatableconfig--settings-panel--options-container{flex-grow:1}.ibo-datatableconfig--settings-panel--option{display:flex;flex-direction:row;align-items:first baseline;margin-right:4px}.ibo-prop-header{padding-bottom:14px}.help-text{padding:1px 5px;background-color:#d7e3f8;border:1px solid #c6e7f5;border-radius:5px;margin:5px 0;font-size:0.9em}.form-error ul{padding:1px 5px;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:5px;margin:5px 0;font-size:0.9em}.subform{background-color:#efefef;border-radius:5px;padding:10px}.form-buttons{margin:20px 0}.form select{padding:0;overflow-y:auto}.form select option{height:30px;display:flex;align-items:center}.turbo-refreshing{opacity:0.5}.ibo-field legend{margin-top:24px}collection-entry-element{margin-top:8px;display:block;padding:10px 10px;background-color:#f5f5f5;border-radius:5px}.ts-control{height:auto;min-height:30px}.ibo-form-actions>.ibo-button>span,.ui-dialog .ibo-form-actions>.ui-button>span,.ibo-form-actions>.ui-datepicker-current>span,.ibo-form-actions>.ui-datepicker-close>span{margin-right:5px}.ibo-form textarea{resize:vertical}.ibo-fieldset~.ibo-fieldset:not(.ibo-column),fieldset~.ibo-fieldset:not(.ibo-column),.ibo-fieldset~fieldset:not(.ibo-column){margin-top:48px}.ibo-multi-column~.ibo-fieldset,.ibo-multi-column~fieldset{margin-top:48px}.ibo-fieldset-legend,.ibo-dashboard-editor--properties-subtitle,.ibo-dashboard--available-dashlet--title,.ibo-dashlet--properties--title,legend{width:100%;margin-bottom:16px;padding-bottom:4px;border-bottom:2px solid #aebecd}.ibo-field{}.ibo-field:not([data-attribute-type="AttributeBlob"], [data-attribute-type="AttributeFile"], [data-attribute-type="AttributeImage"], [data-attribute-type="AttributeCustomFields"], [data-attribute-type="AttributeTagSet"], [data-attribute-type="AttributeEnumSet"], [data-attribute-type="AttributeLinkedSet"], [data-attribute-type="AttributeLinkedSetIndirect"], [data-attribute-type="AttributeClassAttCodeSet"], [data-attribute-type="AttributeQueryAttCodeSet"], .ibo-input-file-select--container){}.ibo-field:not([data-attribute-type="AttributeBlob"], [data-attribute-type="AttributeFile"], [data-attribute-type="AttributeImage"], [data-attribute-type="AttributeCustomFields"], [data-attribute-type="AttributeTagSet"], [data-attribute-type="AttributeEnumSet"], [data-attribute-type="AttributeLinkedSet"], [data-attribute-type="AttributeLinkedSetIndirect"], [data-attribute-type="AttributeClassAttCodeSet"], [data-attribute-type="AttributeQueryAttCodeSet"], .ibo-input-file-select--container) .ibo-field--value{word-break:break-word;white-space:inherit}.ibo-field:not([data-attribute-type="AttributeBlob"], [data-attribute-type="AttributeFile"], [data-attribute-type="AttributeImage"], [data-attribute-type="AttributeCustomFields"], [data-attribute-type="AttributeTagSet"], [data-attribute-type="AttributeEnumSet"], [data-attribute-type="AttributeLinkedSet"], [data-attribute-type="AttributeLinkedSetIndirect"], [data-attribute-type="AttributeClassAttCodeSet"], [data-attribute-type="AttributeQueryAttCodeSet"], .ibo-input-file-select--container) .ibo-field--value *:not(input, select, textarea){word-break:break-word;white-space:inherit}.ibo-field:not([data-attribute-type="AttributeBlob"], [data-attribute-type="AttributeFile"], [data-attribute-type="AttributeImage"], [data-attribute-type="AttributeCustomFields"], [data-attribute-type="AttributeTagSet"], [data-attribute-type="AttributeEnumSet"], [data-attribute-type="AttributeLinkedSet"], [data-attribute-type="AttributeLinkedSetIndirect"], [data-attribute-type="AttributeClassAttCodeSet"], [data-attribute-type="AttributeQueryAttCodeSet"], .ibo-input-file-select--container) .ibo-field--value pre{white-space:break-spaces}.ibo-field[data-attribute-type="AttributeImage"]>.ibo-field--value{display:grid}.ibo-field[data-attribute-type="AttributeImage"]>.ibo-field--value>span{display:inherit}.ibo-field[data-attribute-type="AttributeHTML"][data-attribute-flag-read-only="true"],.ibo-field[data-attribute-type="AttributeText"][data-attribute-flag-read-only="true"],.ibo-field[data-attribute-type="AttributeLongText"][data-attribute-flag-read-only="true"]{display:grid}.ibo-field[data-attribute-type="AttributeHTML"][data-attribute-flag-read-only="true"]>.ibo-field--value,.ibo-field[data-attribute-type="AttributeText"][data-attribute-flag-read-only="true"]>.ibo-field--value,.ibo-field[data-attribute-type="AttributeLongText"][data-attribute-flag-read-only="true"]>.ibo-field--value{max-width:100%;overflow:auto}.ibo-field-large{display:block}.ibo-field-large .ibo-field--label{position:relative;display:flex;align-items:center;max-width:initial;width:100%}.ibo-field-large .ibo-field-small .ibo-field--label{display:table-cell;vertical-align:top;padding-right:10px;min-width:100px;max-width:145px;width:30%}.ibo-field-large .ibo-field--value{margin-top:2px}.ibo-field-large .ibo-field--value>*{--ibo-scrollbar--scrollbar-track-background-color: #f2f2f2}.ibo-field-large.ibo-is-fullscreen{background-color:white}.ibo-field-large.ibo-is-fullscreen .ibo-field--label{position:fixed;width:100%;min-width:initial;max-width:initial;padding:4px 8px;background-color:#f8f9fa;border-bottom:1px solid #ccd4db}.ibo-field-large.ibo-is-fullscreen .ibo-field--value{padding:36px 8px 4px 8px}.ibo-field-large.ibo-is-fullscreen .ibo-field--value>*{height:initial !important;width:initial !important}.ibo-field-small{display:table;width:100%}.ibo-field-small .ibo-field--label{display:table-cell;vertical-align:top;padding-right:10px}.ibo-field--fullscreen-toggler{width:20px;height:20px;border-radius:5px;cursor:pointer}.ibo-field--fullscreen-toggler:hover{background-color:#f2f2f2}.ibo-field--label{min-width:100px;max-width:145px;width:30%;word-break:break-word}.ibo-field--label-small .ibo-field--label{width:20em}.ibo-field--value{width:100%;color:#404b5a}.ibo-field--value .HTML table{table-layout:fixed;width:100%}.ibo-field--label>.ibo-field--comments{flex:auto}.ibo-fieldset-legend>.ibo-field--comments,.ibo-dashboard-editor--properties-subtitle>.ibo-field--comments,.ibo-dashboard--available-dashlet--title>.ibo-field--comments,.ibo-dashlet--properties--title>.ibo-field--comments,legend>.ibo-field--comments{padding-bottom:2px;font-size:1.17rem}.ibo-field--comments{display:table-cell;vertical-align:top;width:5em}.ibo-field--comments>input[type="checkbox"]{margin-left:5px;float:right}.ibo-field--comments>.multi_values,.ibo-field--comments>.mono_value,.ibo-field--comments>.ibo-field--comments--synchro{float:right}.mailto,.tel{white-space:nowrap}.mailto .text_decoration,.tel .text_decoration{margin-right:0.5rem;font-size:0.9em}.object-ref-icon.text_decoration,.object-ref-icon-disabled.text_decoration{margin-right:0.5rem}.ibo-field--enable-bulk,.ibo-field--comments--synchro{display:inline;padding:2px 5px;margin:0 0 0 5px;height:calc(100% - 5px);border-radius:5px;font-weight:bold;white-space:nowrap}.ibo-field--enable-bulk--checkbox{margin-left:8px}.ibo-toolbar{display:flex;align-items:center}.ibo-toolbar.ibo-toolbar--action{position:relative}.ibo-toolbar.ibo-toolbar--button{margin-top:16px}.ibo-toolbar-spacer{flex-grow:1}.ibo-toolbar-vertical-separator{display:inline-flex;border-right:1px solid #aebecd;width:1px;height:16px;margin:0 0.75rem}.search_box{box-sizing:border-box;position:relative;z-index:1100;text-align:center}.search_box *{box-sizing:border-box}.search_form_handler{}.search_form_handler input[type="text"],.search_form_handler select{padding:1px 2px}.search_form_handler:not(.closed) .sf_title .sft_short{display:none}.search_form_handler:not(.closed) .sf_title .sft_toggler{transform:rotateX(180deg);transition:transform 0.5s linear}.search_form_handler.closed{margin-bottom:0.5em;width:150px;overflow:hidden;border-radius:4px}.search_form_handler.closed .sf_criterion_area{height:0;opacity:0;padding:0}.search_form_handler.closed .sf_title{padding:6px 8px;text-align:center;font-size:12px}.search_form_handler.closed .sf_title .sft_long{display:none}.search_form_handler.closed .sf_title .sft_hint,.search_form_handler.closed .sf_title .sfobs_hint{display:none}.search_form_handler:not(.no_auto_submit) .sft_hint{display:none}.search_form_handler:not(.no_auto_submit) .sfc_fg_apply{display:none}.search_form_handler.no_auto_submit .sfc_fg_search{display:none}.search_form_handler.no_auto_submit .sft_hint{display:inline-block}.search_form_handler:not(.hide_obsolete_data) .sfobs_hint{display:none}.search_form_handler.hide_obsolete_data .sfobs_hint{display:inline-block}.search_form_handler.hide_obsolete_data.no_auto_submit .sfobs_hint{margin-left:30px}.search_form_handler .sf_message{display:none;margin:8px 8px 0 8px;border-radius:0px}.search_form_handler .sf_criterion_area{padding:8px 8px 3px 8px}.search_form_handler .sf_criterion_area .sf_criterion_row:not(:first-child){margin-top:20px}.search_form_handler .sf_criterion_area .sf_criterion_row:not(:first-child)::before{content:"";position:absolute;top:-12px;left:0px;width:100%;border-top:1px solid #e1e7ec}.search_form_handler .sf_criterion_area .sf_criterion_row:not(:first-child)::after{content:"or";position:absolute;top:-20px;left:8px;padding-left:5px;padding-right:5px;color:#929fb1;background-color:white}.search_form_handler .sf_criterion_area .sf_criterion_row .sf_criterion_group{display:inline}.search_form_handler .sf_criterion_area .sf_criterion_row .sf_criterion_group .sfc_fg_button,.search_form_handler .sf_criterion_area .sf_criterion_row .sf_criterion_group .sfc_header{border:1px solid #d5dde5;border-radius:3px}.search_form_handler .sf_criterion_area .search_form_criteria,.search_form_handler .sf_criterion_area .sf_more_criterion,.search_form_handler .sf_criterion_area .sf_button{position:relative;display:inline-block;margin-right:10px;margin-top:3px;margin-bottom:3px;vertical-align:top}.search_form_handler .sf_criterion_area .search_form_criteria.opened,.search_form_handler .sf_criterion_area .sf_more_criterion.opened,.search_form_handler .sf_criterion_area .sf_button.opened{margin-bottom:0}.search_form_handler .sf_criterion_area .search_form_criteria.opened .sfc_header,.search_form_handler .sf_criterion_area .search_form_criteria.opened .sfm_header,.search_form_handler .sf_criterion_area .sf_more_criterion.opened .sfc_header,.search_form_handler .sf_criterion_area .sf_more_criterion.opened .sfm_header,.search_form_handler .sf_criterion_area .sf_button.opened .sfc_header,.search_form_handler .sf_criterion_area .sf_button.opened .sfm_header{border-bottom:none !important;padding-bottom:13px}.search_form_handler .sf_criterion_area .search_form_criteria>*,.search_form_handler .sf_criterion_area .sf_more_criterion>*,.search_form_handler .sf_criterion_area .sf_button>*{padding:7px 8px;vertical-align:top;border:solid 1px #d5dde5;border-radius:3px}.search_form_handler .sf_criterion_area .search_form_criteria .sfm_content,.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content,.search_form_handler .sf_criterion_area .sf_button .sfm_content{position:absolute;z-index:-1;min-width:100%;left:0px;margin-top:-1px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_fg_buttons,.search_form_handler .sf_criterion_area .search_form_criteria .sfm_buttons,.search_form_handler .sf_criterion_area .sf_more_criterion .sfc_fg_buttons,.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_buttons,.search_form_handler .sf_criterion_area .sf_button .sfc_fg_buttons,.search_form_handler .sf_criterion_area .sf_button .sfm_buttons{white-space:nowrap}.search_form_handler .sf_criterion_area .sf_more_criterion,.search_form_handler .sf_criterion_area .sf_button{min-width:34px;text-align:center}.search_form_handler .sf_criterion_area .search_form_criteria{}.search_form_handler .sf_criterion_area .search_form_criteria.locked{background-color:#d5dde5}.search_form_handler .sf_criterion_area .search_form_criteria.locked .sfc_title{user-select:none;cursor:initial}.search_form_handler .sf_criterion_area .search_form_criteria.draft .sfc_header,.search_form_handler .sf_criterion_area .search_form_criteria.draft .sfc_form_group{border-style:dashed;border-color:#929fb1}.search_form_handler .sf_criterion_area .search_form_criteria.draft .sfc_title{font-style:italic}.search_form_handler .sf_criterion_area .search_form_criteria.opened{z-index:1}.search_form_handler .sf_criterion_area .search_form_criteria.opened .sfc_toggle{transform:rotateX(-180deg)}.search_form_handler .sf_criterion_area .search_form_criteria.opened .sfc_form_group{display:flex;flex-direction:column;margin-top:-1px;z-index:-1}.search_form_handler .sf_criterion_area .search_form_criteria.opened_left .sfc_form_group{left:auto;right:0px}.search_form_handler .sf_criterion_area .search_form_criteria:not(:last-of-type){margin-right:12px}.search_form_handler .sf_criterion_area .search_form_criteria>*{background-color:#f2f2f2;color:#212934}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_toggle,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_close{position:absolute;top:7px;color:#dd6c20}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_locked{position:absolute;top:9px;color:#aebecd}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_toggle{display:inline-block;right:23px;transition:all 0.3s ease-in-out}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_close,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_locked{right:7px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_title{max-width:240px;padding-right:30px;white-space:nowrap;overflow-x:hidden;text-overflow:ellipsis;cursor:pointer}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_title .sfc_values{font-weight:bold}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group{position:absolute;display:none;max-width:450px;width:max-content;max-height:calc(min(512px, 50vh));overflow-x:auto;overflow-y:hidden}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators{display:flex;flex-direction:column;overflow:auto;min-height:0;font-size:12px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator.force_hide{display:none !important}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator>label{line-height:20px;white-space:nowrap}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator>label>*{display:inline-block;vertical-align:middle}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_radio{width:12px;margin:0;margin-right:7px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_name{width:96px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"]{display:unset;width:160px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices{display:flex;flex-direction:column;height:100%}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices label>input{vertical-align:text-top;margin-left:0;margin-right:8px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper{overflow-y:auto;margin:0 -8px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list{text-align:left}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list.sfc_opc_mc_items_selected{position:relative;padding-top:5px;margin-top:5px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list.sfc_opc_mc_items_selected::before{content:"";position:absolute;border-top:1px solid #d5dde5;width:calc(100% - 12px);margin-left:6px;top:0px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list .sfc_opc_mc_placeholder{padding:15px 8px;font-style:italic;text-align:center}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list .sfc_opc_mc_item{padding:4px 8px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list .sfc_opc_mc_item:hover{background-color:#e1e7ec}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list .sfc_opc_mc_item label{display:inline-block;width:100%}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items_hint{margin-top:15px;margin-bottom:15px;padding-left:9px;padding-right:9px;color:#6e7a8a;font-size:10px;font-style:italic}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items_hint>span{margin-right:0.5em;font-style:italic}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_search,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_apply,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_cancel{margin-top:8px;font-size:1rem}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_search,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_apply{margin-right:5px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_more,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_less{position:absolute;bottom:7px;right:0px;cursor:pointer;color:#2c5382;font-size:10px;font-weight:bold;border:none;background-color:transparent}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_more>span,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_less>span{margin-left:3px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operator:not(:first-of-type),.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operator:first-of-type .sfc_op_radio{display:none}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_less{display:none}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_more{display:inline-block}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .sfc_fg_operator{margin-bottom:3px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .sfc_fg_operator:last-of-type{margin-bottom:0}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .sfc_fg_operator:not(:first-of-type),.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .sfc_fg_operator:first-of-type .sfc_op_radio{display:inherit}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .sfc_fg_less{display:inline-block}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .sfc_fg_more{display:none}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .hide_on_advanced{display:none}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group:not(.advanced) .hide_on_less{display:none}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_raw>*{border-color:transparent}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_raw .sfc_title{cursor:initial;padding-right:20px}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_raw .sfc_form_group{display:none}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_enum .sfc_form_group .sfc_fg_operator_in{display:flex;flex-direction:column;height:100%;min-height:0}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_enum .sfc_form_group .sfc_fg_operator_in>label{display:flex;height:100%;min-height:0;width:100%;line-height:initial;white-space:nowrap}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_enum .sfc_form_group .sfc_fg_operator_in>label .sfc_op_content{width:100%}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_tag_set .sfc_form_group .sfc_fg_operator_in>label{display:inline-block;width:100%;line-height:initial;white-space:nowrap}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_tag_set .sfc_form_group .sfc_fg_operator_in>label .sfc_op_content{width:100%}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_numeric .sfc_fg_operators .sfc_fg_operator.sfc_fg_operator_between .sfc_op_content_from_outer{display:inline}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_numeric .sfc_fg_operators .sfc_fg_operator.sfc_fg_operator_between .sfc_op_content_until_outer{display:inline;margin-left:5px}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_numeric .sfc_fg_operators .sfc_fg_operator.sfc_fg_operator_between label.sfc_op_content_from_label,.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_numeric .sfc_fg_operators .sfc_fg_operator.sfc_fg_operator_between label.sfc_op_content_until_label{width:45px;display:inline-block}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_numeric .sfc_fg_operators .sfc_fg_operator.sfc_fg_operator_between input[type="text"]{width:77px}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date_time .sfc_form_group.advanced .sfc_fg_operator_between,.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date .sfc_form_group.advanced .sfc_fg_operator_between{margin-bottom:5px}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date_time .sfc_fg_operator_between_days input,.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date .sfc_fg_operator_between_days input{width:135px}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date_time button.ui-datepicker-trigger,.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date button.ui-datepicker-trigger{background:none;border:none;height:100%;padding:2px}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date_time button.ui-datepicker-trigger img,.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date button.ui-datepicker-trigger img{vertical-align:middle}.search_form_handler .sf_criterion_area .sf_more_criterion.opened{z-index:2}.search_form_handler .sf_criterion_area .sf_more_criterion.opened .sfm_content{display:inherit}.search_form_handler .sf_criterion_area .sf_more_criterion.opened_left .sfm_content{left:auto;right:0px}.search_form_handler .sf_criterion_area .sf_more_criterion>*{background-color:white;color:#37474f}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_toggler .sfm_tg_title{margin-right:7px}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_toggler .sfm_tg_icon{color:#dd6c20}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content{display:none;min-width:200px}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content .sfm_lists{margin:0 -8px;padding:0 8px;max-height:400px;overflow-x:hidden;overflow-y:auto}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content .sfm_lists .sfl_items>li:hover{background-color:#e1e7ec}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content .sfm_buttons{display:none}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content .sfm_buttons button{margin-top:8px;margin-right:5px;padding:3px 6px;font-size:11px}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content .sfm_buttons button:last-of-type{margin-right:0}.search_form_handler .sf_criterion_area .sf_button{cursor:pointer}.search_form_handler .sf_criterion_area .sf_button>*{background-color:white;color:#dd6c20}.search_form_handler .sf_list:not(:first-of-type) .sfl_title{border-top:1px solid #ccd4db;padding-top:8px;margin-top:5px}.search_form_handler .sf_list .sfl_title{font-weight:bold}.search_form_handler .sf_list .sfl_items{margin:5px -8px 0 -8px;padding:0;text-align:left}.search_form_handler .sf_list .sfl_items>li{padding:4px 8px;list-style:none;white-space:nowrap}.search_form_handler .sf_list .sfl_items>li:hover{background-color:#e1e7ec}.search_form_handler .sf_list .sfl_items>li.sfl_i_placeholder{font-style:italic;opacity:0.8}.search_form_handler .sf_list .sfl_items>li>label{display:inline-block;width:100%}.search_form_handler .sf_list .sfl_items>li>label>*{vertical-align:middle}.search_form_handler .sf_list .sfl_items>li>label>input[type="checkbox"]{margin-left:0;margin-right:8px}.search_form_handler .sf_filter{position:relative;margin-top:8px;margin-bottom:8px}.search_form_handler .sf_filter input,.search_form_handler .sf_filter button,.search_form_handler .sf_filter .sff_picto{vertical-align:middle;height:22px}.search_form_handler .sf_filter input,.search_form_handler .sf_filter button{border:1px solid #ABABAB}.search_form_handler .sf_filter input{width:100% !important}.search_form_handler .sf_filter button{width:23px;background-color:white;color:#dd6c20;font-size:10px}.search_form_handler .sf_filter button:first-of-type{margin-left:5px}.search_form_handler .sf_filter button:not(:first-of-type){border-left:transparent}.search_form_handler .sf_filter .sff_input_wrapper{position:relative}.search_form_handler .sf_filter .sff_input_wrapper input[type="text"]{display:unset}.search_form_handler .sf_filter .sff_input_wrapper .sff_picto{position:absolute;right:7px;top:3px;user-select:none;color:#404b5a}.search_form_handler .sf_filter .sff_input_wrapper .sff_reset{display:none}.search_form_handler .sf_filter .sff_input_wrapper input::-ms-clear{display:none}.search_form_handler .sf_filter.sf_with_buttons input{width:calc(100% - 28px) !important;min-width:120px}.sft_hint,.sfobs_hint,.sft_toggler{margin-left:8px;color:#404b5a}.sf_results_placeholder{margin-top:24px;text-align:center}.sf_results_placeholder button{margin-top:8px}.sf_results_placeholder button>span{margin-right:0.5em}.ibo-search-form-panel{z-index:3;margin-bottom:8px}.ibo-search-form-panel .ibo-panel--body{padding:18px 14px 10px;overflow:initial}.ibo-search-form-panel .ibo-panel--body::before{border-radius:5px 5px 0 0}#ibo-main-content .search_form_handler .sf_criterion_area{padding:0}.sfm_tg_title{display:none}.ibo-criterion-group:empty~.sf_more_criterion .sfm_tg_title{display:unset}.sf_results_area{z-index:1;margin-bottom:300px}.ibo-search-form-panel .ibo-panel--body.ibo-is-sticking{position:fixed;border-radius:0;border-bottom-color:transparent}.ibo-datatable-panel.ibo-is-sticking .ibo-panel--header,.ibo-datatable-panel.ibo-is-sticking .ibo-object-summary--header{z-index:0}.ibo-datatable-panel.ibo-is-sticking .ibo-datatable--toolbar{position:fixed;z-index:2;padding-bottom:4px;background-color:white;border-left:1px solid #ccd4db;border-right:1px solid #ccd4db}.ibo-datatable-panel.ibo-is-sticking .dataTables_scrollHead{position:fixed !important;z-index:2;background-color:white;border-left:1px solid #ccd4db !important;border-right:1px solid #ccd4db !important}.ibo-field-badge{display:inline-flex;align-items:baseline;margin:0;padding:4px 10px;border-radius:3px;background-color:var(--ibo-main-color);color:var(--ibo-complementary-color)}.ibo-field-badge--decoration+.ibo-field-badge--label{margin-left:0.5rem}.ibo-input-file-select--container .ibo-input-file-select .ibo-input-file-select--file-input{display:none}.ibo-input-file-select--container .ibo-input-file-select .ibo-input-file-select--file-name{margin-left:10px}.ibo-medallion-icon{display:flex;padding:13px 0}.ibo-medallion-icon--image{height:48px;width:48px;padding:2px;border-radius:100%;background-color:#bee3f8}.ibo-medallion-icon--description{display:inline-block;padding-left:8px}@keyframes decreaseHighlight{0%{height:100%}8%{border-radius:0 0 0 3px}100%{height:0}}.ibo-toast{display:inline-flex;position:fixed;align-items:center;max-width:calc(50% - 20px);padding:12px 8px 12px 16px;border-radius:3px;box-shadow:0 2px 4px rgba(0, 0, 0, 0.12), 0 3px 6px rgba(0, 0, 0, 0.15);transition:all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);z-index:2147483647}.ibo-toast::before{display:block;position:absolute;top:0;left:0;content:"";width:4px;height:100%;top:initial;bottom:0;border-radius:3px 0 0 3px}.ibo-toast.ibo-is-auto-closeable::before{animation:decreaseHighlight 5s linear forwards}.ibo-toast:hover::before{animation:none}.ibo-badge{display:inline-block;white-space:nowrap;padding:2px 4px;border-radius:4px}.ibo-badge.ibo-is-primary{background-color:floralwhite;color:#7b341e}.ibo-badge.ibo-is-secondary,.ui-dialog .ibo-badge.ui-button,.ibo-badge.ui-datepicker-current,.ibo-badge.ui-datepicker-close{background-color:#f8f9fa;color:#212934}.ibo-badge.ibo-is-neutral,.ui-dialog .ibo-badge.ui-button.ui-dialog-titlebar-close{background-color:#f8f9fa;color:#212934}.ibo-badge.ibo-is-information{background-color:#ebf8ff;color:#2a4265}.ibo-badge.ibo-is-success{background-color:#dcedc8;color:#33691e}.ibo-badge.ibo-is-failure{background-color:#fce8e8;color:#742a2a}.ibo-badge.ibo-is-warning{background-color:floralwhite;color:#7b341e}.ibo-badge.ibo-is-danger{background-color:#fce8e8;color:#742a2a}.ibo-badge.ibo-is-grey{background-color:#f8f9fa;color:#212934}.ibo-badge.ibo-is-blue-grey{background-color:#cfd8dc;color:#263238}.ibo-badge.ibo-is-blue{background-color:#ebf8ff;color:#2a4265}.ibo-badge.ibo-is-cyan{background-color:#c9eef2;color:#006164}.ibo-badge.ibo-is-green{background-color:#dcedc8;color:#33691e}.ibo-badge.ibo-is-orange{background-color:floralwhite;color:#7b341e}.ibo-badge.ibo-is-red{background-color:#fce8e8;color:#742a2a}.ibo-badge.ibo-is-pink{background-color:#fff5f7;color:#702459}:root{}.ibo-navigation-menu{position:relative;height:100vh}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--square-company-logo{display:none}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--full-company-logo{display:flex}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--silo-selection{display:inline-block}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--silo-visual-hint{display:none}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body{width:310px}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--toggler-bar:nth-child(1){top:4px;left:7px;width:14px;transform:rotateZ(-45deg)}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--toggler-bar:nth-child(2){top:8px;left:7px;width:0;opacity:0}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--toggler-bar:nth-child(3){top:12px;left:7px;width:14px;transform:rotateZ(45deg)}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--menu-group:not(.ibo-is-active):active{border-radius:16px}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part{padding:24px 0 12px}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--notifications .ibo-navigation-menu--notifications-toggler{display:none}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--user-info{height:100%}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--user-info .ibo-navigation-menu--user-welcome-message,.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--user-info .ibo-navigation-menu--user-notifications,.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--user-info .ibo-navigation-menu--user-organization{display:block}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--user-info .ibo-navigation-menu--user-picture{margin-top:-60px;width:72px;height:72px;border:solid 3px #263238}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--user-info .ibo-navigation-menu--user-picture .ibo-navigation-menu--user-picture--image{max-width:72px;max-height:72px}.ibo-navigation-menu.ibo-is-active .ibo-navigation-menu--drawer{right:calc(-1 * 312px)}.ibo-navigation-menu.ibo-is-filtered .ibo-navigation-menu--menu-filter-clear{display:block}.ibo-navigation-menu.ibo-is-filtered .ibo-navigation-menu--menu-nodes{margin-bottom:48px}.ibo-navigation-menu.ibo-is-filtered .ibo-navigation-menu--menu-nodes .ibo-navigation-menu--menu-nodes-title{margin-bottom:8px}.ibo-navigation-menu--body,.ibo-navigation-menu--drawer{height:100vh}.ibo-navigation-menu--body{z-index:1;display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;height:100vh;width:60px;background-color:#263238;transition:width 0.1s ease-in-out}.ibo-navigation-menu--top-part{z-index:2;min-height:120px;padding:12px 16px;overflow:hidden}.ibo-navigation-menu--middle-part{z-index:1;flex-grow:1;overflow-y:auto;padding:24px 16px 16px;scrollbar-width:thin;scrollbar-color:#d5dde5 rgba(255, 255, 255, 0)}.ibo-navigation-menu--middle-part::-webkit-scrollbar{width:5px}.ibo-navigation-menu--middle-part::-webkit-scrollbar-track{background-color:rgba(255, 255, 255, 0)}.ibo-navigation-menu--middle-part::-webkit-scrollbar-thumb{background-color:#d5dde5}.ibo-navigation-menu--bottom-part{z-index:2;padding-top:20px;padding-bottom:16px;height:126px;background-color:#404b5a;justify-content:space-between;flex-direction:column}.ibo-navigation-menu--toggler,.ibo-navigation-menu--menu-group{margin:calc(-1 * 10px) calc(-1 * 8px);padding:10px 8px;border-radius:5px}.ibo-navigation-menu--square-company-logo{display:flex;width:38px;height:38px;margin:0 -5px 44px}.ibo-navigation-menu--square-company-logo>img{object-fit:contain}.ibo-navigation-menu--full-company-logo{display:none;width:310px;height:70px;margin:0 0 12px -16px}.ibo-navigation-menu--full-company-logo>img{object-fit:contain;margin:0 auto}.ibo-navigation-menu--toggler{position:relative;display:inline-flex;width:44px}.ibo-navigation-menu--toggler:hover,.ibo-navigation-menu--toggler:active{background-color:#455a64}.ibo-navigation-menu--toggler:hover .ibo-navigation-menu--toggler-bar,.ibo-navigation-menu--toggler:active .ibo-navigation-menu--toggler-bar{background-color:white}.ibo-navigation-menu--toggler-icon{position:relative;display:flex;height:20px;width:28px}.ibo-navigation-menu--toggler-bar{position:absolute;display:block;height:3px;width:100%;opacity:1;transition:all 0.2s linear;background-color:#d5dde5}.ibo-navigation-menu--toggler-bar:nth-child(1){top:0}.ibo-navigation-menu--toggler-bar:nth-child(2){top:8px}.ibo-navigation-menu--toggler-bar:nth-child(3){top:16px}.ibo-navigation-menu--silo-selection{position:absolute;display:none;width:70%;margin-left:15px}.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ibo-input,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ibo-input,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ui-autocomplete-input,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ui-multiselect,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .dataTables_length select,.dataTables_length .ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider select,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ui_tpicker_hour_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ui_tpicker_minute_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ui_tpicker_second_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider select.ibo-input-select-placeholder,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ibo-datatableconfig--attributes-panel--per-page--input,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider input[type="text"],.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider input[type="text"],.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ibo-input,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ui-autocomplete-input,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ui-multiselect,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .dataTables_length select,.dataTables_length .ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider select,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ui_tpicker_hour_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ui_tpicker_minute_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ui_tpicker_second_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider select.ibo-input-select-placeholder,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ibo-datatableconfig--attributes-panel--per-page--input,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider input[type="text"],.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider input[type="text"],.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ibo-input,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ui-autocomplete-input,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ui-multiselect,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .dataTables_length select,.dataTables_length .ibo-navigation-menu--silo-selection .ui_tpicker_second_slider select,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ui_tpicker_hour_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ui_tpicker_minute_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ui_tpicker_second_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider select.ibo-input-select-placeholder,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ibo-datatableconfig--attributes-panel--per-page--input,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .ibo-navigation-menu--silo-selection .ui_tpicker_second_slider input[type="text"],.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .ibo-navigation-menu--silo-selection .ui_tpicker_second_slider input[type="text"],.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ui-autocomplete-input,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ui-multiselect,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .dataTables_length select,.dataTables_length .ibo-navigation-menu--silo-selection .ibo-input-wrapper select,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ui_tpicker_hour_slider>select,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ui_tpicker_minute_slider>select,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ui_tpicker_second_slider>select,.ibo-navigation-menu--silo-selection .ibo-input-wrapper select.ibo-input-select-placeholder,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ibo-datatableconfig--attributes-panel--per-page--input,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .ibo-navigation-menu--silo-selection .ibo-input-wrapper input[type="text"],.ibo-navigation-menu--silo-selection .ibo-input-wrapper .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .ibo-navigation-menu--silo-selection .ibo-input-wrapper input[type="text"]{padding-right:38px;overflow:hidden}.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ibo-input-select-autocomplete,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ibo-input-select-autocomplete,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ibo-input-select-autocomplete,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ibo-input-select-autocomplete{padding-right:60px}.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ibo-input-select-autocomplete~.ibo-input-select--action-button--search,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--search,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--search,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--search{margin-left:-42px}.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ibo-input-select-autocomplete~.ibo-input-select--action-button--clear,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--clear,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--clear,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--clear{margin-left:-72px}.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ibo-input-select-autocomplete~.ibo-input-select--action-button--hierarchy,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--hierarchy,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--hierarchy,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--hierarchy{margin-left:-60px}.ibo-navigation-menu--silo-visual-hint{position:absolute;top:2px;right:0;width:16px;height:16px;background-color:#e53e3e;border:2px solid #263238;border-radius:100%}.ibo-navigation-menu--menu-group{display:flex;justify-content:left;align-items:center;white-space:nowrap;overflow-x:hidden;color:#d5dde5;transition-property:background-color, color, padding, margin, border-radius;transition-duration:0.1s;transition-timing-function:linear}.ibo-navigation-menu--menu-group>.ibo-navigation-menu--menu-group-icon{display:flex}.ibo-navigation-menu--menu-group .ibo-navigation-menu--menu-group-title{flex-grow:1}.ibo-navigation-menu--menu-group:not(:last-child){margin-bottom:20px}.ibo-navigation-menu--menu-group:not(.ibo-is-active):hover,.ibo-navigation-menu--menu-group:not(.ibo-is-active):active{color:white;background-color:#455a64}.ibo-navigation-menu--menu-group:not(.ibo-is-active):active{border-radius:100%}.ibo-navigation-menu--menu-group.ibo-is-active{margin-right:calc(-2 * 8px);padding-right:calc(2 - 8px);color:#37474f;background-color:#f8f9fa;border-radius:5px 0 0 5px}.ibo-navigation-menu--menu-group.ibo-is-active .ibo-navigation-menu--menu-group-icon{color:#ea7d1e}.ibo-navigation-menu--menu-group-icon{width:28px;min-width:28px;justify-content:center;font-size:1.83rem}.ibo-navigation-menu--menu-group-icon::before{width:28px}.ibo-navigation-menu--menu-group-title{margin-left:16px;justify-content:left}.ibo-navigation-menu--drawer{position:absolute;z-index:-1;top:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;width:312px;padding:32px 20px;background-color:#f8f9fa;border-right:1px solid #d5dde5;transition:right 0.2s ease-in-out}.ibo-navigation-menu--menu-filter{position:relative}.ibo-navigation-menu--menu-filter-input{width:100%;padding:8px 10px;color:#212934;background-color:white;border:1px solid #d5dde5;border-radius:3px;padding-right:76px}.ibo-navigation-menu--menu-filter-input::placeholder{color:#6e7a8a}.ibo-navigation-menu--menu-filter-input:-ms-input-placeholder,.ibo-navigation-menu--menu-filter-input::-ms-input-placeholder{color:#6e7a8a}.ibo-navigation-menu--menu-filter-clear{display:none;position:absolute;top:8px;right:60px;padding:3px 3px}.ibo-navigation-menu--menu-filter-hotkey{position:absolute;top:6.5px;right:10px;border:1px solid #ccd4db;border-radius:3px;color:#6e7a8a;padding:2px 4px}.ibo-navigation-menu--menu-filter-hint{position:relative;margin-top:16px;padding-right:12px;color:#6e7a8a}.ibo-navigation-menu--menu-filter-hint-close{position:absolute;top:1px;right:2px}.ibo-navigation-menu--menu--placeholder{width:100%;margin-top:50px}.ibo-navigation-menu--menu--placeholder-image>svg{display:block;width:90%;height:auto;margin:auto}.ibo-navigation-menu--menu--placeholder-hint{margin-top:8px;text-align:center}.ibo-navigation-menu--menu-groups{overflow-y:auto;overflow-x:hidden;margin:50px calc(-1 * 20px) 0 calc(-1 * 20px);padding-left:20px;padding-right:20px;width:inherit}.ibo-navigation-menu--menu-nodes{display:none}.ibo-navigation-menu--menu-nodes ul li>a,.ibo-navigation-menu--menu-nodes ul li>span{margin:0 -10px;padding:6px 10px;border-radius:0;color:#6e7a8a}.ibo-navigation-menu--menu-nodes ul li>a{color:inherit}.ibo-navigation-menu--menu-nodes ul li>a:hover{background-color:#e1e7ec;border-radius:5px}.ibo-navigation-menu--menu-nodes ul ul{padding-left:20px}.ibo-navigation-menu--menu-nodes.ibo-is-active{display:block}.ibo-navigation-menu--menu-nodes-title{margin-top:0;margin-bottom:32px;word-break:break-word}.ibo-navigation-menu--menu-node-title{display:flex;justify-content:space-between;align-items:center}.ibo-navigation-menu--menu-node-counter{margin-left:8px;padding:2px 6px;width:34px;min-width:34px;text-align:center;background:#e1e7ec;border-radius:5px}.ibo-navigation-menu--notifications{position:relative;display:flex;flex-direction:column;align-content:center}.ibo-navigation-menu--notifications-toggler{position:relative;font-size:2rem;color:#929fb1}.ibo-navigation-menu--notifications-toggler:hover,.ibo-navigation-menu--notifications-toggler.ibo-is-loaded:hover{color:#f2f2f2}.ibo-navigation-menu--notifications-toggler.ibo-is-loaded{color:#d5dde5}.ibo-navigation-menu--notifications-toggler.ibo-is-loaded:not(.ibo-is-empty) .ibo-navigation-menu--notifications-toggler--new-messages{display:inline}.ibo-navigation-menu--notifications-toggler .ibo-navigation-menu--notifications-toggler--new-messages{top:-2px;right:-7px;width:16px;height:16px}.ibo-navigation-menu--user-notifications--toggler{position:relative}.ibo-navigation-menu--user-notifications--toggler.ibo-is-loaded{color:#d5dde5}.ibo-navigation-menu--user-notifications--toggler.ibo-is-loaded:not(.ibo-is-empty) .ibo-navigation-menu--notifications-toggler--new-messages{display:inline}.ibo-navigation-menu--user-notifications--toggler .ibo-navigation-menu--notifications-toggler--new-messages{top:-2px;right:-5px;width:10px;height:10px}.ibo-navigation-menu--notifications-toggler--new-messages{position:absolute;display:none;background-color:#e53e3e;border:2px solid #404b5a;border-radius:100%}.ibo-navigation-menu--user-info{justify-content:space-between;flex-direction:column}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-picture{width:36px;height:36px;overflow:hidden;background-color:#d5dde5;border-radius:100%}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-picture .ibo-navigation-menu--user-picture--image{display:flex;max-width:36px;max-height:36px}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-welcome-message,.ibo-navigation-menu--user-info .ibo-navigation-menu--user-organization,.ibo-navigation-menu--user-info .ibo-navigation-menu--user-notifications{display:none;text-align:center;color:white}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-welcome-message .ibo-navigation-menu--user-welcome-message--text,.ibo-navigation-menu--user-info .ibo-navigation-menu--user-welcome-message .ibo-navigation-menu--user-welcome-message--toggler{color:white}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-welcome-message--toggler{padding-left:6px}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-notifications .ibo-navigation-menu--user-notifications--text{color:white}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-notifications .ibo-navigation-menu--user-notifications--toggler--icon{padding-left:5px}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-organization{color:#ebf8ff}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container{position:absolute;bottom:10px}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ibo-popover-menu>.ibo-popover-menu--section:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ui-menu>.ibo-popover-menu--section:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ui-menu>.ui-multiselect-checkboxes:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ui-multiselect-menu>.ibo-popover-menu--section:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ui-multiselect-menu>.ui-multiselect-checkboxes:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ibo-input-select-icon--menu>.ibo-popover-menu--section:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ibo-input-select-icon--menu>.ui-multiselect-checkboxes:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .graph_config .toolkit_menu.graph>ul>li ul>.ibo-popover-menu--section:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .graph_config .toolkit_menu.graph>ul>li ul>.ui-multiselect-checkboxes:nth-child(odd),.graph_config .toolkit_menu.graph>ul>li .ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container ul>.ibo-popover-menu--section:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ibo-popover-menu>.ui-multiselect-checkboxes:nth-child(odd){background-color:#f8f9fa}:root{--ibo-top-bar--height: 54px;--ibo-top-bar--padding-left: 16px;--ibo-top-bar--padding-right: 16px;--ibo-top-bar--padding-y: 0;--ibo-top-bar--background-color: white;--ibo-top-bar--elements-spacing: 32px;--ibo-top-bar--quick-actions--margin-right: 32px}.ibo-top-bar{height:var(--ibo-top-bar--height);padding:var(--ibo-top-bar--padding-y) var(--ibo-top-bar--padding-right) var(--ibo-top-bar--padding-y) var(--ibo-top-bar--padding-left);background-color:var(--ibo-top-bar--background-color)}.ibo-top-bar .ibo-breadcrumbs{flex-grow:1;overflow-x:hidden}.ibo-top-bar--quick-actions{margin-right:var(--ibo-top-bar--quick-actions--margin-right)}.ibo-top-bar--toolbar-dashboard-title{max-width:350px}.ibo-top-bar--toolbar-dashboard-menu-toggler{display:flex;align-items:center}#ibo-center-container.ibo-center-container--with-side-content{display:flex;align-items:stretch}#ibo-center-container.ibo-center-container--with-side-content #ibo-main-content{flex-grow:1}.ibo-v-spacer{padding-top:1em}#ibo-side-content{background-color:white;border-left:1px solid #ccd4db}.ibo-details{margin-top:5px}.ibo-tab-container:not(.ibo-is-scrollable):not([data-status="loaded"]) .ibo-tab-container--tab-container:not(:first-child){display:none}.ibo-tab-container--tabs-list{position:relative;height:36px;background-color:#f8f9fa}.ibo-tab-container--tab-header,.ibo-tab-container--extra-tabs-container{color:#404b5a}.ibo-tab-container--tab-header:hover:not(.ui-state-disabled),.ibo-tab-container--extra-tabs-container:hover:not(.ui-state-disabled){color:#2c5382;background-color:#e1e7ec}.ibo-tab-container--tab-header.ui-tabs-active,.ui-tabs-active.ibo-tab-container--extra-tabs-container{color:#2c5382}.ibo-tab-container--tab-toggler,.ibo-tab-container--extra-tabs-list-toggler{padding-left:24px;padding-right:24px}.ibo-tab-container--extra-tabs-container{position:absolute;top:0;bottom:0;right:0;background-color:#f8f9fa}.ibo-tab-container--extra-tabs-list-toggler{padding-left:12px;padding-right:12px}.ibo-tab-container--extra-tabs-list{position:fixed;z-index:10;max-height:300px;display:flex;flex-direction:column;overflow-y:auto;background-color:#f8f9fa;border-radius:3px}.ibo-tab-container--extra-tab-toggler{padding:8px 16px;max-width:220px;color:#6e7a8a;overflow-x:clip}.ibo-tab-container--extra-tab-toggler:hover,.ibo-tab-container--extra-tab-toggler:active{color:#2c5382;background-color:#e1e7ec}.ibo-tab-container--extra-tab-toggler--tooltip-title{margin-bottom:16px}.ibo-tab-container--tab-container{padding:32px 32px;overflow-x:auto}.ibo-tab-container--tab-container-list.ibo-is-scrollable .ibo-tab-container--tab-container:not(:first-child:nth-last-child(2)) .ibo-tab-container--tab-container--label{display:block}.ibo-tab-container--tab-container-list.ibo-is-scrollable .ibo-tab-container--tab-container{min-height:auto}.ibo-tab-container--tab-container-list.ibo-is-scrollable .ibo-tab-container--tab-container:last-child:not(:only-child){min-height:60vh}.ibo-tab-container--tab-container--label{display:none;margin-bottom:20px;overflow-x:hidden}.ibo-tab-container--tab-container--label>span{position:relative;padding-left:20px;margin-left:40px;color:#929fb1}.ibo-tab-container--tab-container--label>span::before,.ibo-tab-container--tab-container--label>span::after{content:"";display:inline-block;position:absolute;top:calc(50% - (2px / 2));height:1px;width:10000px;border-top:2px solid #929fb1}.ibo-tab-container--tab-container--label>span::before{right:100%}.ibo-tab-container--tab-container--label>span::after{left:100%;margin-left:20px}.ibo-tab--temporary-remote-content{position:relative}.ibo-tab--temporary-remote-content--placeholder{position:relative;height:auto;max-height:300px;text-align:center}.ibo-tab--temporary-remote-content--placeholder>svg{max-width:calc(300px * 5.4);max-height:300px}.ibo-tab--temporary-remote-content--button{position:absolute;top:0;display:flex;justify-content:center;align-content:center;flex-direction:column;text-align:center;height:100%;width:100%;cursor:pointer;background-color:transparent;color:#404b5a}.ibo-tab--temporary-remote-content--button:hover{opacity:0.5;background-color:#212934;color:#e1e7ec}.ibo-multi-column{display:flex;flex-wrap:wrap;margin:0 -16px;row-gap:48px}.ibo-column{min-width:300px;flex-grow:1;flex-shrink:1;padding:0 16px;flex-basis:10%}.ibo-column:not(:last-child) .ibo-column:not(.ibo-without-margin){margin-bottom:48px}.ibo-mini-column{min-width:30px;flex-grow:1;flex-shrink:1;padding:0 16px;flex-basis:10%;display:flex;flex-direction:column}.ibo-mini-column>.ibo-button,.ui-dialog .ibo-mini-column>.ui-button,.ibo-mini-column>.ui-datepicker-current,.ibo-mini-column>.ui-datepicker-close{margin-left:0;margin-right:0}.ibo-mini-column:not(:last-child){margin-bottom:48px}.ibo-dashboard--top-bar{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px}.ibo-dashboard--top-bar .ibo-dashboard--top-bar-toolbar{display:flex;align-items:center}.ibo-dashboard--selector{display:flex;align-items:center;margin-left:12px;margin-right:1}.ibo-dashboard--selector:hover{background-color:#f8f9fa;border-radius:4px}.ibo-dashboard--selector .selector-label{display:inline-block;margin-left:10px;margin-right:10px;vertical-align:super}.ibo-dashboard--grid{width:100%}.ibo-dashboard--grid-row{display:flex;flex-direction:row;justify-content:space-between;overflow:hidden}.ibo-dashboard--grid-row:not(:last-child){padding-bottom:calc(24px / 2)}.ibo-dashboard--grid-row:not(:first-child){padding-top:calc(24px / 2)}.ibo-dashboard--grid-column{display:flex;flex-flow:row wrap;align-items:flex-start;align-content:flex-start;width:calc(100% + (2 * 24px));margin:calc(-1 * 24px / 2) calc(-1 * 24px / 2);min-width:0}.ibo-dashboard--grid-column:not(:last-child){margin-right:0}.ibo-dashboard--grid-column:not(:first-child){margin-left:0}.ibo-dashboard--grid-column.edit_mode{margin:1px;border:2px #ccd4db dashed;width:100%;min-height:40px}.ibo-dashboard--switch{position:relative;display:inline-block;width:30px;height:24px;vertical-align:baseline}.ibo-dashboard--switch input{display:none}.ibo-dashboard--slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0}.ibo-dashboard--slider:before{content:"";font-size:0.83rem;color:#404b5a;position:absolute;right:5px;bottom:3px}.ibo-dashboard--slider:after{content:"";font-size:1.17rem;color:#dd6c20;position:absolute;left:6px;bottom:1px}input:checked+.ibo-dashboard--slider:before{content:""}input:checked+.ibo-dashboard--slider:after{content:""}.ibo-dashboard-editor--pane{flex-grow:1;padding:16px 30px 16px 15px;overflow:auto}.ibo-dashboard-editor--available-dashlet-icon{display:inline-block;height:34px;width:34px;margin:2px 5px;cursor:grab}.ibo-dashboard-editor--available-dashlet-icon:active{cursor:move}.ibo-dashboard-editor--properties,.ibo-dashboard--available-dashlets,.ibo-dashlet--properties{display:flex;flex-direction:column;padding-bottom:20px}.ibo-dashboard-editor--properties table,.ibo-dashboard--available-dashlets table,.ibo-dashlet--properties table{width:100%;text-align:left}.ibo-dashboard-editor--properties table td,.ibo-dashboard-editor--properties table th,.ibo-dashboard--available-dashlets table td,.ibo-dashboard--available-dashlets table th,.ibo-dashlet--properties table td,.ibo-dashlet--properties table th{margin-bottom:14px}.ibo-dashboard-editor--properties-title{padding-bottom:2rem}.ibo-dashboard-editor--layout-list{display:flex;justify-content:center;padding-bottom:12px}.ibo-dashboard-editor--layout-list>.ui-button{display:inline-block;height:auto;margin:0 15px 0 5px}.ibo-dashboard--available-dashlets--list{display:flex;justify-content:center;flex-wrap:wrap}#dashboard_editor{display:flex;flex-direction:row;padding:0}#dashboard_editor>.itop-dashboard{resize:horizontal;overflow:scroll;border-right:solid 1px #e1e7ec;padding:16px 15px 16px 30px}.ibo-dashboard-editor--delete-dashlet-icon{position:absolute;top:7px;right:9px;padding:2px 6px;z-index:21}.ibo-dashboard-editor .itop-dashboard a{cursor:not-allowed}.ibo-wizard-container{padding:10px 16px;background:#bee3f8;border-radius:3px;border-left:3px solid #3182ce}.ibo-object-details.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header .ibo-panel--header-left,.ibo-object-details.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header .ibo-panel--header-left{margin-left:32px;padding-left:96px}.ibo-object-details.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header .ibo-panel--header-left .ibo-panel--icon,.ibo-object-details.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header .ibo-panel--header-left .ibo-panel--icon{bottom:calc(-1 * 96px / 2 + -12px);width:96px;height:96px;min-width:96px;min-height:96px}.ibo-object-details.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header .ibo-panel--header-left .ibo-panel--titles,.ibo-object-details.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header .ibo-panel--header-left .ibo-panel--titles{padding-left:32px}.ibo-object-details--status-dot{width:10px;height:10px;min-width:10px;min-height:10px;border-radius:100%}.ibo-object-details--status-dot+.ibo-object-details--status-label{margin-left:8px}.ibo-object-details--status+.ibo-object-details--object-class{margin-left:0.5rem;display:inline-flex}.ibo-object-details--status+.ibo-object-details--object-class::before{content:"("}.ibo-object-details--status+.ibo-object-details--object-class::after{content:")"}.ibo-object-details--tag{color:#404b5a}.ibo-object-details--tag:not(:first-child){margin-left:12px}.ibo-object-details--tag-icon{margin-right:6px;color:#6e7a8a}.ibo-object-details--object-class~.ibo-object-details--tag::before,.ibo-object-details--tag~.ibo-object-details--tag::before{content:" ";display:inline-block;vertical-align:middle;margin-right:12px;width:5px;height:5px;border-radius:100%;background-color:#404b5a}.ibo-object-details.ibo-has-sticky-header>.ibo-panel--header,.ibo-object-details.ibo-has-sticky-header>.ibo-object-summary--header{}.ibo-object-details.ibo-has-sticky-header>.ibo-panel--header.ibo-is-sticking .ibo-object-details--object-class,.ibo-object-details.ibo-has-sticky-header>.ibo-is-sticking.ibo-object-summary--header .ibo-object-details--object-class{display:none}.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header,.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header{}.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header.ibo-is-sticking .ibo-panel--header-left,.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--header-left{padding-left:48px}.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header.ibo-is-sticking .ibo-panel--header-right,.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--header-right{padding-right:8px}.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header.ibo-is-sticking .ibo-panel--titles,.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--titles{padding-left:32px}.ibo-object-summary.ibo-has-medallion-icon .ibo-panel--titles{padding-left:16px}.ibo-object-summary>.ibo-panel--body{display:flex;flex-direction:column;padding:0;max-height:40vh;box-shadow:0 3px 6px rgba(0, 0, 0, 0.1), 0 10px 20px rgba(0, 0, 0, 0.15)}.ibo-object-summary--header{margin:8px 0 0 0;padding:8px 0;background-color:#f8f9fa;border-bottom:solid 1px #ccd4db}.ibo-object-summary--header .ibo-panel--icon{overflow:hidden;background-color:#f8f9fa;border:1px solid #90a4ae;border-radius:100%}.ibo-object-summary--header .ibo-panel--header-left{margin-left:16px}.ibo-object-summary--header .ibo-panel--header-right{align-self:start;margin-right:16px;margin-left:8px}.ibo-object-summary--body{overflow:auto}.ibo-object-summary--content--attributes{display:table;width:calc(100% - (2 * 16px));margin:16px 16px 24px 16px}.ibo-object-summary--content--attributes--code,.ibo-object-summary--content--attributes--value{display:table-cell}.ibo-activity-panel{position:relative;display:flex;flex-direction:column;width:480px;height:100%;transition:width 0.2s ease-in-out}.ibo-activity-panel.ibo-is-expanded{width:60vw}.ibo-activity-panel.ibo-is-expanded .ibo-activity-panel--expand-icon{display:none}.ibo-activity-panel:not(.ibo-is-expanded) .ibo-activity-panel--reduce-icon{display:none}.ibo-activity-panel.ibo-is-closed{width:32px}.ibo-activity-panel.ibo-is-closed .ibo-activity-panel--header,.ibo-activity-panel.ibo-is-closed .ibo-activity-panel--body,.ibo-activity-panel.ibo-is-closed .ibo-activity-panel--add-caselog-entry-button{display:none}.ibo-activity-panel.ibo-is-closed .ibo-activity-panel--closed-cover{display:inherit}.ibo-activity-panel--header{position:relative;background-color:#f8f9fa}.ibo-activity-panel--header .ibo-activity-panel--togglers a{color:#404b5a}.ibo-activity-panel--togglers{display:flex;align-items:center}.ibo-activity-panel--actions{display:flex;align-items:center;flex-grow:0;position:sticky;padding-right:16px;background-color:#f8f9fa;color:#929fb1}.ibo-activity-panel--actions:hover{color:#404b5a}.ibo-activity-panel--actions>*:not(:first-child){margin-left:0.75rem}.ibo-activity-panel--tabs-togglers{display:flex;align-items:center;justify-content:safe center;flex-grow:1;padding-left:48px;overflow-x:auto}.ibo-activity-panel--tab-toggler.ibo-is-active .ibo-activity-panel--tab-title{background-color:#e1e7ec}.ibo-activity-panel--tab-toggler.ibo-is-active .ibo-activity-panel--tab-title-messages-count{display:none}.ibo-activity-panel--tab-toggler.ibo-is-draft .ibo-activity-panel--tab-title-draft-indicator{display:initial}.ibo-activity-panel--tab-toggler-for-caselog-1 .ibo-activity-panel--tab-title-decoration{background-color:#689f38}.ibo-activity-panel--tab-toggler-for-caselog-2 .ibo-activity-panel--tab-title-decoration{background-color:#b83280}.ibo-activity-panel--tab-toggler-for-caselog-3 .ibo-activity-panel--tab-title-decoration{background-color:#f6ae55}.ibo-activity-panel--tab-toggler-for-caselog-4 .ibo-activity-panel--tab-title-decoration{background-color:#3182ce}.ibo-activity-panel--tab-toggler-for-caselog-5 .ibo-activity-panel--tab-title-decoration{background-color:#80deea}.ibo-activity-panel--tab-toggler-for-caselog-6 .ibo-activity-panel--tab-title-decoration{background-color:#c5e1a5}.ibo-activity-panel--tab-toggler-for-caselog-7 .ibo-activity-panel--tab-title-decoration{background-color:#fbb6ce}.ibo-activity-panel--tab-title{padding:8px 16px}.ibo-activity-panel--tab-title:hover{background-color:#e1e7ec}.ibo-activity-panel--tab-title-decoration{display:inline-flex;margin-right:8px;width:12px;height:12px;border-radius:3px}.ibo-activity-panel--tab-title-messages-count{display:inline-block;margin-left:8px;background-color:#e1e7ec;padding:0 4px;border-radius:3px}.ibo-activity-panel--tab-title-messages-count[data-messages-count="0"]{display:none}.ibo-activity-panel--tab-title-draft-indicator{display:none;margin-left:8px}.ibo-activity-panel--tab-title-text{max-width:100px}.ibo-activity-panel--tab-toolbar{display:none;flex-direction:column;padding-left:10px;padding-right:10px;background-color:#e1e7ec}.ibo-activity-panel--tab-toolbar.ibo-is-active{display:flex}.ibo-activity-panel--tab-toolbar-actions{justify-content:space-between;flex-wrap:nowrap;margin:4px 0;height:32px}.ibo-activity-panel--tab-toolbar-left-actions .ibo-activity-panel--tab-toolbar-action:not(:first-child)::before{content:"-";margin:0 8px}.ibo-activity-panel--tab-toolbar-middle-actions .ibo-activity-panel--tab-toolbar-action>input{margin-right:8px}.ibo-activity-panel--tab-toolbar-middle-actions .ibo-activity-panel--tab-toolbar-action:not(:first-child){margin-left:18px}.ibo-activity-panel--tab-toolbar-right-actions .ibo-activity-panel--tab-toolbar-info{color:#212934}.ibo-activity-panel--tab-toolbar-right-actions .ibo-activity-panel--tab-toolbar-info>.ibo-activity-panel--tab-toolbar-info-icon{margin-left:8px}.ibo-activity-panel--tab-toolbar-right-actions .ibo-activity-panel--tab-toolbar-info:not(:first-child){margin-left:16px}.ibo-activity-panel--tab-toolbar-action{position:relative;color:#212934}.ibo-activity-panel--filter{cursor:pointer}.ibo-activity-panel--filter-options-toggler{padding-left:0.5rem;color:#212934}.ibo-activity-panel--filter-options-toggler.ibo-is-closed{transform:rotateX(180deg)}.ibo-activity-panel--filter-options-toggler.ibo-is-closed+.ibo-activity-panel--filter-options{display:none}.ibo-activity-panel--filter-options{position:absolute;z-index:1;display:flex;flex-direction:column;top:24px;left:-12px;max-width:200px;padding:8px 12px;background-color:#e1e7ec;border-radius:3px}.ibo-activity-panel--filter-option{cursor:pointer}.ibo-activity-panel--filter-option:not(:first-child){margin-top:8px}.ibo-activity-panel--filter-option-input{margin-right:0.5rem}.ibo-activity-panel--body{flex-grow:1;overflow:auto;padding:16px 16px}.ibo-activity-panel--body--placeholder{margin-top:16px}.ibo-activity-panel--body--placeholder-image>svg{width:250px;height:inherit}.ibo-activity-panel--body--placeholder-hint{margin-top:16px;color:#404b5a}.ibo-activity-panel--add-caselog-entry-button{position:absolute;z-index:1;right:12px;top:88px;width:36px;height:36px;background-color:#dd6c20;color:white;border-radius:100%;box-shadow:0 1px 2px rgba(0, 0, 0, 0.25), 0 1px 3px rgba(0, 0, 0, 0.12)}.ibo-activity-panel--add-caselog-entry-button>i{text-align:center;height:100%;width:100%;font-size:1.33rem;line-height:33px}.ibo-activity-panel--add-caselog-entry-button:hover{color:white;background-color:#ea7d1e;box-shadow:0 2px 4px rgba(0, 0, 0, 0.12), 0 3px 6px rgba(0, 0, 0, 0.15)}.ibo-activity-panel--add-caselog-entry-button:active{color:white;background-color:#c05621}.ibo-activity-panel--add-caselog-entry-button.ibo-is-hidden{display:none}.ibo-activity-panel .ibo-activity-panel--entry-forms-confirmation-dialog{display:none}.ibo-activity-panel--entry-forms-confirmation-explanation{margin-bottom:16px}.ibo-activity-panel--entry-forms-confirmation-preference-input{margin-right:0.5rem}.ibo-activity-panel--closed-cover{display:none;position:absolute;z-index:2;top:0;bottom:0;left:0;right:0;background-color:#f8f9fa;cursor:pointer}.ibo-activity-panel--closed-content-container{transform:rotateZ(-90deg);white-space:nowrap}.ibo-activity-panel--open-icon{margin-left:0.75rem}.ibo-caselog-entry-form{display:block;width:100%;background-color:#e1e7ec}.ibo-caselog-entry-form.ibo-is-closed{display:none}.ibo-caselog-entry-form--actions{display:flex;justify-content:space-between;margin-top:8px;margin-bottom:8px}.ibo-caselog-entry-form--lock-indicator{margin-top:12px}.ibo-caselog-entry-form--lock-icon{width:32px;min-width:32px;height:32px;min-height:32px;color:#fcfcfd;background-color:#404b5a;border-radius:100%}.ibo-caselog-entry-form--lock-message{margin-left:1rem}.ibo-caselog-entry-form--action-buttons--main-actions{}.ibo-caselog-entry-form--action-buttons--main-actions>.ibo-popover-menu,.ibo-caselog-entry-form--action-buttons--main-actions>.ui-menu,.ibo-caselog-entry-form--action-buttons--main-actions>.ui-multiselect-menu,.ibo-caselog-entry-form--action-buttons--main-actions>.ibo-input-select-icon--menu,.graph_config .toolkit_menu.graph>ul>li .ibo-caselog-entry-form--action-buttons--main-actions>ul{z-index:1}.ibo-activity-panel--entry-group:not(:last-child){margin-bottom:24px}.ibo-activity-entry{display:flex;flex-direction:row;align-items:flex-end}.ibo-activity-entry:not(:last-child) .ibo-activity-entry--medallion{visibility:hidden}.ibo-activity-entry:not(:last-child) .ibo-activity-entry--sub-information{margin-bottom:4px}.ibo-activity-entry.ibo-is-current-user{flex-direction:row-reverse;min-width:min-content}.ibo-activity-entry.ibo-is-current-user .ibo-activity-entry--medallion{margin-right:initial;margin-left:8px}.ibo-activity-entry.ibo-is-current-user .ibo-activity-entry--information{margin-right:0;margin-left:40px}.ibo-activity-entry.ibo-is-current-user .ibo-activity-entry--main-information{background-color:#ebf8ff}.ibo-activity-entry.ibo-is-current-user .ibo-activity-entry--sub-information{text-align:right}.ibo-activity-entry.ibo-is-current-user:last-child .ibo-activity-entry--main-information{border-bottom-right-radius:0;border-bottom-left-radius:5px}.ibo-activity-entry:not(.ibo-is-current-user){}.ibo-activity-entry:not(.ibo-is-current-user) .ibo-activity-entry--information{margin-right:40px;margin-left:0}.ibo-activity-entry:not(.ibo-is-current-user):last-child .ibo-activity-entry--main-information{border-bottom-right-radius:5px;border-bottom-left-radius:0}.ibo-activity-entry.ibo-is-closed .ibo-activity-entry--main-information{max-height:48px;overflow:hidden;cursor:pointer}.ibo-activity-entry.ibo-is-closed .ibo-activity-entry--main-information::after{content:"...";position:absolute;top:30px;left:0;padding-left:16px;width:100%;height:100%;background-color:inherit}.ibo-activity-entry--medallion{margin-right:8px;margin-bottom:18px;min-width:32px;width:32px;min-height:32px;height:32px;overflow:hidden;border-radius:100%}.ibo-activity-entry--medallion.ibo-has-image{background-color:#ebf8ff;box-shadow:inset 0 1px 2px 0 rgba(0, 0, 0, 0.25)}.ibo-activity-entry--medallion:not(.ibo-has-image){background-color:#546e7a;color:white;border:1px solid #e1e7ec}.ibo-activity-entry--medallion .ibo-activity-entry--author-picture{max-height:100%}.ibo-activity-entry--main-information{position:relative;display:flex;flex-direction:row;align-items:baseline;padding:12px 16px;color:#404b5a;background-color:#e1e7ec;border-radius:5px}.ibo-activity-entry--main-information-icon{margin-right:16px;color:#6e7a8a;font-size:1.33rem}.ibo-activity-entry--main-information-content{flex-grow:1;word-break:break-word}.ibo-activity-entry--main-information-content a{color:#2b6bb0}.ibo-activity-entry--main-information-content a:hover{color:#2a4265}.ibo-activity-entry--main-information-content a:active,.ibo-activity-entry--main-information-content a:focus{color:#2a4265}.ibo-activity-entry--sub-information{margin-top:4px;text-align:left;color:#6e7a8a}.ibo-activity-entry--sub-information>*:not(:last-child):after{content:" ";display:inline-block;vertical-align:middle;margin-left:0.5rem;margin-right:0.5rem;width:4px;height:4px;border-radius:100%;background-color:#929fb1}.ibo-activity-panel--load-more-entries-container{position:relative}.ibo-activity-panel--load-more-entries-container:hover .ibo-activity-panel--load-all-entries{margin-left:84px}.ibo-activity-panel--load-more-entries-container:not(:hover) .ibo-activity-panel--load-all-entries{visibility:hidden}.ibo-activity-panel--load-entries-button{width:32px;height:32px;border-radius:100%;background-color:#e1e7ec;border:1px solid #ccd4db}.ibo-activity-panel--load-more-entries{z-index:1}.ibo-activity-panel--load-all-entries{position:absolute;z-index:0;top:0;margin-left:0;transition:all 0.1s ease-in-out}.ibo-caselog-entry{}.ibo-caselog-entry .ibo-activity-entry--main-information{padding-top:12px;padding-bottom:12px}.ibo-caselog-entry .ibo-activity-entry--main-information-icon{display:none}.ibo-caselog-entry .ibo-activity-entry--main-information::before{content:"";position:absolute;top:0;bottom:0;width:3px}.ibo-caselog-entry:not(.ibo-is-current-user) .ibo-activity-entry--main-information::before{left:0;border-top-left-radius:5px;border-bottom-left-radius:5px}.ibo-caselog-entry:not(.ibo-is-current-user):last-child .ibo-activity-entry--main-information::before{border-bottom-left-radius:0}.ibo-caselog-entry.ibo-is-current-user .ibo-activity-entry--main-information::before{right:0;border-top-right-radius:5px;border-bottom-right-radius:5px}.ibo-caselog-entry.ibo-is-current-user:last-child .ibo-activity-entry--main-information::before{border-bottom-right-radius:0}.ibo-caselog-entry.ibo-is-closed.ibo-is-current-user .ibo-activity-entry--main-information::after{width:calc(100% - 3px)}.ibo-caselog-entry.ibo-is-closed:not(.ibo-is-current-user) .ibo-activity-entry--main-information::after{margin-left:3px}.ibo-caselog-entry--entry-for-caselog-1 .ibo-activity-entry--main-information::before{background-color:#689f38}.ibo-caselog-entry--entry-for-caselog-2 .ibo-activity-entry--main-information::before{background-color:#b83280}.ibo-caselog-entry--entry-for-caselog-3 .ibo-activity-entry--main-information::before{background-color:#f6ae55}.ibo-caselog-entry--entry-for-caselog-4 .ibo-activity-entry--main-information::before{background-color:#3182ce}.ibo-caselog-entry--entry-for-caselog-5 .ibo-activity-entry--main-information::before{background-color:#80deea}.ibo-caselog-entry--entry-for-caselog-6 .ibo-activity-entry--main-information::before{background-color:#c5e1a5}.ibo-caselog-entry--entry-for-caselog-7 .ibo-activity-entry--main-information::before{background-color:#fbb6ce}.ibo-transition-entry--original-state-label{color:#404b5a;text-decoration:line-through}a.ibo-edits-entry--short-description{position:relative;display:block;color:inherit}.ibo-edits-entry--long-description-toggler-icon{position:absolute;top:3px;right:0;transition:all 0.2s ease-in-out}.ibo-edits-entry--long-description{display:none;margin-top:8px;list-style:inside}.ibo-edits-entry:not(.ibo-is-closed) .ibo-edits-entry--long-description-toggler-icon{transform:rotateX(180deg)}.ibo-edits-entry:not(.ibo-is-closed) .ibo-edits-entry--long-description{display:block}a.ibo-notification-entry--short-description{color:inherit}.ibo-notification-entry--long-description-toggler-icon{margin-left:12px;transition:all 0.2s ease-in-out}.ibo-notification-entry--long-description{display:none;margin-top:8px;list-style:inside}.ibo-notification-entry:not(.ibo-is-closed) .ibo-notification-entry--long-description-toggler-icon{transform:rotateX(180deg)}.ibo-notification-entry:not(.ibo-is-closed) .ibo-notification-entry--long-description{display:block}.ibo-extension-details{display:inline-flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%}.ibo-extension-details--information{flex-grow:1;display:flex;flex-direction:column}.ibo-extension-details--actions{display:flex}.ibo-extension-details--information--metadata{color:#6e7a8a}.ibo-extension-details--information--metadata span+span:before{content:"-";padding-left:4px;padding-right:4px}.ibo-extension-details:has(> .ibo-extension-details--actions input:is([type="checkbox"], [type="radio"]):checked)>.ibo-extension-details--information>.ibo-extension-details--information--label .ibo-badge.unchecked{display:none}.ibo-extension-details:has(> .ibo-extension-details--actions input[type="checkbox"]:not(:checked))>.ibo-extension-details--information>.ibo-extension-details--information--label .ibo-badge.checked,.ibo-extension-details:has(> .ibo-extension-details--actions input[type="radio"]:not(:checked))>.ibo-extension-details--information>.ibo-extension-details--information--label .ibo-badge.checked{display:none}.ibo-extension-details--actions>button{padding:3px 9px}.ibo-extension-details--actions:has(.toggler-install:not(:disabled)) .ibo-popover-menu--section a[data-resource-id="force_uninstall"],.ibo-extension-details--actions:has(.toggler-install:not(:disabled)) .ui-multiselect-checkboxes a[data-resource-id="force_uninstall"]{display:none}.ibo-extension-details .ibo-popover-menu~.ibo-button,.ibo-extension-details .ui-menu~.ibo-button,.ibo-extension-details .ui-dialog .ui-menu~.ui-button,.ui-dialog .ibo-extension-details .ui-menu~.ui-button,.ibo-extension-details .ui-menu~.ui-datepicker-current,.ibo-extension-details .ui-menu~.ui-datepicker-close,.ibo-extension-details .ui-multiselect-menu~.ibo-button,.ibo-extension-details .ui-dialog .ui-multiselect-menu~.ui-button,.ui-dialog .ibo-extension-details .ui-multiselect-menu~.ui-button,.ibo-extension-details .ui-multiselect-menu~.ui-datepicker-current,.ibo-extension-details .ui-multiselect-menu~.ui-datepicker-close,.ibo-extension-details .ibo-input-select-icon--menu~.ibo-button,.ibo-extension-details .ui-dialog .ibo-input-select-icon--menu~.ui-button,.ui-dialog .ibo-extension-details .ibo-input-select-icon--menu~.ui-button,.ibo-extension-details .ibo-input-select-icon--menu~.ui-datepicker-current,.ibo-extension-details .ibo-input-select-icon--menu~.ui-datepicker-close,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul~.ibo-button,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li .ui-dialog ul~.ui-button,.ui-dialog .ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul~.ui-button,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul~.ui-datepicker-current,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul~.ui-datepicker-close,.graph_config .toolkit_menu.graph>ul>li .ibo-extension-details ul~.ibo-button,.ibo-extension-details .ui-dialog .ibo-popover-menu~.ui-button,.ui-dialog .ibo-extension-details .ibo-popover-menu~.ui-button,.ibo-extension-details .ibo-popover-menu~.ui-datepicker-current,.ibo-extension-details .ibo-popover-menu~.ui-datepicker-close{visibility:hidden}.ibo-extension-details .ibo-popover-menu:has(.ibo-popover-menu--item)~.ibo-button,.ibo-extension-details .ibo-popover-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ibo-button,.ibo-extension-details .ui-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ibo-button,.ibo-extension-details .ui-dialog .ui-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ui-dialog .ibo-extension-details .ui-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ibo-extension-details .ui-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-current,.ibo-extension-details .ui-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-close,.ibo-extension-details .ui-multiselect-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ibo-button,.ibo-extension-details .ui-dialog .ui-multiselect-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ui-dialog .ibo-extension-details .ui-multiselect-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ibo-extension-details .ui-multiselect-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-current,.ibo-extension-details .ui-multiselect-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-close,.ibo-extension-details .ibo-input-select-icon--menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ibo-button,.ibo-extension-details .ui-dialog .ibo-input-select-icon--menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ui-dialog .ibo-extension-details .ibo-input-select-icon--menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ibo-extension-details .ibo-input-select-icon--menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-current,.ibo-extension-details .ibo-input-select-icon--menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-close,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ibo-button,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li .ui-dialog ul:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ui-dialog .ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-current,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-close,.graph_config .toolkit_menu.graph>ul>li .ibo-extension-details ul:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ibo-button,.ibo-extension-details .ui-dialog .ibo-popover-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ui-dialog .ibo-extension-details .ibo-popover-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ibo-extension-details .ibo-popover-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-current,.ibo-extension-details .ibo-popover-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-close,.ibo-extension-details .ui-menu:has(.ibo-popover-menu--item)~.ibo-button,.ibo-extension-details .ui-dialog .ui-menu:has(.ibo-popover-menu--item)~.ui-button,.ui-dialog .ibo-extension-details .ui-menu:has(.ibo-popover-menu--item)~.ui-button,.ibo-extension-details .ui-menu:has(.ibo-popover-menu--item)~.ui-datepicker-current,.ibo-extension-details .ui-menu:has(.ibo-popover-menu--item)~.ui-datepicker-close,.ibo-extension-details .ui-multiselect-menu:has(.ibo-popover-menu--item)~.ibo-button,.ibo-extension-details .ui-dialog .ui-multiselect-menu:has(.ibo-popover-menu--item)~.ui-button,.ui-dialog .ibo-extension-details .ui-multiselect-menu:has(.ibo-popover-menu--item)~.ui-button,.ibo-extension-details .ui-multiselect-menu:has(.ibo-popover-menu--item)~.ui-datepicker-current,.ibo-extension-details .ui-multiselect-menu:has(.ibo-popover-menu--item)~.ui-datepicker-close,.ibo-extension-details .ibo-input-select-icon--menu:has(.ibo-popover-menu--item)~.ibo-button,.ibo-extension-details .ui-dialog .ibo-input-select-icon--menu:has(.ibo-popover-menu--item)~.ui-button,.ui-dialog .ibo-extension-details .ibo-input-select-icon--menu:has(.ibo-popover-menu--item)~.ui-button,.ibo-extension-details .ibo-input-select-icon--menu:has(.ibo-popover-menu--item)~.ui-datepicker-current,.ibo-extension-details .ibo-input-select-icon--menu:has(.ibo-popover-menu--item)~.ui-datepicker-close,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ibo-popover-menu--item)~.ibo-button,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li .ui-dialog ul:has(.ibo-popover-menu--item)~.ui-button,.ui-dialog .ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ibo-popover-menu--item)~.ui-button,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ibo-popover-menu--item)~.ui-datepicker-current,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ibo-popover-menu--item)~.ui-datepicker-close,.graph_config .toolkit_menu.graph>ul>li .ibo-extension-details ul:has(.ibo-popover-menu--item)~.ibo-button,.ibo-extension-details .ui-dialog .ibo-popover-menu:has(.ibo-popover-menu--item)~.ui-button,.ui-dialog .ibo-extension-details .ibo-popover-menu:has(.ibo-popover-menu--item)~.ui-button,.ibo-extension-details .ibo-popover-menu:has(.ibo-popover-menu--item)~.ui-datepicker-current,.ibo-extension-details .ibo-popover-menu:has(.ibo-popover-menu--item)~.ui-datepicker-close{visibility:visible}.ibo-extension-details .ibo-toggler--wrapper:has(.ibo-toggler.ibo-is-hidden){visibility:hidden}.ibo-bulk--bulk-modify--incompatible-attribute:before{margin-right:4px;content:"";color:#429ae1}#form_part_csv_options:has(#ibo-sanitize-excel-export--input:checked) #ibo-sanitize-excel-export--alert,#form_part_xlsx_options:has(#ibo-sanitize-excel-export--input:checked) #ibo-sanitize-excel-export--alert{display:none}.ibo-block-csv textarea{width:100%;min-height:10em;margin-top:10px}.ibo-block-list--empty-text,.ibo-block-list--create-action{text-align:center}.ibo-block-list--create-icon{margin-right:0.5rem}.ibo-linked-set--bulk-tooltip-info:before{margin-right:4px;content:"";color:#429ae1}.ibo-table-preview{margin-top:20px;overflow-x:auto}.ibo-table-preview th{position:relative;padding:4px 24px 4px 4px;border-width:1px 1px 0;border-style:groove groove none;background:#f2f2f2}.ibo-table-preview td{padding-right:4px;padding-left:4px;border-width:0 1px;border-style:none groove}.ibo-table-preview tr:last-child td{border-bottom-width:1px;border-bottom-style:groove}.ibo-preview-header{margin-bottom:4px}.ibo-table-preview--remove-column{position:absolute;top:8px;right:8px;display:inline-block;cursor:pointer;font-size:8px}#form_part_interactive_fields_xlsx,#form_part_interactive_fields_csv,#form_part_interactive_fields_pdf{margin-top:24px}.ibo-welcome-popup--dialog.ui-dialog-content{padding:0 0;height:auto !important;max-height:80vh !important}.ibo-welcome-popup--messages-stack{min-width:300px;max-width:300px;padding:24px 16px;overflow-y:auto;background-color:#f8f9fa}.ibo-welcome-popup--messages-stack>*:not(:first-child){margin-top:12px}.ibo-welcome-popup--stack-item{padding:12px 16px;background-color:white;border:1px solid #d5dde5}.ibo-welcome-popup--stack-item.ibo-is-active{border-color:#929fb1}.ibo-welcome-popup--stack-item.ibo-is-acknowledged{opacity:0.6}.ibo-welcome-popup--stack-item.ibo-is-acknowledged.ibo-is-active{opacity:1}.ibo-welcome-popup--stack-item-icon{width:32px;height:32px;min-width:32px;min-height:32px;margin-right:12px;border-width:1px}.ibo-welcome-popup--message-content-wrapper{overflow:auto}.ibo-welcome-popup--message-content{display:flex;justify-content:space-between;align-items:center;padding:32px 48px}.ibo-welcome-popup--message-content .ibo-welcome-popup--message-illustration{margin-left:48px}.ibo-welcome-popup--message-content:not(.ibo-is-active){display:none}.ibo-welcome-popup--message-content.ibo-is-illustration-on-left-side{flex-direction:row-reverse}.ibo-welcome-popup--message-content.ibo-is-illustration-on-left-side .ibo-welcome-popup--message-illustration{margin-left:unset;margin-right:48px}.ibo-welcome-popup--message-title{margin-bottom:32px}.ibo-welcome-popup--message-illustration{display:flex;min-width:256px;aspect-ratio:1;background-size:contain}.ibo-welcome-popup--message-illustration>svg{height:auto}.ibo-user-rights{padding:4px 12px;border-radius:4px}.ibo-user-rights.ibo-is-success{background-color:#dcedc8;color:#235816;border:1px solid #8ac34a}.ibo-user-rights.ibo-is-failure{background-color:#fce8e8;color:#491d1d;border:1px solid #f56565}:root{--ibo-dm-class--User--main-color: #546e7a;--ibo-dm-class--User--complementary-color: white}.ibo-dm-class--User{--ibo-main-color: #546e7a;--ibo-main-color--100: #eaeef0;--ibo-main-color--900: #1f292d;--ibo-complementary-color: white}.ibo-dm-class-alt--User{--ibo-main-color: white;--ibo-complementary-color: #546e7a}:root{--ibo-dm-enum--User-status-enabled--main-color: #689f38;--ibo-dm-enum--User-status-enabled--complementary-color: white}.ibo-dm-enum--User-status-enabled{--ibo-main-color: #689f38;--ibo-main-color--100: #edf6e5;--ibo-main-color--900: #253914;--ibo-complementary-color: white}.ibo-dm-enum-alt--User-status-enabled{--ibo-main-color: white;--ibo-complementary-color: #689f38}:root{--ibo-dm-enum--User-status-disabled--main-color: #f6ae55;--ibo-dm-enum--User-status-disabled--complementary-color: white}.ibo-dm-enum--User-status-disabled{--ibo-main-color: #f6ae55;--ibo-main-color--100: #fdefdd;--ibo-main-color--900: #492a04;--ibo-complementary-color: white}.ibo-dm-enum-alt--User-status-disabled{--ibo-main-color: white;--ibo-complementary-color: #f6ae55}:root{--ibo-dm-class--Action--main-color: #546e7a;--ibo-dm-class--Action--complementary-color: white}.ibo-dm-class--Action{--ibo-main-color: #546e7a;--ibo-main-color--100: #eaeef0;--ibo-main-color--900: #1f292d;--ibo-complementary-color: white}.ibo-dm-class-alt--Action{--ibo-main-color: white;--ibo-complementary-color: #546e7a}:root{--ibo-dm-enum--Action-status-enabled--main-color: #689f38;--ibo-dm-enum--Action-status-enabled--complementary-color: white}.ibo-dm-enum--Action-status-enabled{--ibo-main-color: #689f38;--ibo-main-color--100: #edf6e5;--ibo-main-color--900: #253914;--ibo-complementary-color: white}.ibo-dm-enum-alt--Action-status-enabled{--ibo-main-color: white;--ibo-complementary-color: #689f38}:root{--ibo-dm-enum--Action-status-disabled--main-color: #e1e7ec;--ibo-dm-enum--Action-status-disabled--complementary-color: #6e7a8a}.ibo-dm-enum--Action-status-disabled{--ibo-main-color: #e1e7ec;--ibo-main-color--100: #e9eef1;--ibo-main-color--900: #1e272f;--ibo-complementary-color: #6e7a8a}.ibo-dm-enum-alt--Action-status-disabled{--ibo-main-color: #6e7a8a;--ibo-complementary-color: #e1e7ec}:root{--ibo-dm-enum--Action-status-test--main-color: #f6ae55;--ibo-dm-enum--Action-status-test--complementary-color: white}.ibo-dm-enum--Action-status-test{--ibo-main-color: #f6ae55;--ibo-main-color--100: #fdefdd;--ibo-main-color--900: #492a04;--ibo-complementary-color: white}.ibo-dm-enum-alt--Action-status-test{--ibo-main-color: white;--ibo-complementary-color: #f6ae55}.ibo-about-box--top-part{display:flex;flex-direction:row;align-content:center}.ibo-about-box--top-part>div{padding:16px 12px;margin:auto auto;width:50%}:root{--ibo-body-text-color: #212934;--ibo-body-background-color: #f2f2f2}html{height:100vh}body{display:flex;height:100vh;color:var(--ibo-body-text-color);background-color:var(--ibo-body-background-color)}#ibo-navigation-menu{z-index:20}#ibo-page-container{position:relative;z-index:10;height:100%;overflow:auto;flex-grow:1;display:flex;flex-direction:column}#ibo-top-bar,#ibo-main-content{padding-left:36px;padding-right:36px}#ibo-top-container{z-index:20;position:sticky;top:0;left:0;right:0}#ibo-center-container{position:relative;z-index:10;flex-grow:1;overflow:hidden}#ibo-center-container>*{height:100%}#ibo-main-content{padding-top:16px;padding-bottom:16px;overflow:auto}#ibo-main-content>.ibo-panel{margin-left:auto;margin-right:auto}.ibo-preferences--user-preferences--picture-placeholder{display:flex;flex-direction:row;flex-wrap:wrap}.ibo-preferences--user-preferences--picture-placeholder--image{height:54px;width:54px;border-radius:100%;margin:12px;border:solid 3px #d5dde5}.ibo-preferences--user-preferences--picture-placeholder--image>img{border-radius:100%;background-color:#d5dde5}.ibo-preferences--user-preferences--picture-placeholder--image.ibo-is-active{border-color:#2c5382}.ibo-preferences--user-preferences--picture-placeholder--image:hover{border-color:#3182ce}#ibo-form-for-user-interface-preferences>.ibo-keyboard-shortcut--shortcut{display:table;width:100%}#ibo-form-for-user-interface-preferences>.ibo-keyboard-shortcut--shortcut>*:not(.ibo-button){width:30%;display:table-cell}.ibo-keyboard-shortcut--input,.ibo-keyboard-shortcut--input:focus{display:inline-block;width:auto;text-transform:capitalize;text-align:center;color:#404b5a;background-color:transparent;border:1px solid #aebecd;border-bottom:2px solid #aebecd;border-radius:3px;padding:2px 4px;margin-bottom:5px}.ibo-keyboard-shortcut--input.ibo-is-focus,.ibo-keyboard-shortcut--input:focus.ibo-is-focus{text-transform:none;color:#9c4221;border-color:#dd6c20}#ibo-favorite-organizations .ibo-toolbar{float:right;vertical-align:top}#ibo-favorite-organizations .ibo-datatable--toolbar{padding-top:3px}#ibo-attachment--upload-file .ibo-input-file-select--container{display:inline-block}.ibo-attachment--datatable--icon-preview{max-height:44px;max-width:44px}.ibo-attachment--datatable tbody tr td{vertical-align:middle}.ibo-attachment--upload-file--drop-zone-hint{display:none}.ibo-drag-in{border:2px #ccd4db dashed}.ibo-drag-in .ibo-attachment--upload-file--drop-zone-hint{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;max-height:200px;margin:22px 0;color:#6e7a8a}.ibo-drag-in .ibo-attachment--upload-file--drop-zone-hint>svg{margin-bottom:5px}.ibo-drag-in #ibo-attachment--upload-file--upload-button-container{display:none}.ibo-tab-container--tab-header.ibo-drag-in,.ibo-drag-in.ibo-tab-container--extra-tabs-container{border:none;background-color:#bee3f8;color:#2c5382}.ibo-tab-container--tab-header.ibo-drag-in>a::after,.ibo-drag-in.ibo-tab-container--extra-tabs-container>a::after{content:"";padding-left:8px;color:#3182ce}.itop-simple-graph{margin-top:10px;border:1px dotted transparent;border-radius:5px}.itop-simple-graph.ibo-has-focus{border:1px dotted #404b5a}.graph_zoom{display:flex;float:right;align-items:center}.graph_zoom_slider{height:1.1em;display:inline-block;width:10em}.graph_zoom_plus,.graph_zoom_minus{cursor:pointer;display:inline-block;margin-left:0.5em;margin-right:0.5em}.graph_config{display:flex;align-items:center;flex-wrap:wrap}.graph_config .toolkit_menu.graph>ul>li{position:relative}.graph_config .toolkit_menu.graph>ul>li ul{z-index:1;position:absolute;display:none}.graph_separator{flex-grow:1}.ibo-simple-graph--grouping-threshold--container,.ibo-simple-graph--additional-context--container{margin-right:0.3em;display:flex;align-items:center}.ibo-simple-graph--grouping-threshold--container>*,.ibo-simple-graph--additional-context--container>*{margin-right:1em}#graph_grouping_threshold{width:auto;padding-right:0}.ibo-display-graph--search-box .sf_criterion_area{display:flex;flex-direction:column}.ibo-display-graph--search-box .sf_criterion_row{display:flex;flex-wrap:wrap;align-items:center}.ibo-display-graph--search-box .sf_criterion_row>div{align-items:center;display:flex;padding:0 15px}.ibo-display-graph--search-box .sf_criterion_row>div>input{margin-right:10px}.ibo-display-graph--search-box .sf_criterion_row>div .ibo-medallion-icon{display:flex;align-items:center}.ibo-display-graph--search-box #ReloadMovieBtn{align-self:flex-end}#impacted_objects_lists>div~div{margin-top:24px}#impacted_objects_lists_placeholder,#impacted_groups_placeholder{height:256px}.ibo-audit--audit-category--panel .ibo-panel--body tr.ibo-is-red td:last-of-type:before{background-color:#c53030}.ibo-audit--audit-category--panel .ibo-panel--body tr.ibo-is-orange td:last-of-type:before{background-color:#c05621}.ibo-audit--audit-category--panel .ibo-panel--body tr.ibo-is-green td:last-of-type:before{background-color:#558b2f}.ibo-audit--audit-category--panel .ibo-panel--body{padding:10px 16px}.ibo-audit--audit-category--panel .ibo-panel--body .ibo-datatable td:not(:nth-child(1)),.ibo-audit--audit-category--panel .ibo-panel--body .ibo-datatable th:not(:nth-child(1)){text-align:right;width:100px}.ibo-audit--audit-category--panel .ibo-panel--body .ibo-datatable--toolbar{display:none}.ibo-audit--audit-category--panel .ibo-panel--body tr td:last-of-type:before{content:"";height:12px;width:12px;border-radius:100%;display:inline-block;margin-right:5px;vertical-align:middle}.ibo-audit--dashboard{padding:18px 0}.ibo-dashboard--grid-row+.ibo-audit--error-alert{margin-top:24px}.ibo-audit--audit-line--csv-download{height:2.5em;vertical-align:middle}.ibo-data-synchro-source--replicas-status.ibo-is-grey{color:#212934;background-color:#ccd4db}.ibo-data-synchro-source--replicas-status.ibo-is-orange{color:#7b341e;background-color:#fbd38d}.ibo-data-synchro-source--replicas-status.ibo-is-bluegrey{color:#263238;background-color:#b0bec5}.ibo-data-synchro-source--replicas-status.ibo-is-red{color:#742a2a;background-color:#feb2b2}.ibo-data-synchro-source--replicas-status.ibo-is-blue{color:#2a4265;background-color:#bee3f8}.ibo-data-synchro-source--replicas-status.ibo-is-green{color:#33691e;background-color:#dcedc8}.ibo-data-synchro-source--replicas-status.ibo-is-cyan{color:#006164;background-color:#c9eef2}.ibo-data-synchro-source--replicas-status-separator{border-top:white}.ibo-data-synchro-source--replicas-status.ibo-is-light{opacity:0.5}.ibo-data-synchro-source--replicas-status.ibo-is-light:hover{opacity:1}.synoptics tr td{padding:10px;min-width:200px;vertical-align:middle;text-align:center}.synoptics tr td.arrow{min-width:100px;border-top:2px solid #fcfcfd}.ibo-data-synchro-source--replicas-status--warning{margin:0 5px 0 8px}.ibo-datamodel-viewer--details .ibo-datamodel-viewer--empty{display:flex;flex-direction:column;align-items:center}.ibo-datamodel-viewer--details .ibo-datamodel-viewer--empty svg{width:max(20%, 384px)}.ibo-datamodel-viewer--breadcrumb{margin:4px 0}.ibo-datamodel-viewer--breadcrumb .ibo-button,.ibo-datamodel-viewer--breadcrumb .ui-dialog .ui-button,.ui-dialog .ibo-datamodel-viewer--breadcrumb .ui-button,.ibo-datamodel-viewer--breadcrumb .ui-datepicker-current,.ibo-datamodel-viewer--breadcrumb .ui-datepicker-close{text-transform:none}.ibo-datamodel-viewer--classname{color:#546e7a}.ibo-datamodel-viewer--tag--category{color:#37474f}.ibo-datamodel-viewer--tag--category .ibo-object-details--tag-icon{color:#546e7a}.ibo-datamodel-viewer--icon--abstract:after{content:"A";display:inline-flex;justify-content:center;align-items:center;width:15px;height:15px;line-height:14px;border-radius:50%;border:1px solid #00bbd4;color:white;background-color:#00bbd4}.ibo-datamodel-viewer--parent--spacer{padding:0 8px}.ibo-datamodel-viewer--classes-list .selectize-input,.ibo-datamodel-viewer--classes-list .ibo-quick-create--input.selectize-control.single .selectize-input.input-active,.ibo-quick-create--input.selectize-control.single .ibo-datamodel-viewer--classes-list .selectize-input.input-active{background-color:white !important;background-image:none !important;color:#404b5a;box-shadow:none !important;border-color:#aebecd !important}#ibo-datamodel-viewer--attributes-table>tbody tr td:first-child{width:3px}.ibo-datamodel-viewer--origin-cell{vertical-align:middle}.ibo-datamodel-viewer--origin-cell>div{height:8px;width:8px;border-radius:100%}.ibo-datamodel-viewer--classes-list{position:relative;height:100%;width:384px;padding-left:24px;padding-top:8px;overflow-y:scroll}.ibo-datamodel-viewer--lifecycle--code{color:#6e7a8a}.ibo-datamodel-viewer--lifecycle--stimuli{color:#2a4265}.ibo-datamodel-viewer--lifecycle--attribute-option{color:#702459}.dataModelSchema g{cursor:pointer}.dataModelSchema g:hover rect:not(.liseret){fill:#ccd4db}.dataModelSchema text{fill:#212934;text-anchor:middle}#selfreferencing:hover~g>.selfattr{fill:#ccd4db}.tooltipD3{position:fixed;text-align:center;background:white;border:1px solid #6e7a8a;border-radius:3px;pointer-events:none;fill:#212934;text-anchor:middle}.tooltipD3 i{font-size:1rem}.tooltipD3 span{margin:3px}#tooltipD3_top{border-bottom:1px solid #6e7a8a;padding:3px}.ibo-datamodel-viewer--lifecycle-image{margin-bottom:16px}#tabs1-import .ibo-field--label{max-width:50%}div.ibo-csv-import--cell-modified{font-weight:bold;color:#2b6bb0}div.ibo-csv-import--cell-error{font-weight:bold;color:#c53030}div.ibo-csv-import--cell-message{padding-top:3px}tr.ibo-csv-import--row-unchanged td{border-bottom:1px #ccd4db solid}.wizContainer table tr.ibo-csv-import--row-error td{border-bottom:1px #ccd4db solid;background-color:#fed7d7}tr.ibo-csv-import--row-modified td{border-bottom:1px #ccd4db solid}tr.ibo-csv-import--row-added td{border-bottom:1px #ccd4db solid}.ibo-csv-import--download-file{font-size:4em;color:#f6ae55;margin:20px}.ibo-global-search--result--title>img{max-height:48px;max-width:48px;margin-right:8px}.ibo-run-query--highlight{background-color:#fbd38d}.ibo-oauth-wizard .ibo-panel--body .ibo-oauth-wizard--form--container{display:flex;flex-direction:row;flex-grow:1}.ibo-oauth-wizard .ibo-panel--body .ibo-oauth-wizard--illustration svg{max-height:384px}#ibo-oauth-wizard--conf--result{white-space:pre-wrap}.ibo-notifications--view-all--container{display:grid;grid-gap:24px}.ibo-notifications--view-all--container .ibo-object-summary .ibo-panel--title{font-size:1.5rem}.ibo-notifications--view-all--container .ibo-object-summary .ibo-panel--toolbar{min-width:96px}.ibo-notifications--view-all--container .ibo-object-summary>.ibo-panel--body{box-shadow:none;max-height:400px}.ibo-notifications--view-all--container .ibo-object-summary+.ibo-object-summary{margin-top:0}@media screen and (max-width:768px){.ibo-notifications--view-all--container{grid-template-columns:repeat(1, 1fr)}}@media screen and (min-width:1024px){.ibo-notifications--view-all--container{grid-template-columns:repeat(2, 1fr)}}@media screen and (min-width:1408px){.ibo-notifications--view-all--container{grid-template-columns:repeat(3, 1fr)}}.ibo-notifications--view-all--toolbar{justify-content:space-between}.ibo-notifications--view-all--toggler{display:flex;align-content:center}.ibo-notifications--view-all--item--read .ibo-panel--body::before{background-color:#e1e7ec}.ibo-notifications--view-all--item--unread .ibo-panel--body::before{background-color:#e53e3e}.ibo-notifications--view-all--container .ibo-notifications--view-all--read-action,.ibo-notifications--view-all--container .ibo-notifications--view-all--unread-action{margin-left:0 !important}.ibo-notifications--view-all--item--read .ibo-notifications--view-all--read-action{display:none}.ibo-notifications--view-all--item--unread .ibo-notifications--view-all--unread-action{display:none}.ibo-notifications--view-all--empty{flex-direction:column;margin-top:96px}.ibo-notifications--view-all--empty svg{max-width:30%;height:auto}.ibo-input-select--notification-item{display:flex !important;flex-direction:row}.ibo-input-select--notification-item--mixed-value{font-size:1rem;color:#9c4221;margin-left:4px}.ibo-alert+.ibo-alert{margin-top:4px}.ibo-alert+.ibo-block:not(.ibo-alert){margin-top:16px}.ibo-button+.ibo-button,.ui-dialog .ui-button+.ibo-button,.ui-dialog .ui-button+.ui-button,.ui-dialog .ui-button+.ui-datepicker-current,.ui-dialog .ui-button+.ui-datepicker-close,.ui-datepicker-current+.ibo-button,.ui-dialog .ui-datepicker-current+.ui-button,.ui-datepicker-current+.ui-datepicker-current,.ui-datepicker-current+.ui-datepicker-close,.ui-datepicker-close+.ibo-button,.ui-dialog .ui-datepicker-close+.ui-button,.ui-datepicker-close+.ui-datepicker-current,.ui-datepicker-close+.ui-datepicker-close,.ui-dialog .ibo-button+.ui-button,.ibo-button+.ui-datepicker-current,.ibo-button+.ui-datepicker-close{margin-left:4px}.ibo-button-group+.ibo-button-group,.ibo-button+.ibo-button-group,.ui-dialog .ui-button+.ibo-button-group,.ui-datepicker-current+.ibo-button-group,.ui-datepicker-close+.ibo-button-group,.ibo-button-group+.ibo-button,.ui-dialog .ibo-button-group+.ui-button,.ibo-button-group+.ui-datepicker-current,.ibo-button-group+.ui-datepicker-close{margin-left:4px}.ibo-collapsible-section+.ibo-collapsible-section{margin-top:12px}.ibo-collapsible-section+.ibo-block:not(.ibo-collapsible-section){margin-top:16px}.ibo-caselog-list .ibo-collapsible-section{margin:0;min-width:22em}.ibo-caselog-list .ibo-collapsible-section .ibo-collapsible-section--body{color:#212934;padding:8px;background-color:rgba(248, 249, 250, 0.5)}.ibo-alert--body .ibo-collapsible-section .ibo-collapsible-section--body{color:#212934;padding:8px}.ibo-alert--body>*+.ibo-collapsible-section{margin-top:8px}.ibo-datatable+.ibo-block{margin-top:4px}.ibo-panel .ibo-panel--body .ibo-datatable{width:100%}.display_block+.display_block{margin-top:24px}.display_block+.ibo-block:not(.display_block){margin-top:16px}.ibo-field+.ibo-field:not(:empty){margin-top:16px}.form_field+.form_field{margin-top:16px}.ibo-fieldset+.ibo-field,fieldset+.ibo-field{margin-top:32px}.ibo-field+.ibo-fieldset:not(.ibo-column),.ibo-field+fieldset:not(.ibo-column){margin-top:32px}.ibo-fieldset+.ibo-fieldset:not(.ibo-column),fieldset+.ibo-fieldset:not(.ibo-column),.ibo-fieldset+fieldset:not(.ibo-column){margin-top:48px}.ibo-multi-column+.ibo-fieldset,.ibo-multi-column+fieldset{margin-top:48px}.ibo-form+.ibo-form{margin-top:24px}select+label,label+select,label>select,input+label,label+input,label>input{margin-left:8px}.ibo-datatable .attribute-set .attribute-set-item{display:inline;margin:0;padding:4px 6px;box-shadow:0 1px 2px rgba(0, 0, 0, 0.25), 0 1px 3px rgba(0, 0, 0, 0.12)}.ibo-datatable .attribute-set .attribute-set-item+.attribute-set-item{margin-left:0.5rem}.ibo-object-details.ibo-has-medallion-icon>.ibo-panel--body>.ibo-tab-container:not(.ibo-is-vertical)>.ibo-tab-container--tabs-list{padding-left:calc(32px + 96px + 32px - 24px)}.tippy-box[data-theme~="object-summary"]{background-color:rgba(255, 255, 255, 0);color:#212934}.tippy-box[data-theme~="object-summary"] .tippy-arrow{display:none}.ibo-panel+.ibo-panel{margin-top:24px}.ibo-panel+.ibo-block:not(.ibo-panel){margin-top:16px}#ibo-main-content{}#ibo-main-content .ibo-panel.ibo-has-sticky-header{margin-bottom:200px}#ibo-main-content .ibo-panel.ibo-has-sticky-header>.ibo-sticky-sentinel-top{top:-16px;height:16px}#ibo-main-content .ibo-panel.ibo-has-sticky-header>.ibo-panel--header.ibo-is-sticking,#ibo-main-content .ibo-panel.ibo-has-sticky-header>.ibo-is-sticking.ibo-object-summary--header{top:-16px}.ui-dialog-content{}.ui-dialog-content .ibo-panel.ibo-has-sticky-header{}.ui-dialog-content .ibo-panel.ibo-has-sticky-header>.ibo-sticky-sentinel-top{top:-16px;height:16px}.ui-dialog-content .ibo-panel.ibo-has-sticky-header>.ibo-panel--header.ibo-is-sticking,.ui-dialog-content .ibo-panel.ibo-has-sticky-header>.ibo-is-sticking.ibo-object-summary--header{top:-16px}.ibo-pill:not(:last-child){margin-right:16px}.ibo-dashboard--grid-row .ibo-dashlet-header-static{margin-top:12px}.ibo-dashboard--grid-row:first-child .ibo-dashlet:first-child .ibo-dashlet-header-static{margin-top:0}.ibo-details .ibo-prop--apply>span,.ibo-details .ibo-prop--cancel>span{display:unset}.ibo-details .ibo-prop--apply{display:table-column}.ibo-activity-panel--tab-entry-form .ibo-caselog-entry-form{padding-bottom:14px;border-bottom:1px solid #aebecd}.ibo-panel{}.ibo-panel>.ibo-panel--body>.ibo-tab-container{margin-top:-24px;margin-left:-16px;margin-right:-16px;margin-bottom:-24px}.ibo-panel>.ibo-panel--body>.ibo-tab-container>.ibo-tab-container--tab-container-list{height:100%;overflow-y:auto;flex-grow:1}.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical{display:flex;flex-direction:row}.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list{padding-top:48px;flex-direction:column;height:auto;padding-left:unset;margin-right:unset;min-width:calc(32px + 90px + 32px)}.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list>.ibo-tab-container--tab-header,.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list>.ibo-tab-container--extra-tabs-container{height:48px;width:100%;justify-content:left}.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list>.ibo-tab-container--tab-header>.ibo-tab-container--tab-toggler,.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list>.ibo-tab-container--extra-tabs-container>.ibo-tab-container--tab-toggler,.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list>.ibo-tab-container--tab-header>.ibo-tab-container--extra-tabs-list-toggler,.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list>.ibo-tab-container--extra-tabs-container>.ibo-tab-container--extra-tabs-list-toggler{width:100%;justify-content:left}.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tab-container{flex-grow:1;margin-left:unset}.ibo-panel.ibo-has-sticky-header>.ibo-panel--body>.ibo-tab-container>.ibo-tab-container--tabs-list.ibo-is-sticking{position:fixed;z-index:10}.ibo-panel.ibo-has-sticky-header>.ibo-panel--body>.ibo-tab-container:not(.ibo-is-vertical)>.ibo-tab-container--tabs-list.ibo-is-sticking{padding-left:0}.ibo-panel.ibo-has-sticky-header>.ibo-panel--body>.ibo-tab-container:not(.ibo-is-vertical)>.ibo-tab-container--tabs-list.ibo-is-sticking .ibo-tab-container--tab-toggler,.ibo-panel.ibo-has-sticky-header>.ibo-panel--body>.ibo-tab-container:not(.ibo-is-vertical)>.ibo-tab-container--tabs-list.ibo-is-sticking .ibo-tab-container--extra-tabs-list-toggler,.ibo-panel.ibo-has-sticky-header>.ibo-panel--body>.ibo-tab-container:not(.ibo-is-vertical)>.ibo-tab-container--tabs-list.ibo-is-sticking .ibo-tab-container--extra-tabs-list-toggler{font-size:1rem}.ibo-block-list--medallion{flex-direction:column;align-items:center}.ibo-block-list--medallion>.ibo-medallion-icon--image{margin:0 auto}.ibo-block-list--medallion>.ibo-medallion-icon--image~.ibo-medallion-icon--description{margin-top:12px}.ibo-block-list--medallion>.ibo-medallion-icon--description{flex-grow:1;text-align:center}.ibo-datatable .ibo-field-badge{margin:0;padding:0;color:unset;background-color:unset}.ibo-datatable .ibo-field-badge::before{content:"";display:inline-flex;margin-right:0.5rem;width:10px;height:10px;min-width:10px;min-height:10px;background-color:var(--ibo-main-color)}.ibo-datatable .ibo-field-badge .ibo-field-badge--decoration{display:none}.ibo-datatable .ibo-field-badge .ibo-field-badge--decoration+.ibo-field-badge--label{margin-left:unset}.ui-dialog .blockUI.blockOverlay{background-color:white}.ibo-datatable .blockUI.blockOverlay{background-color:white}.ibo-datatable .blockUI.blockMsg{font-size:2em}.ibo-badge+.ibo-badge{margin-left:4px}.ibo-extension-details+.ibo-extension-details,.ibo-extension-details--information--description .ibo-extension-details{margin-top:8px}.ibo-svg-illustration--container>svg *[fill="#6c63ff"]{fill:#ea7d1e}.ibo-navigation-menu.ibo-is-active .ibo-navigation-menu--drawer{transform:translate3d(0, 0, 0)}.switch{position:relative;display:inline-block;width:36px;height:20px;vertical-align:baseline}.switch input{display:none}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#929fb1;transition:0.4s}.slider:before{position:absolute;content:"";height:15px;width:15px;left:3px;bottom:3px;background-color:#d5dde5;transition:0.4s}input:checked+.slider{background-color:#dd6c20}input:focus+.slider{box-shadow:0 0 1px #dd6c20}input:checked+.slider:before{transform:translateX(14.5px)}.slider.round{border-radius:20px}.slider.round:before{border-radius:7px}.ibo-is-html-content blockquote{color:#212934}.center{text-align:center}.hidden{display:none}@keyframes progress_bar_color_ongoing{from{background-color:#FBD38D}to{background-color:#FEEBC8}}@-webkit-keyframes bg-pan-left{0%{background-position:100% 50%}100%{background-position:0 50%}}@keyframes bg-pan-left{0%{background-position:100% 50%}100%{background-position:0 50%}}body{display:flex;flex-direction:column;background-color:#f8f9fa;color:#212934;margin:0;padding:0;font-size:10pt;font-family:Tahoma, Verdana, Arial, Helvetica, serif;overflow-y:auto}h1{color:#555555;font-size:16pt}h2{color:#212934;font-size:14pt;font-weight:normal}h3{color:#1C94C4;font-size:12pt;font-weight:bold}a{color:#1c94c4;text-decoration:none}a:hover{color:#EA7D1E}.itop-setup--message{margin-top:16px}.next{width:100%;text-align:right}.v-spacer{padding-top:1em}button{margin-top:1em;padding-left:1em;padding-right:1em}p.info{padding-left:50px;background:url(../images/info-mid.png) no-repeat left -5px;min-height:48px}p.ok{padding-left:50px;background:url(../images/clean-mid.png) no-repeat left -8px;min-height:48px}p.warning{padding-left:50px;background:url(../images/messagebox_warning-mid.png) no-repeat left -5px;min-height:48px}p.error{padding-left:50px;background:url(../images/stop-mid.png) no-repeat left -5px;min-height:48px}label{cursor:pointer}td.label{text-align:left}label.read-only{color:#666;cursor:text}td.input{text-align:left}table.formTable{border:0}.wizlabel,.wizinput{color:#000;font-size:10pt}.wizhelp{color:#333;font-size:8pt}#progress{border:none;width:210px;height:26px;line-height:26px;text-align:center;margin:5px;box-shadow:inset 0 2px 4px 0 rgba(0, 0, 0, 0.06) !important;border-radius:2px;background-color:#EDF2F7 !important}#progress .progress{color:#000000 !important;background-image:linear-gradient(270deg, #FBD38D 50%, #FEEBC8 55%, #FBD38D 80%) !important;animation:bg-pan-left 3s infinite both;background-size:600% 100%;border-radius:inherit}#progress .progress.progress-error{background-image:none !important;background-color:#F56565 !important;animation:none}h3.clickable{background:url(../images/plus.gif) no-repeat left;padding-left:16px;cursor:hand}h3.clickable.open{background:url(../images/minus.gif) no-repeat left;padding-left:16px;cursor:hand}.message{color:#1A202C;background-color:#F7FAFC;border-left:4px solid #4A5568;padding:10px;font-size:initial}.message>.message-title{font-weight:bold;margin-right:5px}.message.message-valid{color:#276749;background-color:#F0FFF4;border-color:#48BB78}.message.message-warning{color:#C05621;background-color:#FFFAF0;border-color:#ED8936}.message.message-error{color:#C53030;background-color:#FFF5F5;border-color:#E53E3E}*:not(.message)+.message{margin-top:6px}.text-valid{color:#276749}.text-warning{color:#C05621}.text-error{color:#C53030}fieldset{border:none;padding:0;margin:15px 0 0 0}fieldset>legend{margin-bottom:7px;padding-bottom:7px;width:100%;color:#3C3C3C;font-size:11pt;font-weight:bold;border-bottom:1px solid #D2D2D2}.module-selection-banner img{max-height:48px}.module-selection-body{overflow:auto;box-shadow:inset 0 2px 4px 0 rgba(0, 0, 0, 0.06) !important;background-color:#F7FAFC;padding:10px}.module-selection-body .wiz-choice:not(:checked)~label .checked{display:none}.module-selection-body .wiz-choice:checked~label .unchecked{display:none}.ibo-extension-details:has(> .ibo-extension-details--actions>input:checked) .ibo-extension-details:has(#itop-ticket-mgmt-simple-ticket-enhanced-portal:not(:checked), #itop-ticket-mgmt-itil-enhanced-portal:not(:checked)) .ibo-extension-details--information--description::after{content:"Legacy portal is no longer part of iTop, by leaving this option unchecked your portal users won't be able to access iTop anymore.";display:block;margin-top:0.5em;font-weight:bold;color:#e60000b8}.ibo-extension-details--information--metadata{color:#404b5a}.choice-disabled{color:#6e7a8a}body{font-size:1.17rem;font-family:"Raleway"}#ibo_setup_container{width:800px;margin-left:auto;margin-right:auto;height:100%;display:flex;flex-direction:column;padding:20px 0}#ibo_setup_container pre{white-space:pre-wrap}#ibo_setup_container .ibo-title h2{margin-bottom:15px}#ibo_setup_container .ibo-setup--header{background-color:#fff;padding:0 20px;border:3px solid #ccd4db;height:80px;border-bottom:none;border-radius:3px 3px 0 0}#ibo_setup_container .ibo-setup--header .ibo-title--icon{border:0;vertical-align:middle;margin-right:20px}#ibo_setup_container .ibo-setup--body{display:flex;flex-direction:column;background-color:#fff;padding:20px;border:3px solid #ccd4db;border-top:none;flex-grow:1;overflow:auto;border-radius:0 0 3px 3px}#ibo_setup_container .ibo-setup--body .ibo-setup--wizard{width:100%;display:flex;flex-direction:column;height:100%}#ibo_setup_container .ibo-setup--body .ibo-setup--wizard .ibo-setup--wizard--content{overflow:auto}#ibo_setup_container .ibo-setup--body .ibo-setup--wizard .ibo-setup--wizard--buttons-container{margin-top:auto}#ibo_setup_container .ibo-setup--body .ibo-setup--wizard .ibo-setup--wizard--buttons-container tr{display:flex;justify-content:flex-end}#ibo_setup_container .ibo-setup--body .ibo-setup--wizard .ibo-setup--wizard--buttons-container button{margin-left:8px}#ibo_setup_container .ibo-setup--body .itop-setup--message{margin-top:16px}#ibo_setup_container .ibo-setup--body .ibo-setup--button-bar{margin-top:16px}#ibo_setup_container .ibo-setup--body .ibo-setup--button-bar .ibo-setup--button-spacer{flex-grow:1}#ibo_setup_container .ibo-setup--body .ibo-setup--js-error{overflow:auto;max-height:100px;color:#9b2c2c;font-size:1rem}#ibo_setup_container .ibo-setup--body .ibo-setup--upgrade-info{margin-top:5px}#ibo_setup_container .ibo-setup--body .ibo-fieldset,#ibo_setup_container .ibo-setup--body fieldset{margin-top:12px}#ibo_setup_container .ibo-setup--body .ibo-fieldset~.ibo-fieldset,#ibo_setup_container .ibo-setup--body fieldset~.ibo-fieldset,#ibo_setup_container .ibo-setup--body .ibo-fieldset~fieldset,#ibo_setup_container .ibo-setup--body fieldset~fieldset{margin-top:12px}#ibo_setup_container .ibo-setup--body .ibo-field{margin-top:5px}#ibo_setup_container .ibo-setup--body .ibo-setup--small-field-label .ibo-field--label{width:15%}#ibo_setup_container .ibo-setup--body .ibo-field--comments{font-size:1rem;color:#6e7a8a;text-align:left;width:100%;padding-left:10px}#ibo_setup_container .ibo-setup--body .ibo-alert{padding:7px 20px}#ibo_setup_container .ibo-setup--body .ibo-setup--small-message{font-size:1rem;color:#6e7a8a}#ibo_setup_container .ibo-setup--body .ibo-collapsible-section{margin:10px 0 0 0}#ibo_setup_container .ibo-setup--body .ibo-collapsible-section.ibo-setup--small .ibo-collapsible-section--header .ibo-collapsible-section--title{font-size:1.17rem;font-weight:400;color:#6e7a8a}#ibo_setup_container .ibo-setup--body .ibo-collapsible-section .ibo-collapsible-section--body{max-height:400px;overflow:auto}#ibo_setup_container .ibo-setup--body .ibo-input,#ibo_setup_container .ibo-setup--body .ui-autocomplete-input,#ibo_setup_container .ibo-setup--body .ui-multiselect,#ibo_setup_container .ibo-setup--body .dataTables_length select,.dataTables_length #ibo_setup_container .ibo-setup--body select,#ibo_setup_container .ibo-setup--body .ui_tpicker_hour_slider>select,#ibo_setup_container .ibo-setup--body .ui_tpicker_minute_slider>select,#ibo_setup_container .ibo-setup--body .ui_tpicker_second_slider>select,#ibo_setup_container .ibo-setup--body select.ibo-input-select-placeholder,#ibo_setup_container .ibo-setup--body .ibo-datatableconfig--attributes-panel--per-page--input,#ibo_setup_container .ibo-setup--body .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content #ibo_setup_container .ibo-setup--body input[type="text"],#ibo_setup_container .ibo-setup--body .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper #ibo_setup_container .ibo-setup--body input[type="text"]{width:auto;display:inline-block}#ibo_setup_container .ibo-setup--body table td{white-space:nowrap;line-height:2.5rem;padding-right:8px;padding-bottom:1rem}#ibo_setup_container .ibo-setup--body .setup-content-title,#ibo_setup_container .ibo-setup--body h2{margin-bottom:18px}.ibo-setup--button-bar{margin-top:16px}.ibo-setup--button-bar .ibo-setup--full-width{width:100%}.ibo-setup--button-bar .ibo-setup--full-width{width:100%}.ibo-setup-summary-title,.ibo-setup-summary-title:visited,.ibo-setup-summary-title:hover{font-size:1.17rem;color:inherit}#ibo-setup-licenses--components-list{background-color:#f2f2f2;padding:12px;box-shadow:inset 0px 2px 4px 1px rgba(0, 0, 0, 0.15)}.setup-prefix-toggler--input--container,.setup-tls--input--container,.setup-disk-location--input--container,.setup-backup--input--container{display:flex;line-height:2.5rem;margin:1rem 0}.setup-prefix-toggler--input--container input,.setup-tls--input--container input,.setup-disk-location--input--container input,.setup-backup--input--container input{margin:0 8px}.setup-disk-location--input--container input,.setup-backup--input--container input{flex-grow:1}.collapsable-options{margin-bottom:18px}.collapsable-options [data-role="setup-collapsable-options--toggler"]::before{margin-right:8px;cursor:pointer}.collapsable-options:not(.setup-is-opened) [data-role="setup-collapsable-options--toggler"]::before{content:""}.collapsable-options.setup-is-opened [data-role="setup-collapsable-options--toggler"]::before{content:""}.setup-input--hint--icon{color:#6e7a8a}.setup-invalid-field--icon{color:#c53030;margin-left:8px}.setup-accept-licenses{margin-top:18px}.module-selection-banner{display:flex}.module-selection-banner>img{margin-right:12px}.setup-end-placeholder{display:flex;flex-direction:row;align-items:center}.setup-end-placeholder>div{padding:0px 15px}.setup-end-placeholder a{display:flex;flex-direction:column;align-items:center}.setup-end-placeholder a svg{max-height:150px;margin-bottom:15px;width:auto}.setup-extension--icon{margin-right:5px;color:#2b6bb0;font-size:1.33rem}.setup-extension--missing .setup-extension--icon{color:#a00000}.setup-extension-tag{display:inline-flex;background-color:grey;border-radius:8px;padding-left:3px;padding-right:3px;margin-right:3px}.setup-extension-tag.installed{background-color:#9eff9e}.setup-extension-tag.notinstalled{background-color:#ed9eff}.setup-extension-tag.tobeinstalled{background-color:#9ef0ff}.setup-extension-tag.tobeuninstalled{background-color:#ff9e9e}.setup-extension-tag.notuninstallable{background-color:#ffc98c}.setup-extension-tag.removed{background-color:#969594}.ibo-extension-details{align-items:flex-start}.ibo-extension-details--actions input{margin:0.2em 0.5em;width:12px}:not(.ibo-badge)~.ibo-badge{margin-left:0.5em}.ibo-extension-details--information--label i{font-size:0.9em;margin-left:0.3em}.setup--wizard-choice--label+.setup--wizard-choice--more-info{margin-left:0.5rem}#params_summary{overflow:auto}#params_summary div{width:100%;margin-top:0;padding-top:0.5em;padding-left:0}#params_summary div ul{margin-left:0;padding-left:40px}#params_summary div.closed ul{display:none}#params_summary div li{list-style:none;width:100%;margin-left:0;padding-left:0em}.title{padding-left:20px;font-weight:bold;cursor:pointer}#params_summary div.closed .title::before{margin-right:5px;content:""}#params_summary div:not(.closed) .title::before{margin-right:5px;content:""}#progress_content *:not(.message)+.message{margin-top:1.5rem}#fresh_content{border:0;min-height:300px;min-width:600px;display:none;margin-left:auto;margin-right:auto}
\ No newline at end of file
+ var(--ck-table-border-none-helper-line-color)}:where(.ck.ck-editor__editable.ck-table-show-hidden-borders .ck-widget.table) :where(td, th):where([style*="border:none"], [style*="border:0"], [style*="border-style:none"], [style*="border-width:0"]){border:var(--ck-table-border-none-helper-line) !important}:where(.ck.ck-editor__editable.ck-table-show-hidden-borders .ck-widget.table) :where(table, td, th):where([style*="border-top-style:none"], [style*="border-top-width:0"]){border-top:var(--ck-table-border-none-helper-line) !important}:where(.ck.ck-editor__editable.ck-table-show-hidden-borders .ck-widget.table) :where(table, td, th):where([style*="border-right-style:none"], [style*="border-right-width:0"]){border-right:var(--ck-table-border-none-helper-line) !important}:where(.ck.ck-editor__editable.ck-table-show-hidden-borders .ck-widget.table) :where(table, td, th):where([style*="border-bottom-style:none"], [style*="border-bottom-width:0"]){border-bottom:var(--ck-table-border-none-helper-line) !important}:where(.ck.ck-editor__editable.ck-table-show-hidden-borders .ck-widget.table) :where(table, td, th):where([style*="border-left-style:none"], [style*="border-left-width:0"]){border-left:var(--ck-table-border-none-helper-line) !important}.ck.ck-table-cell-properties-form{width:320px}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__padding-row{align-self:flex-end;width:25%;padding:0}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar{margin-top:var(--ck-spacing-standard);background:none}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar.ck-table-cell-properties-form__horizontal-alignment-toolbar{--ck-table-form-dimensions-input-width: calc(var(--ck-table-form-default-input-width) * 2 + var(--ck-spacing-large));width:var(--ck-table-form-dimensions-input-width);max-width:var(--ck-table-form-dimensions-input-width);min-width:var(--ck-table-form-dimensions-input-width);padding:0}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar.ck-table-cell-properties-form__vertical-alignment-toolbar{flex-grow:1}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar:first-of-type{flex-grow:0.57}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar:last-of-type{flex-grow:0.43}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar .ck-button{flex-grow:1}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row{flex-wrap:wrap}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__border-row .ck-labeled-field-view>.ck-label{font-size:var(--ck-font-size-tiny);text-align:center}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-style,.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-width{width:80px;min-width:80px;max-width:80px}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__dimensions-row{--ck-table-form-dimensions-input-width: calc(var(--ck-table-form-default-input-width) * 2 + var(--ck-spacing-large));width:var(--ck-table-form-dimensions-input-width);max-width:var(--ck-table-form-dimensions-input-width);min-width:var(--ck-table-form-dimensions-input-width);padding:0}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__width,.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__height{width:var(--ck-table-form-default-input-width);min-width:var(--ck-table-form-default-input-width);max-width:var(--ck-table-form-default-input-width);margin:0}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{width:0;height:var(--ck-ui-component-min-height);line-height:var(--ck-ui-component-min-height);margin:0 var(--ck-spacing-small);align-self:flex-end;display:inline-block;position:relative;left:-0.5ch;overflow:visible}.ck.ck-table-cell-properties-form .ck-form__row.ck-form__row.ck-table-form__action-row>.ck.ck-button{flex-grow:initial}.ck.ck-table-cell-properties-form .ck-form__row.ck-form__row.ck-table-form__action-row>.ck.ck-button .ck-button__label{color:currentColor}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-form__cell-type-row{--ck-table-form-dimensions-input-width: calc(var(--ck-table-form-default-input-width) * 2 + var(--ck-spacing-large));width:var(--ck-table-form-dimensions-input-width);max-width:var(--ck-table-form-dimensions-input-width);min-width:var(--ck-table-form-dimensions-input-width);padding:0}:root{--ck-table-layout-widget-type-around-button-size: 16px;--ck-table-layout-widget-type-around-icon-width: 10px;--ck-table-layout-widget-type-around-icon-height: 8px;--ck-table-layout-widget-handler-icon-size: 10px;--ck-table-layout-default-border-color: #d4d4d4}.ck-content table.table.layout-table,.ibo-is-html-content table.table.layout-table,.ck-content figure.table.layout-table,.ibo-is-html-content figure.table.layout-table{margin-top:0;margin-bottom:0}.ck-content table.table.layout-table,.ibo-is-html-content table.table.layout-table,.ck-content figure.table.layout-table>table,.ibo-is-html-content figure.table.layout-table>table{border-spacing:0}.ck-editor__editable .table.layout-table>table{border-collapse:revert;width:100%;height:100%}.ck-editor__editable .table.layout-table>table:not([style*="border:"], [style*="border-top"], [style*="border-bottom"], [style*="border-left"], [style*="border-right"], [style*="border-width"], [style*="border-style"], [style*="border-color"]){border-width:0;border-color:#0000;outline:none}.ck-editor__editable .table.layout-table>table>tbody>tr>td{box-shadow:revert;padding:revert;text-indent:1px;border-color:var(--ck-table-layout-default-border-color);border-style:dashed;min-width:2em}.ck-editor__editable .table.layout-table>table>tbody>tr>td[style^="width:"],.ck-editor__editable .table.layout-table>table>tbody>tr>td[style*=" width:"],.ck-editor__editable .table.layout-table>table>tbody>tr>td[style*=";width:"]{min-width:auto}.ck-editor__editable .table.layout-table>table>tbody>tr>td:focus{background-color:#0000}.ck-editor__editable .table.layout-table>table>tbody>tr>td:not([style*="border:"], [style*="border-top"], [style*="border-bottom"], [style*="border-left"], [style*="border-right"], [style*="border-width"], [style*="border-style"], [style*="border-color"]){outline:var(--ck-table-layout-default-border-color) 1px dashed;outline-offset:-1px;border-width:0;border-color:#0000}.ck-editor__editable .table.layout-table>table>tbody>tr>td:not([style*="border:"], [style*="border-top"], [style*="border-bottom"], [style*="border-left"], [style*="border-right"], [style*="border-width"], [style*="border-style"], [style*="border-color"]):focus{outline:var(--ck-color-focus-border) 1px solid}.ck-editor__editable .table.layout-table>table>tbody>tr>td>.ck-table-bogus-paragraph{text-indent:0;width:calc(100% - 1px)}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around{--ck-widget-type-around-button-size: var(--ck-table-layout-widget-type-around-button-size)}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button.ck-widget__type-around__button_before,.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button.ck-widget__type-around__button_after{z-index:2;transform:translateY(0)}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button.ck-widget__type-around__button_before{margin-left:var(--ck-table-layout-widget-type-around-button-size);border-radius:0 0 100px 100px;left:min(10%, 30px)}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button.ck-widget__type-around__button_before:after{border-radius:0 0 100px 100px}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button.ck-widget__type-around__button_after{border-radius:100px 100px 0 0}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button.ck-widget__type-around__button_after:after{border-radius:100px 100px 0 0}.ck-editor__editable .table.layout-table.ck-widget>.ck-widget__type-around>.ck-widget__type-around__button svg{width:var(--ck-table-layout-widget-type-around-icon-width);height:var(--ck-table-layout-widget-type-around-icon-height)}.ck-editor__editable .table.layout-table.ck-widget.ck-widget_with-selection-handle>.ck-widget__selection-handle{--ck-widget-handler-icon-size: var(--ck-table-layout-widget-handler-icon-size);transform:translateY(calc(0px - var(--ck-widget-outline-thickness)));z-index:3}.ck-editor__editable .table.layout-table.ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__fake-caret{top:0}.ck-editor__editable .table.layout-table.ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__fake-caret{bottom:0}.ck-editor__editable .table.layout-table.ck-widget:hover{z-index:var(--ck-z-default)}.ck-editor__editable .table.layout-table.ck-widget:hover>.ck-widget__selection-handle{opacity:0.75;visibility:visible}.ck-editor__editable .table.layout-table.ck-widget:hover>.ck-widget__selection-handle:hover{opacity:1}.ck-editor__editable .table.layout-table.ck-widget:has(.ck-widget.table:hover)>.ck-widget__selection-handle{opacity:0;visibility:hidden}.ck-editor__editable .table.layout-table.ck-widget.ck-widget_selected{z-index:var(--ck-z-default)}.ck-editor__editable .table.layout-table{margin:0;display:table}.ck-editor__editable.ck-editor__editable_inline>.ck-widget.ck-widget_with-selection-handle.layout-table:first-child{margin-top:var(--ck-spacing-large)}.ck-editor__editable.ck-editor__editable_inline>.ck-widget.ck-widget_with-selection-handle.layout-table:last-child,.ck-editor__editable.ck-editor__editable_inline>.ck-widget.ck-widget_with-selection-handle.layout-table:nth-last-child(2):has(+ .ck-fake-selection-container){margin-bottom:var(--ck-spacing-large)}.ck.ck-form__row>:not(.ck-label)+*{margin-inline-start:var(--ck-spacing-large)}.ck.ck-form__row>.ck-label{width:100%;min-width:100%}.ck.ck-form__row.ck-table-form__action-row{margin-top:var(--ck-spacing-large);justify-content:flex-end}.ck.ck-form__row.ck-table-form__action-row .ck-button-save,.ck.ck-form__row.ck-table-form__action-row .ck-button-cancel{justify-content:center}:root{--ck-table-properties-error-arrow-size: 6px;--ck-table-properties-min-error-width: 150px}.ck.ck-table-form{--ck-table-form-default-input-width: 80px}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-labeled-field-view>.ck-label{font-size:var(--ck-font-size-tiny);text-align:center}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-style,.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-width{width:var(--ck-table-form-default-input-width);min-width:var(--ck-table-form-default-input-width);max-width:var(--ck-table-form-default-input-width)}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row{--ck-table-form-dimensions-input-width: calc(var(--ck-table-form-default-input-width) * 2 + var(--ck-spacing-large));width:var(--ck-table-form-dimensions-input-width);max-width:var(--ck-table-form-dimensions-input-width);min-width:var(--ck-table-form-dimensions-input-width);padding:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__width,.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__height{width:var(--ck-table-form-default-input-width);min-width:var(--ck-table-form-default-input-width);max-width:var(--ck-table-form-default-input-width);margin:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{width:0;height:var(--ck-ui-component-min-height);line-height:var(--ck-ui-component-min-height);margin:0 var(--ck-spacing-small);align-self:flex-end;display:inline-block;position:relative;left:-0.5ch;overflow:visible}.ck.ck-table-form .ck-form__row.ck-table-form__border-row,.ck.ck-table-form .ck-form__row.ck-table-form__background-row,.ck.ck-table-form .ck-form__row.ck-table-form__cell-type-row{flex-wrap:wrap}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row,.ck.ck-table-form .ck-form__row.ck-table-form__cell-type-row{flex-wrap:wrap;align-items:center}:is(.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row, .ck.ck-table-form .ck-form__row.ck-table-form__cell-type-row) .ck-labeled-field-view{flex-direction:column-reverse;align-items:center;display:flex}:is(.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row, .ck.ck-table-form .ck-form__row.ck-table-form__cell-type-row) .ck-labeled-field-view .ck.ck-dropdown{flex-grow:0}.ck.ck-table-form .ck-form__row:not(.ck-table-form__action-row)>:not(.ck-label, .ck-table-form__dimension-operator){flex-grow:1}.ck.ck-table-form .ck.ck-labeled-field-view{padding-top:var(--ck-spacing-standard)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{border-radius:var(--ck-rounded-corners-radius);background:var(--ck-color-base-error);color:var(--ck-color-base-background);padding:var(--ck-spacing-small) var(--ck-spacing-medium);min-width:var(--ck-table-properties-min-error-width);text-align:center;left:50%;bottom:calc(-1 * var(--ck-table-properties-error-arrow-size));animation:0.15s both ck-table-form-labeled-view-status-appear;position:absolute;transform:translate(-50%, 100%)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{border-color:transparent transparent var(--ck-color-base-error) transparent;border-width:0 var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size);content:"";top:calc(-1 * var(--ck-table-properties-error-arrow-size));border-style:solid;position:absolute;left:50%;transform:translateX(-50%)}@media (prefers-reduced-motion:reduce){.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{animation:none}}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{z-index:1}.ck.ck-table-form .ck.ck-labeled-field-view .ck-input.ck-error:not(:focus)+.ck.ck-labeled-field-view__status{display:none}.ck.ck-table-form .ck.ck-labeled-field-view{position:relative}@keyframes ck-table-form-labeled-view-status-appear{0%{opacity:0}100%{opacity:1}}.ck.ck-table-properties-form{width:320px}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row{flex-wrap:wrap;flex-basis:0;align-content:baseline;align-self:flex-end}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar{margin-top:var(--ck-spacing-standard);background:none}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items>*{flex:1}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items{flex-wrap:nowrap}:root{--ck-content-table-style-spacing: 1.5em}.ck-content .table.table-style-align-left,.ibo-is-html-content .table.table-style-align-left{float:left;margin-right:var(--ck-content-table-style-spacing)}.ck-content .table.table-style-align-right,.ibo-is-html-content .table.table-style-align-right{float:right;margin-left:var(--ck-content-table-style-spacing)}.ck-content .table.table-style-align-center,.ibo-is-html-content .table.table-style-align-center{margin-left:auto;margin-right:auto}.ck-content .table.table-style-block-align-left,.ibo-is-html-content .table.table-style-block-align-left{margin-left:0;margin-right:auto}.ck-content .table.table-style-block-align-right,.ibo-is-html-content .table.table-style-block-align-right{margin-left:auto;margin-right:0}.ck-editor__editable .table.layout-table.table-style-align-center{margin-left:auto;margin-right:auto}.ck-editor__editable .table.layout-table.table-style-align-left{margin-right:var(--ck-content-table-style-spacing)}.ck-editor__editable .table.layout-table.table-style-align-right{margin-left:var(--ck-content-table-style-spacing)}.ck-editor__editable .table.layout-table.table-style-block-align-left{margin-left:0;margin-right:auto}.ck-editor__editable .table.layout-table.table-style-block-align-right{margin-left:auto;margin-right:0}:root{--ck-content-color-table-caption-background: #f7f7f7;--ck-content-color-table-caption-text: #333;--ck-color-table-caption-highlighted-background: #fd0}.ck-content .table>figcaption,.ibo-is-html-content .table>figcaption,.ck-content figure.table>table>caption,.ibo-is-html-content figure.table>table>caption{caption-side:top;word-break:normal;overflow-wrap:anywhere;text-align:center;color:var(--ck-content-color-table-caption-text);background-color:var(--ck-content-color-table-caption-background);outline-offset:-1px;padding:0.6em;font-size:0.75em;display:table-caption}@media (forced-colors:active){.ck-content .table>figcaption,.ibo-is-html-content .table>figcaption,.ck-content figure.table>table>caption,.ibo-is-html-content figure.table>table>caption{background-color:unset;color:unset}}@media (forced-colors:none){:is(.ck.ck-editor__editable .table>figcaption, .ck.ck-editor__editable figure.table>table>caption).table__caption_highlighted{animation:0.6s ease-out ck-table-caption-highlight}}:is(.ck.ck-editor__editable .table>figcaption, .ck.ck-editor__editable figure.table>table>caption).ck-placeholder:before{padding-left:inherit;padding-right:inherit;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@keyframes ck-table-caption-highlight{0%{background-color:var(--ck-color-table-caption-highlighted-background)}100%{background-color:var(--ck-content-color-table-caption-background)}}:root{--ck-table-selected-cell-background: #9ecffa4d}.ck.ck-editor__editable .table table td.ck-editor__editable_selected,.ck.ck-editor__editable .table table th.ck-editor__editable_selected{caret-color:#0000;box-shadow:unset;position:relative}:is(.ck.ck-editor__editable .table table td.ck-editor__editable_selected, .ck.ck-editor__editable .table table th.ck-editor__editable_selected):after{content:"";pointer-events:none;background-color:var(--ck-table-selected-cell-background);position:absolute;inset:0}:is(.ck.ck-editor__editable .table table td.ck-editor__editable_selected, .ck.ck-editor__editable .table table th.ck-editor__editable_selected) ::selection,:is(.ck.ck-editor__editable .table table td.ck-editor__editable_selected, .ck.ck-editor__editable .table table th.ck-editor__editable_selected):focus{background-color:#0000}:is(.ck.ck-editor__editable .table table td.ck-editor__editable_selected, .ck.ck-editor__editable .table table th.ck-editor__editable_selected) .ck-widget{outline:unset}:is(.ck.ck-editor__editable .table table td.ck-editor__editable_selected, .ck.ck-editor__editable .table table th.ck-editor__editable_selected) .ck-widget>.ck-widget__selection-handle{display:none}:root{--ck-color-table-column-resizer-hover: var(--ck-color-base-active);--ck-table-column-resizer-width: 7px;--ck-table-column-resizer-position-offset: calc(var(--ck-table-column-resizer-width) * -.5 - .5px)}.ck-content .table .ck-table-resized,.ibo-is-html-content .table .ck-table-resized{table-layout:fixed}.ck-content .table td,.ibo-is-html-content .table td,.ck-content .table th,.ibo-is-html-content .table th{overflow-wrap:break-word}.ck.ck-editor__editable .table td,.ck.ck-editor__editable .table th{position:relative}.ck.ck-editor__editable .table .ck-table-column-resizer{top:0;bottom:0;right:var(--ck-table-column-resizer-position-offset);width:var(--ck-table-column-resizer-width);cursor:col-resize;user-select:none;z-index:var(--ck-z-default);position:absolute}.ck.ck-editor__editable.ck-column-resize_disabled .table .ck-table-column-resizer,.ck.ck-editor__editable .table[draggable] .ck-table-column-resizer{display:none}.ck.ck-editor__editable .table .ck-table-column-resizer:hover,.ck.ck-editor__editable .table .ck-table-column-resizer__active{background-color:var(--ck-color-table-column-resizer-hover);opacity:0.25}.ck.ck-editor__editable[dir="rtl"] .table .ck-table-column-resizer{left:var(--ck-table-column-resizer-position-offset);right:unset}[dir="ltr"] :is(.ck.ck-input-color>.ck.ck-input-text){border-top-right-radius:0;border-bottom-right-radius:0}[dir="rtl"] :is(.ck.ck-input-color>.ck.ck-input-text){border-top-left-radius:0;border-bottom-left-radius:0}.ck.ck-input-color>.ck.ck-input-text:focus{z-index:0}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{padding:0;display:flex}[dir="ltr"] :is(.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button){border-top-left-radius:0;border-bottom-left-radius:0}[dir="ltr"] :is(.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button):not(:focus){border-left:1px solid #0000}[dir="rtl"] :is(.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button){border-top-right-radius:0;border-bottom-right-radius:0}[dir="rtl"] :is(.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button):not(:focus){border-right:1px solid #0000}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button.ck-disabled{background:var(--ck-color-input-disabled-background)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview{border-radius:var(--ck-rounded-corners-radius);border:1px solid var(--ck-color-input-border);width:20px;height:20px;position:relative;overflow:hidden}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview>.ck.ck-input-color__button__preview__no-color-indicator{transform-origin:50%;background:red;border-radius:2px;width:8%;height:150%;display:block;position:absolute;top:-30%;left:50%;transform:rotate(45deg)}.ck.ck-input-color .ck.ck-input-color__remove-color{width:100%;padding:calc(var(--ck-spacing-standard) / 2) var(--ck-spacing-standard);border-bottom-right-radius:0;border-bottom-left-radius:0}.ck.ck-input-color .ck.ck-input-color__remove-color:not(:focus){border-bottom:1px solid var(--ck-color-input-border)}[dir="ltr"] :is(.ck.ck-input-color .ck.ck-input-color__remove-color){border-top-right-radius:0}[dir="rtl"] :is(.ck.ck-input-color .ck.ck-input-color__remove-color){border-top-left-radius:0}.ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon{margin-right:var(--ck-spacing-standard)}[dir="rtl"] :is(.ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon){margin-right:0;margin-left:var(--ck-spacing-standard)}.ck.ck-input-color{flex-direction:row-reverse;width:100%;display:flex}.ck.ck-input-color>input.ck.ck-input-text{flex-grow:1;min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown{min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown>.ck-input-color__button .ck-dropdown__arrow{display:none}:root{--ck-insert-table-dropdown-padding: 10px;--ck-insert-table-dropdown-box-height: 11px;--ck-insert-table-dropdown-box-width: 12px;--ck-insert-table-dropdown-box-margin: 1px}.ck .ck-insert-table-dropdown__grid{width:calc(var(--ck-insert-table-dropdown-box-width) * 10 + var(--ck-insert-table-dropdown-box-margin) * 20 + var(--ck-insert-table-dropdown-padding) * 2);padding:var(--ck-insert-table-dropdown-padding) var(--ck-insert-table-dropdown-padding) 0;flex-flow:wrap;display:flex}.ck .ck-insert-table-dropdown__label,.ck[dir="rtl"] .ck-insert-table-dropdown__label{text-align:center}.ck .ck-insert-table-dropdown-grid-box{min-width:var(--ck-insert-table-dropdown-box-width);min-height:var(--ck-insert-table-dropdown-box-height);margin:var(--ck-insert-table-dropdown-box-margin);border:1px solid var(--ck-color-base-border);border-radius:1px;outline:none;transition:none}@media (prefers-reduced-motion:reduce){.ck .ck-insert-table-dropdown-grid-box{transition:none}}.ck .ck-insert-table-dropdown-grid-box:focus{box-shadow:none}.ck .ck-insert-table-dropdown-grid-box.ck-on{border-color:var(--ck-color-focus-border);background:var(--ck-color-focus-outer-shadow)}:root{--ck-widget-outline-thickness: 3px;--ck-widget-handler-icon-size: 16px;--ck-widget-handler-animation-duration: .2s;--ck-widget-handler-animation-curve: ease;--ck-color-widget-blurred-border: #dedede;--ck-color-widget-hover-border: #ffc83d;--ck-color-widget-editable-focus-background: var(--ck-color-base-background);--ck-color-widget-drag-handler-icon-color: var(--ck-color-base-background);--ck-color-resizer: var(--ck-color-focus-border);--ck-color-resizer-tooltip-background: #262626;--ck-color-resizer-tooltip-text: #f2f2f2;--ck-resizer-border-radius: var(--ck-border-radius);--ck-resizer-tooltip-offset: 10px;--ck-resizer-tooltip-height: calc(var(--ck-spacing-small) * 2 + 10px)}.ck .ck-widget{outline-width:var(--ck-widget-outline-thickness);transition:outline-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);outline-style:solid;outline-color:#0000}@media (prefers-reduced-motion:reduce){.ck .ck-widget{transition:none}}.ck .ck-widget.ck-widget_selected,.ck .ck-widget.ck-widget_selected:hover{outline:var(--ck-widget-outline-thickness) solid var(--ck-color-focus-border)}.ck .ck-widget:hover{outline-color:var(--ck-color-widget-hover-border)}.ck .ck-widget{position:relative}.ck .ck-editor__nested-editable{border:1px solid #0000}.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck .ck-editor__nested-editable:focus{box-shadow:var(--ck-inner-shadow), 0 0}@media (forced-colors:none){.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck .ck-editor__nested-editable:focus{background-color:var(--ck-color-widget-editable-focus-background)}}:is(.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused, .ck .ck-editor__nested-editable:focus):not(td, th){border:var(--ck-focus-ring);outline:none}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{box-sizing:border-box;opacity:0;transition:background-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve), visibility var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve), opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);border-radius:var(--ck-border-radius) var(--ck-border-radius) 0 0;left:calc(0px - var(--ck-widget-outline-thickness));background-color:#0000;padding:4px;top:0;transform:translateY(-100%)}@media (prefers-reduced-motion:reduce){.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{transition:none}}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{width:var(--ck-widget-handler-icon-size);height:var(--ck-widget-handler-icon-size);color:var(--ck-color-widget-drag-handler-icon-color)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:0;transition:opacity 0.3s var(--ck-widget-handler-animation-curve)}@media (prefers-reduced-motion:reduce){.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{transition:none}}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{display:block}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover .ck-icon .ck-icon__selected-indicator{opacity:1}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{position:absolute}.ck .ck-widget.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle{opacity:1;background-color:var(--ck-color-widget-hover-border);visibility:visible}:is(.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected, .ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover)>.ck-widget__selection-handle{opacity:1;background-color:var(--ck-color-focus-border);visibility:visible}:is(.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected, .ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover)>.ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:1}.ck .ck-widget.ck-widget_with-selection-handle{position:relative}.ck[dir="rtl"] .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{left:auto;right:calc(0px - var(--ck-widget-outline-thickness))}.ck.ck-editor__editable.ck-read-only .ck-widget{transition:none}.ck.ck-editor__editable.ck-read-only .ck-widget:not(.ck-widget_selected){--ck-widget-outline-thickness: 0px}.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle,.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck .ck-widget:has(.ck-widget.table:hover){outline-color:#0000}.ck .ck-widget.ck-widget_with-selection-handle:has(.ck-widget.table:hover)>.ck-widget__selection-handle{opacity:0;visibility:hidden}.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover{outline-color:var(--ck-color-widget-blurred-border)}:is(.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected, .ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover).ck-widget_with-selection-handle>.ck-widget__selection-handle,:is(.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected, .ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover).ck-widget_with-selection-handle>.ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable:not(.ck-pagination-view)>.ck-widget.ck-widget_with-selection-handle:first-child,.ck.ck-editor__editable:not(.ck-pagination-view) blockquote>.ck-widget.ck-widget_with-selection-handle:first-child{margin-top:calc(1em + var(--ck-widget-handler-icon-size))}.ck .ck-size-view{background:var(--ck-color-resizer-tooltip-background);color:var(--ck-color-resizer-tooltip-text);border:1px solid var(--ck-color-resizer-tooltip-text);border-radius:var(--ck-resizer-border-radius);font-size:var(--ck-font-size-tiny);padding:0 var(--ck-spacing-small);height:var(--ck-resizer-tooltip-height);line-height:var(--ck-resizer-tooltip-height);display:block}.ck .ck-size-view.ck-orientation-top-left,.ck .ck-size-view.ck-orientation-top-right,.ck .ck-size-view.ck-orientation-bottom-right,.ck .ck-size-view.ck-orientation-bottom-left,.ck .ck-size-view.ck-orientation-above-center{position:absolute}.ck .ck-size-view.ck-orientation-top-left{top:var(--ck-resizer-tooltip-offset);left:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-top-right{top:var(--ck-resizer-tooltip-offset);right:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-right{bottom:var(--ck-resizer-tooltip-offset);right:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-left{bottom:var(--ck-resizer-tooltip-offset);left:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-above-center{top:calc(var(--ck-resizer-tooltip-height) * -1);left:50%;transform:translate(-50%)}:root{--ck-resizer-size: 10px;--ck-resizer-offset: calc(( var(--ck-resizer-size) / -2 ) - 2px);--ck-resizer-border-width: 1px}.ck .ck-widget__resizer{outline:1px solid var(--ck-color-resizer);pointer-events:none;display:none;position:absolute;top:0;left:0}.ck .ck-widget__resizer__handle{width:var(--ck-resizer-size);height:var(--ck-resizer-size);background:var(--ck-color-focus-border);border:var(--ck-resizer-border-width) solid #fff;border-radius:var(--ck-resizer-border-radius);pointer-events:all;position:absolute}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-left{top:var(--ck-resizer-offset);left:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-right{top:var(--ck-resizer-offset);right:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-right{bottom:var(--ck-resizer-offset);right:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-left{bottom:var(--ck-resizer-offset);left:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-left,.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-right{cursor:nwse-resize}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-right,.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-left{cursor:nesw-resize}.ck .ck-widget_with-resizer{position:relative}.ck-focused .ck-widget_with-resizer.ck-widget_selected>.ck-widget__resizer{display:block}:root{--ck-widget-type-around-button-size: 20px;--ck-color-widget-type-around-button-active: var(--ck-color-focus-border);--ck-color-widget-type-around-button-hover: var(--ck-color-widget-hover-border);--ck-color-widget-type-around-button-blurred-editable: var(--ck-color-widget-blurred-border);--ck-color-widget-type-around-button-radar-start-alpha: 0;--ck-color-widget-type-around-button-radar-end-alpha: .3;--ck-color-widget-type-around-button-icon: var(--ck-color-base-background)}.ck .ck-widget .ck-widget__type-around__button{width:var(--ck-widget-type-around-button-size);height:var(--ck-widget-type-around-button-size);background:var(--ck-color-widget-type-around-button);transition:opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve), background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);opacity:0;pointer-events:none;z-index:var(--ck-z-default);border-radius:100px;display:block;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.ck .ck-widget .ck-widget__type-around__button{transition:none}}.ck .ck-widget .ck-widget__type-around__button svg{width:10px;height:8px;margin-top:1px;transition:transform 0.5s;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}@media (prefers-reduced-motion:reduce){.ck .ck-widget .ck-widget__type-around__button svg{transition:none}}.ck .ck-widget .ck-widget__type-around__button svg *{stroke-dasharray:10;stroke-dashoffset:0;fill:none;stroke:var(--ck-color-widget-type-around-button-icon);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.ck .ck-widget .ck-widget__type-around__button svg line{stroke-dasharray:7}.ck .ck-widget .ck-widget__type-around__button svg{z-index:calc(var(--ck-z-default) + 2)}.ck .ck-widget .ck-widget__type-around__button:hover{animation:1s infinite ck-widget-type-around-button-sonar}.ck .ck-widget .ck-widget__type-around__button:hover svg polyline{animation:2s linear ck-widget-type-around-arrow-dash}.ck .ck-widget .ck-widget__type-around__button:hover svg line{animation:2s linear ck-widget-type-around-arrow-tip-dash}@media (prefers-reduced-motion:reduce){.ck .ck-widget .ck-widget__type-around__button:hover{animation:none}.ck .ck-widget .ck-widget__type-around__button:hover svg polyline,.ck .ck-widget .ck-widget__type-around__button:hover svg line{animation:none}}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_before{top:calc(-.5 * var(--ck-widget-outline-thickness));left:min(10%, 30px);transform:translateY(-50%)}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_after{bottom:calc(-.5 * var(--ck-widget-outline-thickness));right:min(10%, 30px);transform:translateY(50%)}.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__button{opacity:1;pointer-events:auto}.ck .ck-widget:not(.ck-widget_selected)>.ck-widget__type-around>.ck-widget__type-around__button{background:var(--ck-color-widget-type-around-button-hover)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover{background:var(--ck-color-widget-type-around-button-active)}:is(.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button, .ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover):after{width:calc(var(--ck-widget-type-around-button-size) - 2px);height:calc(var(--ck-widget-type-around-button-size) - 2px);content:"";z-index:calc(var(--ck-z-default) + 1);background:linear-gradient(135deg, #fff0 0%, #ffffff4d 100%);border-radius:100px;display:block;position:absolute;top:1px;left:1px}.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_before,.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_after{outline-color:#0000}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button{opacity:1;pointer-events:auto}.ck .ck-widget.ck-widget_with-selection-handle>.ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:20px}.ck .ck-widget .ck-widget__type-around__fake-caret{pointer-events:none;background:var(--ck-color-base-text);outline:1px solid #ffffff80;height:1px;animation:1s linear infinite forwards ck-widget-type-around-fake-caret-pulse}:is(.ck .ck-widget.ck-widget_type-around_show-fake-caret_before, .ck .ck-widget.ck-widget_type-around_show-fake-caret_after).ck-widget_selected:hover{outline-color:var(--ck-color-widget-hover-border)}:is(.ck .ck-widget.ck-widget_type-around_show-fake-caret_before, .ck .ck-widget.ck-widget_type-around_show-fake-caret_after)>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}:is(:is(.ck .ck-widget.ck-widget_type-around_show-fake-caret_before, .ck .ck-widget.ck-widget_type-around_show-fake-caret_after).ck-widget_with-selection-handle.ck-widget_selected, :is(.ck .ck-widget.ck-widget_type-around_show-fake-caret_before, .ck .ck-widget.ck-widget_type-around_show-fake-caret_after).ck-widget_with-selection-handle.ck-widget_selected:hover)>.ck-widget__selection-handle{opacity:0}:is(.ck .ck-widget.ck-widget_type-around_show-fake-caret_before, .ck .ck-widget.ck-widget_type-around_show-fake-caret_after).ck-widget_selected.ck-widget_with-resizer>.ck-widget__resizer{opacity:0}.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__fake-caret{display:none;position:absolute;left:0;right:0}.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__fake-caret{left:calc(-1 * var(--ck-widget-outline-thickness));right:calc(-1 * var(--ck-widget-outline-thickness))}.ck .ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__fake-caret{top:calc(-1 * var(--ck-widget-outline-thickness) - 1px);display:block}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__fake-caret{bottom:calc(-1 * var(--ck-widget-outline-thickness) - 1px);display:block}.ck[dir="rtl"] .ck-widget.ck-widget_with-selection-handle .ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:0;margin-right:20px}:is(.ck-editor__nested-editable.ck-editor__editable_selected .ck-widget.ck-widget_selected, .ck-editor__nested-editable.ck-editor__editable_selected .ck-widget:hover)>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck .ck-widget:has(.ck-widget.table:hover)>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover){background:var(--ck-color-widget-type-around-button-blurred-editable)}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover) svg *{stroke:#999}@keyframes ck-widget-type-around-arrow-dash{0%{stroke-dashoffset:10px}20%,100%{stroke-dashoffset:0}}@keyframes ck-widget-type-around-arrow-tip-dash{0%,20%{stroke-dashoffset:7px}40%,100%{stroke-dashoffset:0}}@keyframes ck-widget-type-around-button-sonar{0%{box-shadow:0 0 0 0 hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha))}50%{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-end-alpha))}100%{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha))}}@keyframes ck-widget-type-around-fake-caret-pulse{0%{opacity:1}49%{opacity:1}50%{opacity:0}99%{opacity:0}100%{opacity:1}}.ck.ck-editor__editable.ck-read-only .ck-widget__type-around,.ck.ck-editor__editable.ck-widget__type-around_disabled .ck-widget__type-around{display:none}.ck.ck-editor__editable.ck-restricted-editing_mode_restricted .ck-widget__type-around{display:none}.ck.ck-editor__editable.ck-restricted-editing_mode_restricted div.restricted-editing-exception .ck-widget__type-around{display:initial}:root{--ck-color-list-button-on-background: #EFF0EF;--ck-color-list-button-on-background-focus: #EFF0EF;--ck-color-list-button-hover-background: #EFF0EF;--ck-color-list-button-on-text: black;--ck-color-image-caption-background: transparent;--ck-spacing-small: 0.35rem;--ck-ui-component-min-height: 1rem;--ck-icon-size: 1.3rem;--ck-z-default: 9999;--ck-z-panel: calc( var(--ck-z-default) + 999 );--ck-z-dialog: calc( var(--ck-z-panel) + 9999 );--ck-text-tiny-font-size: 0.7rem;--ck-text-small-font-size: 0.85rem;--ck-text-big-font-size: 1.4rem;--ck-text-huge-font-size: 1.8rem;--ck-content-font-size: 1rem}.text-tiny{font-size:var(--ck-text-tiny-font-size)}.text-small{font-size:var(--ck-text-small-font-size)}.text-big{font-size:var(--ck-text-big-font-size)}.text-huge{font-size:var(--ck-text-huge-font-size)}.ck-editor{z-index:0}.ck-content .image img,.ibo-is-html-content .image img{min-width:inherit;margin-left:0;margin-right:0}.ck-content .image-style-align-left,.ibo-is-html-content .image-style-align-left,.ck-content .image-style-align-right,.ibo-is-html-content .image-style-align-right{display:block;float:unset}.ck-content .image-style-align-left,.ibo-is-html-content .image-style-align-left{text-align:left;margin-right:0}.ck-content .image-style-align-right,.ibo-is-html-content .image-style-align-right{text-align:right;margin-left:0}.ck-content figure,.ibo-is-html-content figure{margin-left:0;margin-right:0}.ck-content figure table,.ibo-is-html-content figure table{text-align:initial}.ck-content .table,.ibo-is-html-content .table{margin-left:0;margin-right:0}.ck-content .table table th,.ibo-is-html-content .table table th{background-color:#F4F4F4}.ck-content .marker-yellow,.ibo-is-html-content .marker-yellow{background-color:#FDFD77}.ck-content .marker-green,.ibo-is-html-content .marker-green{background-color:#62F962}.ck-content .marker-pink,.ibo-is-html-content .marker-pink{background-color:#FC7899}.ck-content .marker-blue,.ibo-is-html-content .marker-blue{background-color:#72CCFD}.ck.ck-fullscreen__main-wrapper .ck-fullscreen__sidebar{display:none}.ck-fullscreen__editable{display:flex;flex-direction:column;width:100%;margin:0;padding:0}.ck-table-show-hidden-borders{width:100%;max-width:100%;margin:0;border:0;padding:2em;flex-grow:1}.ck-fullscreen__main-wrapper .ck-fullscreen__editable-wrapper{--ck-fullscreen-editor-top-margin: 0;--ck-fullscreen-editor-bottom-margin: 0;flex-grow:1}.ck-fullscreen__main-wrapper .ck-fullscreen__editable::after{display:none}.ck.ck-fullscreen__right-edge{margin-left:0}.ck-fullscreen__main-wrapper .ck-fullscreen__editable .ck.ck-editor__editable:not(.ck-editor__nested-editable){height:100%;width:100%;max-width:100%;padding:0}:root{--ck-content-font-family: inherit;--ck-content-font-color: inherit;--ck-content-font-size: inherit;--ck-content-line-height: inherit;--ck-content-word-break: inherit;--ck-content-overflow-wrap: inherit}.ck{--ck-color-list-button-on-background: #e1e7ec;--ck-color-list-button-on-background-focus: #e1e7ec;--ck-color-list-button-hover-background: #e1e7ec;--ck-color-list-button-on-text: #212934;--ck-text-tiny-font-size: 0.67rem;--ck-text-small-font-size: 0.83rem;--ck-text-big-font-size: 1.33rem;--ck-text-huge-font-size: 1.83rem;--ck-color-image-caption-text: #212934}.ck-editor{width:100% !important;display:inline-grid;z-index:1}.ck-editor .ck-editor__main{overflow:auto}.ck.ck-content,.ck.ibo-is-html-content{color:#212934}.ck.ck-content .table table,.ck.ibo-is-html-content .table table{width:100% !important}.ck-editor__editable_inline:not(.ck-comment__input *){height:200px}.ck-content pre[data-language],.ibo-is-html-content pre[data-language]{padding:0 !important}.ck-content pre[data-language] code,.ibo-is-html-content pre[data-language] code{display:block;background:#212934 !important;padding:0.9rem !important;color:white !important}.ck-maximize_editor_main .ck-source-editing-area textarea{overflow:auto !important}.ck-mentions .ck-button{line-height:1.6rem;padding:4px 8px !important}.c3 path:not(.c3-legend-item-tile),.c3 line:not(.c3-legend-item-tile){stroke:#212934 !important}.c3-chart-arc path:not(.c3-legend-item-tile){stroke:white !important}.c3-axis{fill:#212934 !important}.c3-tooltip th{background-color:#aebecd !important;color:white !important}.c3-tooltip td{background-color:#929fb1 !important}.c3-legend-background{fill:white !important;stroke:#f2f2f2 !important}.c3-tooltip{background-color:#aebecd !important}.c3-tooltip tr{border:1px solid #CCC}.c3-legend-item{fill:#212934 !important}.tippy-content{white-space:pre-line}.ui-dialog{box-sizing:content-box;display:flex;flex-direction:column;position:absolute;top:0;left:0;background-color:white;border-radius:5px;overflow:hidden;outline:0;z-index:21}.ui-dialog .ui-dialog-titlebar{padding:0.4em 30px;position:relative;background-color:white;height:50px;border-bottom:solid 1px #e1e7ec;display:flex;flex-direction:row;align-items:center;justify-content:space-between}.ui-dialog .ui-dialog-title{float:left;margin:0.1em 0;width:100%;padding-right:24px}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:0;top:0.4em;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{box-sizing:content-box;position:relative;padding:16px 30px;overflow:auto}.ui-dialog .ui-dialog-buttonpane{margin-top:auto;text-align:left;border-width:1px 0 0 0;background-image:none;padding:0.4em 30px;position:relative;background-color:white;border-top:solid 1px #e1e7ec;height:50px}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:0.5em 0.4em 0.5em 0;cursor:pointer}.ui-dialog .ui-resizable-n{height:2px;top:0}.ui-dialog .ui-resizable-e{width:2px;right:0}.ui-dialog .ui-resizable-s{height:2px;bottom:0}.ui-dialog .ui-resizable-w{width:2px;left:0}.ui-dialog .ui-resizable-se{width:7px;height:7px;right:0;bottom:0}.ui-dialog .ui-resizable-sw{width:7px;height:7px;left:0;bottom:0}.ui-dialog .ui-resizable-ne{width:7px;height:7px;right:0;top:0}.ui-dialog .ui-resizable-nw{width:7px;height:7px;left:0;top:0}.ui-dialog .ui-button>.ui-icon{background-image:none;float:unset;margin:auto}.ui-dialog .ui-button>.ui-icon.ui-icon-closethick::after{content:"";font-family:"Font Awesome 5 Free";font-weight:600;text-indent:0;position:absolute;left:0px;width:100%;top:4px}.ui-button-icon-only{text-indent:-9999px;white-space:nowrap}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-widget-overlay.ui-front{position:fixed;top:0;left:0;width:100%;height:100%;opacity:0.6;filter:alpha(opacity=60);background-color:#37474f}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle{display:none}.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-layout-pane{overflow:auto}.ui-datepicker{display:none;background-color:white;border-radius:5px;box-shadow:0 1px 2px rgba(0, 0, 0, 0.25), 0 1px 3px rgba(0, 0, 0, 0.12);z-index:32 !important;padding:0 8px 5px 8px}.ui-datepicker .ui-datepicker-header{position:relative;margin:8px 8px 4px 8px;padding-top:24px}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:0}.ui-datepicker .ui-datepicker-prev{left:0}.ui-datepicker .ui-datepicker-next{right:0}.ui-datepicker .ui-datepicker-title{display:flex;justify-content:space-evenly}.ui-datepicker .ui-datepicker-title select{flex-grow:1}.ui-datepicker .ui-datepicker-year{margin-left:8px}.ui-datepicker .ui-datepicker-calendar{margin:0 8px 8px 8px}.ui-datepicker th{padding:0.7em 0.3em;text-align:center;font-weight:bold}.ui-datepicker td{padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:0.2em 0;text-align:center;width:23px;border-radius:100%;color:#c05621}.ui-datepicker td span.ui-state-active,.ui-datepicker td a.ui-state-active{background-color:#c05621;color:floralwhite}.ui-datepicker td span.ui-state-highlight:not(.ui-state-active),.ui-datepicker td a.ui-state-highlight:not(.ui-state-active){background-color:#feebc8}.ui-datepicker td span.ui-state-hover:not(.ui-state-active),.ui-datepicker td a.ui-state-hover:not(.ui-state-active){color:#7b341e}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:0.7em 0 0 0;padding:0 0.2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:0.5em 0.2em 0.4em;cursor:pointer;padding:0.2em 0.6em 0.3em 0.6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto 0.4em}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current{float:right}.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-slider{position:relative;text-align:left;background-color:#f8f9fa;border:solid 1px #929fb1;border-radius:3px}.ui-slider .ui-slider-handle{background-color:white;border:solid 1px #929fb1;border-radius:3px;position:absolute;z-index:2;width:1.4em;height:1.4em;-ms-touch-action:none;touch-action:none;cursor:pointer}.ui-slider .ui-slider-handle:hover,.ui-slider .ui-slider-handle:active{border:solid 1px #c05621}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:0.7em;display:block;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle{filter:inherit}.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:0.8em}.ui-slider-horizontal .ui-slider-handle{top:-0.2em;margin-left:-0.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:0.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-0.3em;margin-left:0;margin-bottom:-0.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default;z-index:100}.ui-autocomplete .ui-menu-item{padding:0}.ui-autocomplete-input{width:auto;display:inline}.ui-helper-hidden-accessible{clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-tabs-tab.ui-state-disabled a{cursor:not-allowed !important}.ui-multiselect{width:auto !important;padding-left:0.7em !important;padding-right:1.5em !important;text-align:left;white-space:nowrap;overflow:hidden;display:grid}button.ui-multiselect>span{overflow:hidden}.ui-multiselect span.ui-icon{float:right}.ui-multiselect-single .ui-multiselect-checkboxes input{position:absolute !important;top:auto !important;left:-9999px}.ui-multiselect-single .ui-multiselect-checkboxes label{padding:5px !important}.ui-multiselect-header{margin-bottom:3px;padding:3px 0}.ui-multiselect-header ul{padding-left:24px}.ui-multiselect-header ul li{float:left;padding:0 10px 0 0}.ui-multiselect-header span.ui-icon{float:left}.ui-multiselect-header li.ui-multiselect-close{float:right;text-align:right;padding-right:0}.ui-multiselect-menu{display:none;padding:3px;position:absolute;z-index:10000;text-align:left}.ui-multiselect-checkboxes{position:relative;overflow-y:scroll !important}.ui-multiselect-checkboxes label{display:flex;align-items:center;cursor:pointer;padding:3px 1px}.ui-multiselect-checkboxes label input{margin-right:5px;position:relative;top:1px}.ui-multiselect-checkboxes li{clear:both;padding-right:3px}.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label{text-align:center}.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label a{display:block;padding:3px;margin:1px 0;text-decoration:none}.ui-dialog-titlebar.ui-multiselect-header{padding-left:20px;padding-right:20px}.ui-dialog-titlebar.ui-multiselect-header ul{padding-left:0;width:100%}.ui-dialog-titlebar.ui-multiselect-header a{color:#212934;font-weight:normal}.ui-multiselect,.ui-multiselect-menu,.ui-multiselect-header{background-color:#f8f9fa}button.ui-multiselect{padding-right:10px !important}button.ui-multiselect .fas{float:right;padding-left:10px}.dataTables_paginate{color:#404b5a}.dataTables_paginate a.paginate_button{display:inline-flex;justify-content:center;align-items:center;padding:0 5px;min-width:20px;height:20px;border-radius:3px}.dataTables_paginate a.paginate_button:hover{background-color:#f8f9fa}.dataTables_paginate a.paginate_button.disabled{color:#929fb1;background-color:transparent;cursor:default}.dataTables_paginate a.paginate_button.current{color:#212934;background-color:#e1e7ec;box-shadow:inset 0px 1px 0px rgba(0, 0, 0, 0.15)}.dataTables_length select{}.dataTables_length select[aria-controls]{display:inline-flex;width:unset;min-width:50px;height:20px;padding:0 4px}.dataTables_scrollHead{}.dataTables_scrollHead thead tr th{cursor:pointer}.dataTables_scrollHead thead tr th.sorting::after{position:absolute;right:calc((12px - 8px) / 2);content:"";opacity:0.3;line-height:inherit}.dataTables_scrollHead thead tr th.sorting_asc:after{content:"";opacity:1}.dataTables_scrollHead thead tr th.sorting_desc:after{content:"";opacity:1}.dataTables_scrollHeadInner{border-bottom:1px solid #ccd4db}.dataTable th,.dataTable td{position:relative;padding:10px 12px}.dataTable tr:nth-child(odd){background-color:white}.dataTable tr:nth-child(even){background-color:#f2f2f2}.dataTable tr.ibo-is-red{background-color:#fce8e8}.dataTable tr.ibo-is-danger{background-color:#fed7d7}.dataTable tr.ibo-is-alert{background-color:#fed7d7}.dataTable tr.ibo-is-orange{background-color:floralwhite}.dataTable tr.ibo-is-warning{background-color:#feebc8}.dataTable tr.ibo-is-blue{background-color:#bee3f8}.dataTable tr.ibo-is-info{background-color:#bee3f8}.dataTable tr.ibo-is-green{background-color:#dcedc8}.dataTable tr.ibo-is-success{background-color:#c5e1a5}.dataTable tr.ibo-is-red td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#feb2b2}.dataTable tr.ibo-is-danger td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#fc8181}.dataTable tr.ibo-is-alert td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#fc8181}.dataTable tr.ibo-is-orange td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#fbd38d}.dataTable tr.ibo-is-warning td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#f6ae55}.dataTable tr.ibo-is-blue td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#63b4ed}.dataTable tr.ibo-is-info td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#63b4ed}.dataTable tr.ibo-is-green td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#aed581}.dataTable tr.ibo-is-success td:first-child::before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background-color:#aed581}.treeview,.treeview ul{padding:0;margin:0;list-style:none}.treeview div.hitarea{height:15px;width:15px;margin-left:-15px;float:left;cursor:pointer}.treeview li{margin:0;padding:3px 0 3px 16px}.treeview a.selected{background-color:#f8f9fa}#treecontrol{margin:1em 0}.treeview .hover{color:#dd6c20;cursor:pointer}.treeview li{background:url("..//images/tv-item.gif") 0 0 no-repeat}.treeview .collapsable{background-image:url("..//images/tv-collapsable.gif")}.treeview .expandable{background-image:url("..//images/tv-expandable.gif")}.treeview .last{background-image:url("..//images/tv-item-last.gif")}.treeview .lastCollapsable{background-image:url("..//images/tv-collapsable-last.gif")}.treeview .lastExpandable{background-image:url("..//images/tv-expandable-last.gif")}.filetree li{padding:3px 0 1px 16px}.filetree span.folder,.filetree span.file{padding-left:16px;display:block;height:15px}.filetree span.folder{background:url("..//images/tv-folder.gif") 0 0 no-repeat}.filetree span.file{background:url("..//images/tv-file.gif") 0 0 no-repeat}.blockUI.blockOverlay{background-color:#f2f2f2}.blockUI.blockMsg{font-size:6em;text-align:center;color:#6e7a8a;border:none;background-color:transparent}.mfp-bg{z-index:1100}.mfp-wrap{z-index:1101}.selectize-dropdown,.selectize-input,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active,.selectize-input input,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active input{color:#212934}.selectize-control.single .selectize-input,.selectize-control.single .ibo-quick-create--input.selectize-control.single .selectize-input.input-active,.ibo-quick-create--input.selectize-control.single .selectize-control.single .selectize-input.input-active{box-shadow:unset;background-color:white;background-image:unset;background-repeat:unset}.selectize-input,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active,.selectize-control.single .selectize-input.input-active,.selectize-control.single .ibo-quick-create--input.selectize-control.single .selectize-input.input-active,.ibo-quick-create--input.selectize-control.single .selectize-control.single .selectize-input.input-active{background:unset;background-color:white;cursor:text;display:inline-flex}.selectize-control.single .selectize-input.dropdown-active:after,.selectize-control.single .ibo-quick-create--input.selectize-control.single .dropdown-active.selectize-input.input-active:after,.ibo-quick-create--input.selectize-control.single .selectize-control.single .dropdown-active.selectize-input.input-active:after{margin-top:unset;border-width:unset;border-color:unset}.selectize-control.single .selectize-input:after,.selectize-control.single .ibo-quick-create--input.selectize-control.single .selectize-input.input-active:after,.ibo-quick-create--input.selectize-control.single .selectize-control.single .selectize-input.input-active:after,.selectize-control.single .selectize-input:not(.no-arrow):after,.selectize-control.single .ibo-quick-create--input.selectize-control.single .selectize-input.input-active:not(.no-arrow):after,.ibo-quick-create--input.selectize-control.single .selectize-control.single .selectize-input.input-active:not(.no-arrow):after{content:unset}.selectize-input::after,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active::after{content:unset}.selectize-input>*,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active>*{display:inline-flex}.selectize-control.single .selectize-input,.selectize-control.single .ibo-quick-create--input.selectize-control.single .selectize-input.input-active,.ibo-quick-create--input.selectize-control.single .selectize-control.single .selectize-input.input-active,.selectize-dropdown.single{border-color:#aebecd}.selectize-dropdown{background-color:white;color:#212934}.selectize-dropdown .selected,.selectize-dropdown .active,.selectize-dropdown .active:not(.selected){background:#ebf8ff;color:#212934}.selectize-dropdown [data-selectable],.selectize-dropdown .optgroup-header{padding:5px 8px}.selectize-dropdown .option{opacity:1}.selectize-add-option{display:inline-flex;justify-content:center;align-items:flex-end;position:absolute;right:0;padding-bottom:10px;height:100%;width:24px;z-index:1;color:#212934}.selectize-input .attribute-set-item>*,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item>*{display:inline}.selectize-input .attribute-set-item.item-add::before,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-add::before,.selectize-input .attribute-set-item.item-remove::before,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-remove::before{margin-right:4px}.selectize-input .attribute-set-item.item-add,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-add{background-color:#dcedc8 !important}.selectize-input .attribute-set-item.item-add::before,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-add::before{color:#33691e;content:""}.selectize-input .attribute-set-item.item-remove,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-remove{background-color:#fce8e8 !important}.selectize-input .attribute-set-item.item-remove::before,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-remove::before{color:#9b2c2c;content:""}.selectize-input .attribute-set-item.item-ignore-partial,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active .attribute-set-item.item-ignore-partial{background-color:#e1e7ec !important}.selectize-input.selectize-input-error,.ibo-quick-create--input.selectize-control.single .selectize-input-error.selectize-input.input-active{border:1px solid #e53e3e}.toastify.on{opacity:1}.toast-close{background:transparent;border:0;color:inherit;cursor:pointer;font-family:inherit;padding:0;margin-left:8px}.toastify-right{right:16px}.toastify-left{left:16px}.toastify-top{top:-150px}.toastify-bottom{bottom:-150px}.toastify-rounded{border-radius:25px}.toastify-avatar{width:1.5em;height:1.5em;margin:-7px 5px;border-radius:2px}.toastify-center{margin-left:auto;margin-right:auto;left:0;right:0;max-width:fit-content;max-width:-moz-fit-content}@media only screen and (max-width:360px){.toastify-right,.toastify-left{margin-left:auto;margin-right:auto;left:0;right:0;max-width:fit-content}}:root{--ibo-scrollbar--scrollbar-width: 8px;--ibo-scrollbar--scrollbar-height: 8px;--ibo-scrollbar--scrollbar-track-background-color: rgba(255, 255, 255, 0);--ibo-scrollbar--scrollbar-track-border-radius: 5px;--ibo-scrollbar--scrollbar-thumb-background-color: #d5dde5;--ibo-scrollbar--scrollbar-thumb-border: none;--ibo-scrollbar--scrollbar-thumb-border-radius: 5px}*,*::before,*::after{box-sizing:border-box}*{scrollbar-width:thin;scrollbar-color:var(--ibo-scrollbar--scrollbar-thumb-background-color) var(--ibo-scrollbar--scrollbar-track-background-color)}*::-webkit-scrollbar{width:var(--ibo-scrollbar--scrollbar-width);height:var(--ibo-scrollbar--scrollbar-height)}*::-webkit-scrollbar-track{background-color:var(--ibo-scrollbar--scrollbar-track-background-color);border-radius:var(--ibo-scrollbar--scrollbar-track-border-radius)}* ::-webkit-scrollbar-thumb{background-color:var(--ibo-scrollbar--scrollbar-thumb-background-color);border:var(--ibo-scrollbar--scrollbar-thumb-border);border-radius:var(--ibo-scrollbar--scrollbar-thumb-border-radius)}html{font-size:12px}a{color:var(--ibo-hyperlink-color);text-decoration:var(--ibo-hyperlink-text-decoration)}a:hover,a:active,a:visited{text-decoration:var(--ibo-hyperlink-text-decoration)}a:hover{color:var(--ibo-hyperlink-color--on-hover);text-decoration:var(--ibo-hyperlink-text-decoration--on-hover)}a:active{color:var(--ibo-hyperlink-color--on-active);text-decoration:var(--ibo-hyperlink-text-decoration--on-active)}.ibo-alert.ibo-is-primary{background-color:#feebc8;color:#7b341e}.ibo-alert.ibo-is-primary a{color:#7b341e}.ibo-alert.ibo-is-primary::before{background-color:#c05621}.ibo-alert.ibo-is-secondary,.ui-dialog .ibo-alert.ui-button,.ibo-alert.ui-datepicker-current,.ibo-alert.ui-datepicker-close{background-color:#e1e7ec;color:#212934}.ibo-alert.ibo-is-secondary a,.ui-dialog .ibo-alert.ui-button a,.ibo-alert.ui-datepicker-current a,.ibo-alert.ui-datepicker-close a{color:#212934}.ibo-alert.ibo-is-secondary::before,.ui-dialog .ibo-alert.ui-button::before,.ibo-alert.ui-datepicker-current::before,.ibo-alert.ui-datepicker-close::before{background-color:#6e7a8a}.ibo-alert.ibo-is-neutral,.ui-dialog .ibo-alert.ui-button.ui-dialog-titlebar-close{background-color:#e1e7ec;color:#212934}.ibo-alert.ibo-is-neutral a,.ui-dialog .ibo-alert.ui-button.ui-dialog-titlebar-close a{color:#212934}.ibo-alert.ibo-is-neutral::before,.ui-dialog .ibo-alert.ui-button.ui-dialog-titlebar-close::before{background-color:#6e7a8a}.ibo-toast.ibo-is-information,.ibo-alert.ibo-is-information{background-color:#bee3f8;color:#2a4265}.ibo-toast.ibo-is-information a,.ibo-alert.ibo-is-information a{color:#2a4265}.ibo-toast.ibo-is-information::before,.ibo-alert.ibo-is-information::before{background-color:#2b6bb0}.ibo-toast.ibo-is-success,.ibo-alert.ibo-is-success{background-color:#dcedc8;color:#33691e}.ibo-toast.ibo-is-success a,.ibo-alert.ibo-is-success a{color:#33691e}.ibo-toast.ibo-is-success::before,.ibo-alert.ibo-is-success::before{background-color:#689f38}.ibo-alert.ibo-is-failure{background-color:#fed7d7;color:#742a2a}.ibo-alert.ibo-is-failure a{color:#742a2a}.ibo-alert.ibo-is-failure::before{background-color:#c53030}.ibo-toast.ibo-is-warning,.ibo-alert.ibo-is-warning{background-color:#feebc8;color:#7b341e}.ibo-toast.ibo-is-warning a,.ibo-alert.ibo-is-warning a{color:#7b341e}.ibo-toast.ibo-is-warning::before,.ibo-alert.ibo-is-warning::before{background-color:#c05621}.ibo-toast.ibo-is-error,.ibo-alert.ibo-is-danger{background-color:#fed7d7;color:#742a2a}.ibo-toast.ibo-is-error a,.ibo-alert.ibo-is-danger a{color:#742a2a}.ibo-toast.ibo-is-error::before,.ibo-alert.ibo-is-danger::before{background-color:#c53030}.ibo-alert.ibo-is-grey{background-color:#e1e7ec;color:#212934}.ibo-alert.ibo-is-grey a{color:#212934}.ibo-alert.ibo-is-grey::before{background-color:#6e7a8a}.ibo-alert.ibo-is-blue-grey{background-color:#b0bec5;color:#263238}.ibo-alert.ibo-is-blue-grey a{color:#263238}.ibo-alert.ibo-is-blue-grey::before{background-color:#455a64}.ibo-alert.ibo-is-blue{background-color:#bee3f8;color:#2a4265}.ibo-alert.ibo-is-blue a{color:#2a4265}.ibo-alert.ibo-is-blue::before{background-color:#2b6bb0}.ibo-alert.ibo-is-cyan{background-color:#c9eef2;color:#006164}.ibo-alert.ibo-is-cyan a{color:#006164}.ibo-alert.ibo-is-cyan::before{background-color:#2b6bb0}.ibo-alert.ibo-is-green{background-color:#dcedc8;color:#33691e}.ibo-alert.ibo-is-green a{color:#33691e}.ibo-alert.ibo-is-green::before{background-color:#689f38}.ibo-alert.ibo-is-orange{background-color:#feebc8;color:#7b341e}.ibo-alert.ibo-is-orange a{color:#7b341e}.ibo-alert.ibo-is-orange::before{background-color:#c05621}.ibo-alert.ibo-is-red{background-color:#fed7d7;color:#742a2a}.ibo-alert.ibo-is-red a{color:#742a2a}.ibo-alert.ibo-is-red::before{background-color:#c53030}.ibo-alert.ibo-is-pink{background-color:#fed7e2;color:#702459}.ibo-alert.ibo-is-pink a{color:#702459}.ibo-alert.ibo-is-pink::before{background-color:#b83280}.ibo-alert{position:relative;padding:18px 20px;min-height:30px;border-radius:3px;overflow:hidden}.ibo-alert::before{display:block;position:absolute;top:0;left:0;content:"";width:4px;height:100%}.ibo-alert .ibo-alert--title{cursor:pointer}.ibo-alert.ibo-is-opened .ibo-alert--minimize-button,.ibo-alert.ibo-input-select-icon--menu .ibo-alert--minimize-button{display:block}.ibo-alert.ibo-is-opened .ibo-alert--maximize-button,.ibo-alert.ibo-input-select-icon--menu .ibo-alert--maximize-button{display:none}.ibo-alert:not(.ibo-is-opened){padding:5px 20px}.ibo-alert:not(.ibo-is-opened) .ibo-alert--title{padding-bottom:0}.ibo-alert:not(.ibo-is-opened) .ibo-alert--minimize-button{display:none}.ibo-alert:not(.ibo-is-opened) .ibo-alert--maximize-button{display:block}.ibo-alert:not(.ibo-is-opened) .ibo-alert--body{display:none}.ibo-alert--title+.ibo-alert--body{margin-top:4px}.ibo-alert--action-button{position:absolute;cursor:pointer;top:5px}.ibo-alert--action-button:hover i{opacity:0.8}.ibo-alert--action-button.ibo-alert--maximize-button,.ibo-alert--action-button.ibo-alert--minimize-button{right:30px}.ibo-alert--action-button.ibo-alert--close-button{right:10px}.ibo-button.ibo-is-regular.ibo-is-neutral,.ui-dialog .ibo-is-regular.ibo-is-neutral.ui-button,.ui-dialog .ibo-is-neutral.ui-button,.ui-dialog .ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-current,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-close,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ibo-is-regular.ibo-is-neutral.ui-datepicker-current,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-neutral.ui-datepicker-current,.ibo-is-neutral.ui-datepicker-current.ui-datepicker-close,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ibo-is-regular.ibo-is-neutral.ui-datepicker-close,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ibo-is-neutral.ui-datepicker-close.ui-datepicker-current,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-neutral.ui-datepicker-close,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-button.ibo-is-neutral.ui-button,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close,.ibo-button.ibo-is-neutral.ui-datepicker-current,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-button.ibo-is-neutral.ui-datepicker-close,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-regular.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:#f8f9fa;color:#212934;box-shadow:0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-neutral:hover,.ui-dialog .ibo-is-regular.ibo-is-neutral.ui-button:hover,.ui-dialog .ibo-is-neutral.ui-button:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-close:hover,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-neutral.ui-datepicker-current:hover,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button:hover,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-neutral.ui-datepicker-current:hover,.ibo-is-neutral.ui-datepicker-current.ui-datepicker-close:hover,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-neutral.ui-datepicker-close:hover,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button:hover,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-neutral.ui-datepicker-close.ui-datepicker-current:hover,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-neutral.ui-datepicker-close:hover,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-button.ibo-is-neutral.ui-button:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:hover,.ibo-button.ibo-is-neutral.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-button.ibo-is-neutral.ui-datepicker-close:hover,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-regular.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close:hover,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#e1e7ec;color:#212934;box-shadow:0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-neutral:active,.ui-dialog .ibo-is-regular.ibo-is-neutral.ui-button:active,.ui-dialog .ibo-is-neutral.ui-button:active,.ui-dialog .ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-current:active,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-close:active,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ibo-is-regular.ibo-is-neutral.ui-datepicker-current:active,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button:active,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-neutral.ui-datepicker-current:active,.ibo-is-neutral.ui-datepicker-current.ui-datepicker-close:active,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ibo-is-regular.ibo-is-neutral.ui-datepicker-close:active,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button:active,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ibo-is-neutral.ui-datepicker-close.ui-datepicker-current:active,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-neutral.ui-datepicker-close:active,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-button.ibo-is-neutral.ui-button:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:active,.ibo-button.ibo-is-neutral.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-button.ibo-is-neutral.ui-datepicker-close:active,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-regular.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close:active,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#e1e7ec;color:#212934;box-shadow:inset 0px 2px 0px #d5dde5 , 0px 2px 0px #e1e7ec}.ibo-button.ibo-is-regular.ibo-is-neutral:disabled,.ui-dialog .ibo-is-regular.ibo-is-neutral.ui-button:disabled,.ui-dialog .ibo-is-neutral.ui-button:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-neutral.ui-button.ui-datepicker-close:disabled,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-neutral.ui-datepicker-current:disabled,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button:disabled,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-neutral.ui-datepicker-current:disabled,.ibo-is-neutral.ui-datepicker-current.ui-datepicker-close:disabled,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-neutral.ui-datepicker-close:disabled,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button:disabled,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-neutral.ui-datepicker-close.ui-datepicker-current:disabled,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-neutral.ui-datepicker-close:disabled,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ibo-is-neutral.ui-button:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:disabled,.ibo-button.ibo-is-neutral.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-button.ibo-is-neutral.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-regular.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close:disabled,.ui-dialog .ibo-is-regular.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-primary,.ui-dialog .ibo-is-regular.ibo-is-primary.ui-button,.ui-dialog .ibo-is-primary.ui-button,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-primary.ui-datepicker-current,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button,.ibo-is-primary.ui-datepicker-current,.ibo-is-primary.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-primary.ui-datepicker-close,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button,.ibo-is-primary.ui-datepicker-close.ui-datepicker-current,.ibo-is-primary.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-primary.ui-button,.ibo-button.ibo-is-primary.ui-datepicker-current,.ibo-button.ibo-is-primary.ui-datepicker-close{background-color:#00838f;color:white;box-shadow:0px 2px 0px #003636}.ibo-button.ibo-is-regular.ibo-is-primary:hover,.ui-dialog .ibo-is-regular.ibo-is-primary.ui-button:hover,.ui-dialog .ibo-is-primary.ui-button:hover,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-primary.ui-datepicker-current:hover,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button:hover,.ibo-is-primary.ui-datepicker-current:hover,.ibo-is-primary.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-primary.ui-datepicker-close:hover,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button:hover,.ibo-is-primary.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-primary.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-primary.ui-button:hover,.ibo-button.ibo-is-primary.ui-datepicker-current:hover,.ibo-button.ibo-is-primary.ui-datepicker-close:hover{background-color:#006164;color:white;box-shadow:0px 2px 0px #003636}.ibo-button.ibo-is-regular.ibo-is-primary:active,.ui-dialog .ibo-is-regular.ibo-is-primary.ui-button:active,.ui-dialog .ibo-is-primary.ui-button:active,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-primary.ui-datepicker-current:active,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button:active,.ibo-is-primary.ui-datepicker-current:active,.ibo-is-primary.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-primary.ui-datepicker-close:active,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button:active,.ibo-is-primary.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-primary.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-primary.ui-button:active,.ibo-button.ibo-is-primary.ui-datepicker-current:active,.ibo-button.ibo-is-primary.ui-datepicker-close:active{background-color:#006164;color:white;box-shadow:inset 0px 2px 0px #003636 , 0px 2px 0px #006164}.ibo-button.ibo-is-regular.ibo-is-primary:disabled,.ui-dialog .ibo-is-regular.ibo-is-primary.ui-button:disabled,.ui-dialog .ibo-is-primary.ui-button:disabled,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-primary.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-primary.ui-datepicker-current:disabled,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button:disabled,.ibo-is-primary.ui-datepicker-current:disabled,.ibo-is-primary.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-primary.ui-datepicker-close:disabled,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button:disabled,.ibo-is-primary.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-primary.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-primary.ui-button:disabled,.ibo-button.ibo-is-primary.ui-datepicker-current:disabled,.ibo-button.ibo-is-primary.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-secondary,.ui-dialog .ibo-is-regular.ibo-is-secondary.ui-button,.ui-dialog .ibo-is-secondary.ui-button,.ui-dialog .ui-button,.ui-dialog .ui-button.ui-datepicker-current,.ui-dialog .ui-button.ui-datepicker-close,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-current,.ui-dialog .ui-button.ui-datepicker-current.ui-datepicker-close,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-close,.ui-dialog .ui-button.ui-datepicker-close.ui-datepicker-current,.ui-dialog .ibo-is-regular.ui-button,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-secondary.ui-datepicker-current,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button,.ui-dialog .ui-datepicker-current.ui-button,.ui-dialog .ui-datepicker-current.ui-button.ui-datepicker-close,.ibo-is-secondary.ui-datepicker-current,.ui-datepicker-current,.ui-datepicker-current.ui-datepicker-close,.ibo-is-secondary.ui-datepicker-current.ui-datepicker-close,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button,.ibo-is-regular.ui-datepicker-current,.ibo-is-regular.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-secondary.ui-datepicker-close,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button,.ui-dialog .ui-datepicker-close.ui-button,.ui-dialog .ui-datepicker-close.ui-button.ui-datepicker-current,.ibo-is-secondary.ui-datepicker-close.ui-datepicker-current,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button,.ui-datepicker-close.ui-datepicker-current,.ibo-is-secondary.ui-datepicker-close,.ui-datepicker-close,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button,.ibo-is-regular.ui-datepicker-close.ui-datepicker-current,.ibo-is-regular.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-secondary.ui-button,.ui-dialog .ibo-button.ui-button,.ui-dialog .ibo-button.ui-button.ui-datepicker-current,.ui-dialog .ibo-button.ui-button.ui-datepicker-close,.ibo-button.ibo-is-secondary.ui-datepicker-current,.ui-dialog .ibo-button.ui-datepicker-current.ui-button,.ibo-button.ui-datepicker-current,.ibo-button.ui-datepicker-current.ui-datepicker-close,.ibo-button.ibo-is-secondary.ui-datepicker-close,.ui-dialog .ibo-button.ui-datepicker-close.ui-button,.ibo-button.ui-datepicker-close.ui-datepicker-current,.ibo-button.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-regular.ui-button,.ibo-button.ibo-is-regular.ui-datepicker-current,.ibo-button.ibo-is-regular.ui-datepicker-close{background-color:#f8f9fa;color:#212934;box-shadow:0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-secondary:hover,.ui-dialog .ibo-is-regular.ibo-is-secondary.ui-button:hover,.ui-dialog .ibo-is-secondary.ui-button:hover,.ui-dialog .ui-button:hover,.ui-dialog .ui-button.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-datepicker-close:hover,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-datepicker-current.ui-datepicker-close:hover,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-close:hover,.ui-dialog .ui-button.ui-datepicker-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-regular.ui-button:hover,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-secondary.ui-datepicker-current:hover,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button:hover,.ui-dialog .ui-datepicker-current.ui-button:hover,.ui-dialog .ui-datepicker-current.ui-button.ui-datepicker-close:hover,.ibo-is-secondary.ui-datepicker-current:hover,.ui-datepicker-current:hover,.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-secondary.ui-datepicker-current.ui-datepicker-close:hover,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button:hover,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button:hover,.ibo-is-regular.ui-datepicker-current:hover,.ibo-is-regular.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-secondary.ui-datepicker-close:hover,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button:hover,.ui-dialog .ui-datepicker-close.ui-button:hover,.ui-dialog .ui-datepicker-close.ui-button.ui-datepicker-current:hover,.ibo-is-secondary.ui-datepicker-close.ui-datepicker-current:hover,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button:hover,.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-secondary.ui-datepicker-close:hover,.ui-datepicker-close:hover,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button:hover,.ibo-is-regular.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-regular.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-secondary.ui-button:hover,.ui-dialog .ibo-button.ui-button:hover,.ui-dialog .ibo-button.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-button.ui-datepicker-close:hover,.ibo-button.ibo-is-secondary.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-datepicker-current.ui-button:hover,.ibo-button.ui-datepicker-current:hover,.ibo-button.ui-datepicker-current.ui-datepicker-close:hover,.ibo-button.ibo-is-secondary.ui-datepicker-close:hover,.ui-dialog .ibo-button.ui-datepicker-close.ui-button:hover,.ibo-button.ui-datepicker-close.ui-datepicker-current:hover,.ibo-button.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-regular.ui-button:hover,.ibo-button.ibo-is-regular.ui-datepicker-current:hover,.ibo-button.ibo-is-regular.ui-datepicker-close:hover{background-color:#e1e7ec;color:#212934;box-shadow:0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-secondary:active,.ui-dialog .ibo-is-regular.ibo-is-secondary.ui-button:active,.ui-dialog .ibo-is-secondary.ui-button:active,.ui-dialog .ui-button:active,.ui-dialog .ui-button.ui-datepicker-current:active,.ui-dialog .ui-button.ui-datepicker-close:active,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-current:active,.ui-dialog .ui-button.ui-datepicker-current.ui-datepicker-close:active,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-close:active,.ui-dialog .ui-button.ui-datepicker-close.ui-datepicker-current:active,.ui-dialog .ibo-is-regular.ui-button:active,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-secondary.ui-datepicker-current:active,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button:active,.ui-dialog .ui-datepicker-current.ui-button:active,.ui-dialog .ui-datepicker-current.ui-button.ui-datepicker-close:active,.ibo-is-secondary.ui-datepicker-current:active,.ui-datepicker-current:active,.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-secondary.ui-datepicker-current.ui-datepicker-close:active,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button:active,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button:active,.ibo-is-regular.ui-datepicker-current:active,.ibo-is-regular.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-secondary.ui-datepicker-close:active,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button:active,.ui-dialog .ui-datepicker-close.ui-button:active,.ui-dialog .ui-datepicker-close.ui-button.ui-datepicker-current:active,.ibo-is-secondary.ui-datepicker-close.ui-datepicker-current:active,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button:active,.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-secondary.ui-datepicker-close:active,.ui-datepicker-close:active,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button:active,.ibo-is-regular.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-regular.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-secondary.ui-button:active,.ui-dialog .ibo-button.ui-button:active,.ui-dialog .ibo-button.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-button.ui-datepicker-close:active,.ibo-button.ibo-is-secondary.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-datepicker-current.ui-button:active,.ibo-button.ui-datepicker-current:active,.ibo-button.ui-datepicker-current.ui-datepicker-close:active,.ibo-button.ibo-is-secondary.ui-datepicker-close:active,.ui-dialog .ibo-button.ui-datepicker-close.ui-button:active,.ibo-button.ui-datepicker-close.ui-datepicker-current:active,.ibo-button.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-regular.ui-button:active,.ibo-button.ibo-is-regular.ui-datepicker-current:active,.ibo-button.ibo-is-regular.ui-datepicker-close:active{background-color:#e1e7ec;color:#212934;box-shadow:inset 0px 2px 0px #d5dde5 , 0px 2px 0px #e1e7ec}.ibo-button.ibo-is-regular.ibo-is-secondary:disabled,.ui-dialog .ibo-is-regular.ibo-is-secondary.ui-button:disabled,.ui-dialog .ibo-is-secondary.ui-button:disabled,.ui-dialog .ui-button:disabled,.ui-dialog .ui-button.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-datepicker-close:disabled,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-datepicker-current.ui-datepicker-close:disabled,.ui-dialog .ibo-is-secondary.ui-button.ui-datepicker-close:disabled,.ui-dialog .ui-button.ui-datepicker-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-regular.ui-button:disabled,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-regular.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-secondary.ui-datepicker-current:disabled,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button:disabled,.ui-dialog .ui-datepicker-current.ui-button:disabled,.ui-dialog .ui-datepicker-current.ui-button.ui-datepicker-close:disabled,.ibo-is-secondary.ui-datepicker-current:disabled,.ui-datepicker-current:disabled,.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-secondary.ui-datepicker-current.ui-datepicker-close:disabled,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button:disabled,.ui-dialog .ibo-is-regular.ui-datepicker-current.ui-button:disabled,.ibo-is-regular.ui-datepicker-current:disabled,.ibo-is-regular.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-secondary.ui-datepicker-close:disabled,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button:disabled,.ui-dialog .ui-datepicker-close.ui-button:disabled,.ui-dialog .ui-datepicker-close.ui-button.ui-datepicker-current:disabled,.ibo-is-secondary.ui-datepicker-close.ui-datepicker-current:disabled,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button:disabled,.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-secondary.ui-datepicker-close:disabled,.ui-datepicker-close:disabled,.ui-dialog .ibo-is-regular.ui-datepicker-close.ui-button:disabled,.ibo-is-regular.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-regular.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-secondary.ui-button:disabled,.ui-dialog .ibo-button.ui-button:disabled,.ui-dialog .ibo-button.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-button.ui-datepicker-close:disabled,.ibo-button.ibo-is-secondary.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-datepicker-current.ui-button:disabled,.ibo-button.ui-datepicker-current:disabled,.ibo-button.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-button.ibo-is-secondary.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ui-datepicker-close.ui-button:disabled,.ibo-button.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-button.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-regular.ui-button:disabled,.ibo-button.ibo-is-regular.ui-datepicker-current:disabled,.ibo-button.ibo-is-regular.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-danger,.ui-dialog .ibo-is-regular.ibo-is-danger.ui-button,.ui-dialog .ibo-is-danger.ui-button,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-danger.ui-datepicker-current,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button,.ibo-is-danger.ui-datepicker-current,.ibo-is-danger.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-danger.ui-datepicker-close,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button,.ibo-is-danger.ui-datepicker-close.ui-datepicker-current,.ibo-is-danger.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-danger.ui-button,.ibo-button.ibo-is-danger.ui-datepicker-current,.ibo-button.ibo-is-danger.ui-datepicker-close{background-color:#c53030;color:white;box-shadow:0px 2px 0px #742a2a}.ibo-button.ibo-is-regular.ibo-is-danger:hover,.ui-dialog .ibo-is-regular.ibo-is-danger.ui-button:hover,.ui-dialog .ibo-is-danger.ui-button:hover,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-danger.ui-datepicker-current:hover,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button:hover,.ibo-is-danger.ui-datepicker-current:hover,.ibo-is-danger.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-danger.ui-datepicker-close:hover,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button:hover,.ibo-is-danger.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-danger.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-danger.ui-button:hover,.ibo-button.ibo-is-danger.ui-datepicker-current:hover,.ibo-button.ibo-is-danger.ui-datepicker-close:hover{background-color:#9b2c2c;color:white;box-shadow:0px 2px 0px #742a2a}.ibo-button.ibo-is-regular.ibo-is-danger:active,.ui-dialog .ibo-is-regular.ibo-is-danger.ui-button:active,.ui-dialog .ibo-is-danger.ui-button:active,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-danger.ui-datepicker-current:active,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button:active,.ibo-is-danger.ui-datepicker-current:active,.ibo-is-danger.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-danger.ui-datepicker-close:active,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button:active,.ibo-is-danger.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-danger.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-danger.ui-button:active,.ibo-button.ibo-is-danger.ui-datepicker-current:active,.ibo-button.ibo-is-danger.ui-datepicker-close:active{background-color:#9b2c2c;color:white;box-shadow:inset 0px 2px 0px #742a2a , 0px 2px 0px #9b2c2c}.ibo-button.ibo-is-regular.ibo-is-danger:disabled,.ui-dialog .ibo-is-regular.ibo-is-danger.ui-button:disabled,.ui-dialog .ibo-is-danger.ui-button:disabled,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-danger.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-danger.ui-datepicker-current:disabled,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button:disabled,.ibo-is-danger.ui-datepicker-current:disabled,.ibo-is-danger.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-danger.ui-datepicker-close:disabled,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button:disabled,.ibo-is-danger.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-danger.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-danger.ui-button:disabled,.ibo-button.ibo-is-danger.ui-datepicker-current:disabled,.ibo-button.ibo-is-danger.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-success,.ui-dialog .ibo-is-regular.ibo-is-success.ui-button,.ui-dialog .ibo-is-success.ui-button,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-success.ui-datepicker-current,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button,.ibo-is-success.ui-datepicker-current,.ibo-is-success.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-success.ui-datepicker-close,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button,.ibo-is-success.ui-datepicker-close.ui-datepicker-current,.ibo-is-success.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-success.ui-button,.ibo-button.ibo-is-success.ui-datepicker-current,.ibo-button.ibo-is-success.ui-datepicker-close{background-color:#558b2f;color:white;box-shadow:0px 2px 0px #235816}.ibo-button.ibo-is-regular.ibo-is-success:hover,.ui-dialog .ibo-is-regular.ibo-is-success.ui-button:hover,.ui-dialog .ibo-is-success.ui-button:hover,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-success.ui-datepicker-current:hover,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button:hover,.ibo-is-success.ui-datepicker-current:hover,.ibo-is-success.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-success.ui-datepicker-close:hover,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button:hover,.ibo-is-success.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-success.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-success.ui-button:hover,.ibo-button.ibo-is-success.ui-datepicker-current:hover,.ibo-button.ibo-is-success.ui-datepicker-close:hover{background-color:#33691e;color:white;box-shadow:0px 2px 0px #235816}.ibo-button.ibo-is-regular.ibo-is-success:active,.ui-dialog .ibo-is-regular.ibo-is-success.ui-button:active,.ui-dialog .ibo-is-success.ui-button:active,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-success.ui-datepicker-current:active,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button:active,.ibo-is-success.ui-datepicker-current:active,.ibo-is-success.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-success.ui-datepicker-close:active,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button:active,.ibo-is-success.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-success.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-success.ui-button:active,.ibo-button.ibo-is-success.ui-datepicker-current:active,.ibo-button.ibo-is-success.ui-datepicker-close:active{background-color:#33691e;color:white;box-shadow:inset 0px 2px 0px #235816 , 0px 2px 0px #33691e}.ibo-button.ibo-is-regular.ibo-is-success:disabled,.ui-dialog .ibo-is-regular.ibo-is-success.ui-button:disabled,.ui-dialog .ibo-is-success.ui-button:disabled,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-success.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-success.ui-datepicker-current:disabled,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button:disabled,.ibo-is-success.ui-datepicker-current:disabled,.ibo-is-success.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-success.ui-datepicker-close:disabled,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button:disabled,.ibo-is-success.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-success.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-success.ui-button:disabled,.ibo-button.ibo-is-success.ui-datepicker-current:disabled,.ibo-button.ibo-is-success.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-red,.ui-dialog .ibo-is-regular.ibo-is-red.ui-button,.ui-dialog .ibo-is-red.ui-button,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-red.ui-datepicker-current,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button,.ibo-is-red.ui-datepicker-current,.ibo-is-red.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-red.ui-datepicker-close,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button,.ibo-is-red.ui-datepicker-close.ui-datepicker-current,.ibo-is-red.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-red.ui-button,.ibo-button.ibo-is-red.ui-datepicker-current,.ibo-button.ibo-is-red.ui-datepicker-close{background-color:#c53030;color:white;box-shadow:0px 2px 0px #742a2a}.ibo-button.ibo-is-regular.ibo-is-red:hover,.ui-dialog .ibo-is-regular.ibo-is-red.ui-button:hover,.ui-dialog .ibo-is-red.ui-button:hover,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-red.ui-datepicker-current:hover,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button:hover,.ibo-is-red.ui-datepicker-current:hover,.ibo-is-red.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-red.ui-datepicker-close:hover,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button:hover,.ibo-is-red.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-red.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-red.ui-button:hover,.ibo-button.ibo-is-red.ui-datepicker-current:hover,.ibo-button.ibo-is-red.ui-datepicker-close:hover{background-color:#9b2c2c;color:white;box-shadow:0px 2px 0px #742a2a}.ibo-button.ibo-is-regular.ibo-is-red:active,.ui-dialog .ibo-is-regular.ibo-is-red.ui-button:active,.ui-dialog .ibo-is-red.ui-button:active,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-red.ui-datepicker-current:active,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button:active,.ibo-is-red.ui-datepicker-current:active,.ibo-is-red.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-red.ui-datepicker-close:active,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button:active,.ibo-is-red.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-red.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-red.ui-button:active,.ibo-button.ibo-is-red.ui-datepicker-current:active,.ibo-button.ibo-is-red.ui-datepicker-close:active{background-color:#9b2c2c;color:white;box-shadow:inset 0px 2px 0px #742a2a , 0px 2px 0px #9b2c2c}.ibo-button.ibo-is-regular.ibo-is-red:disabled,.ui-dialog .ibo-is-regular.ibo-is-red.ui-button:disabled,.ui-dialog .ibo-is-red.ui-button:disabled,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-red.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-red.ui-datepicker-current:disabled,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button:disabled,.ibo-is-red.ui-datepicker-current:disabled,.ibo-is-red.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-red.ui-datepicker-close:disabled,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button:disabled,.ibo-is-red.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-red.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-red.ui-button:disabled,.ibo-button.ibo-is-red.ui-datepicker-current:disabled,.ibo-button.ibo-is-red.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-green,.ui-dialog .ibo-is-regular.ibo-is-green.ui-button,.ui-dialog .ibo-is-green.ui-button,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-green.ui-datepicker-current,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button,.ibo-is-green.ui-datepicker-current,.ibo-is-green.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-green.ui-datepicker-close,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button,.ibo-is-green.ui-datepicker-close.ui-datepicker-current,.ibo-is-green.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-green.ui-button,.ibo-button.ibo-is-green.ui-datepicker-current,.ibo-button.ibo-is-green.ui-datepicker-close{background-color:#558b2f;color:white;box-shadow:0px 2px 0px #235816}.ibo-button.ibo-is-regular.ibo-is-green:hover,.ui-dialog .ibo-is-regular.ibo-is-green.ui-button:hover,.ui-dialog .ibo-is-green.ui-button:hover,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-green.ui-datepicker-current:hover,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button:hover,.ibo-is-green.ui-datepicker-current:hover,.ibo-is-green.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-green.ui-datepicker-close:hover,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button:hover,.ibo-is-green.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-green.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-green.ui-button:hover,.ibo-button.ibo-is-green.ui-datepicker-current:hover,.ibo-button.ibo-is-green.ui-datepicker-close:hover{background-color:#33691e;color:white;box-shadow:0px 2px 0px #235816}.ibo-button.ibo-is-regular.ibo-is-green:active,.ui-dialog .ibo-is-regular.ibo-is-green.ui-button:active,.ui-dialog .ibo-is-green.ui-button:active,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-green.ui-datepicker-current:active,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button:active,.ibo-is-green.ui-datepicker-current:active,.ibo-is-green.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-green.ui-datepicker-close:active,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button:active,.ibo-is-green.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-green.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-green.ui-button:active,.ibo-button.ibo-is-green.ui-datepicker-current:active,.ibo-button.ibo-is-green.ui-datepicker-close:active{background-color:#33691e;color:white;box-shadow:inset 0px 2px 0px #235816 , 0px 2px 0px #33691e}.ibo-button.ibo-is-regular.ibo-is-green:disabled,.ui-dialog .ibo-is-regular.ibo-is-green.ui-button:disabled,.ui-dialog .ibo-is-green.ui-button:disabled,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-green.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-green.ui-datepicker-current:disabled,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button:disabled,.ibo-is-green.ui-datepicker-current:disabled,.ibo-is-green.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-green.ui-datepicker-close:disabled,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button:disabled,.ibo-is-green.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-green.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-green.ui-button:disabled,.ibo-button.ibo-is-green.ui-datepicker-current:disabled,.ibo-button.ibo-is-green.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-regular.ibo-is-cyan,.ui-dialog .ibo-is-regular.ibo-is-cyan.ui-button,.ui-dialog .ibo-is-cyan.ui-button,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-current,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-close,.ibo-is-regular.ibo-is-cyan.ui-datepicker-current,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button,.ibo-is-cyan.ui-datepicker-current,.ibo-is-cyan.ui-datepicker-current.ui-datepicker-close,.ibo-is-regular.ibo-is-cyan.ui-datepicker-close,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button,.ibo-is-cyan.ui-datepicker-close.ui-datepicker-current,.ibo-is-cyan.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-cyan.ui-button,.ibo-button.ibo-is-cyan.ui-datepicker-current,.ibo-button.ibo-is-cyan.ui-datepicker-close{background-color:#00838f;color:white;box-shadow:0px 2px 0px #003636}.ibo-button.ibo-is-regular.ibo-is-cyan:hover,.ui-dialog .ibo-is-regular.ibo-is-cyan.ui-button:hover,.ui-dialog .ibo-is-cyan.ui-button:hover,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-current:hover,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-cyan.ui-datepicker-current:hover,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button:hover,.ibo-is-cyan.ui-datepicker-current:hover,.ibo-is-cyan.ui-datepicker-current.ui-datepicker-close:hover,.ibo-is-regular.ibo-is-cyan.ui-datepicker-close:hover,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button:hover,.ibo-is-cyan.ui-datepicker-close.ui-datepicker-current:hover,.ibo-is-cyan.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-cyan.ui-button:hover,.ibo-button.ibo-is-cyan.ui-datepicker-current:hover,.ibo-button.ibo-is-cyan.ui-datepicker-close:hover{background-color:#006164;color:white;box-shadow:0px 2px 0px #003636}.ibo-button.ibo-is-regular.ibo-is-cyan:active,.ui-dialog .ibo-is-regular.ibo-is-cyan.ui-button:active,.ui-dialog .ibo-is-cyan.ui-button:active,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-current:active,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-close:active,.ibo-is-regular.ibo-is-cyan.ui-datepicker-current:active,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button:active,.ibo-is-cyan.ui-datepicker-current:active,.ibo-is-cyan.ui-datepicker-current.ui-datepicker-close:active,.ibo-is-regular.ibo-is-cyan.ui-datepicker-close:active,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button:active,.ibo-is-cyan.ui-datepicker-close.ui-datepicker-current:active,.ibo-is-cyan.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-cyan.ui-button:active,.ibo-button.ibo-is-cyan.ui-datepicker-current:active,.ibo-button.ibo-is-cyan.ui-datepicker-close:active{background-color:#006164;color:white;box-shadow:inset 0px 2px 0px #003636 , 0px 2px 0px #006164}.ibo-button.ibo-is-regular.ibo-is-cyan:disabled,.ui-dialog .ibo-is-regular.ibo-is-cyan.ui-button:disabled,.ui-dialog .ibo-is-cyan.ui-button:disabled,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-current:disabled,.ui-dialog .ibo-is-cyan.ui-button.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-cyan.ui-datepicker-current:disabled,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button:disabled,.ibo-is-cyan.ui-datepicker-current:disabled,.ibo-is-cyan.ui-datepicker-current.ui-datepicker-close:disabled,.ibo-is-regular.ibo-is-cyan.ui-datepicker-close:disabled,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button:disabled,.ibo-is-cyan.ui-datepicker-close.ui-datepicker-current:disabled,.ibo-is-cyan.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-cyan.ui-button:disabled,.ibo-button.ibo-is-cyan.ui-datepicker-current:disabled,.ibo-button.ibo-is-cyan.ui-datepicker-close:disabled{background-color:#d5dde5;color:#6e7a8a;box-shadow:inset 0px 2px 0px #d5dde5}.ibo-button.ibo-is-alternative.ibo-is-neutral,.ui-dialog .ibo-is-alternative.ibo-is-neutral.ui-button,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-current,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-close,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-neutral.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-alternative.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#212934;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-neutral:hover,.ui-dialog .ibo-is-alternative.ibo-is-neutral.ui-button:hover,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-current:hover,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-close:hover,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-neutral.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-alternative.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#f8f9fa;color:#212934;box-shadow:0px 2px 0px #f8f9fa}.ibo-button.ibo-is-alternative.ibo-is-neutral:active,.ui-dialog .ibo-is-alternative.ibo-is-neutral.ui-button:active,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-current:active,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-close:active,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-neutral.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-alternative.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#f8f9fa;color:#212934;box-shadow:inset 0px 2px 0px #e1e7ec , 0px 2px 0px #f8f9fa}.ibo-button.ibo-is-alternative.ibo-is-neutral:disabled,.ui-dialog .ibo-is-alternative.ibo-is-neutral.ui-button:disabled,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-current:disabled,.ui-dialog .ibo-is-neutral.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-neutral.ui-datepicker-close:disabled,.ui-dialog .ibo-is-neutral.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-neutral.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-neutral.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-alternative.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-alternative.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-primary,.ui-dialog .ibo-is-alternative.ibo-is-primary.ui-button,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-primary.ui-datepicker-current,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-primary.ui-datepicker-close,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-primary.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#006164;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-primary:hover,.ui-dialog .ibo-is-alternative.ibo-is-primary.ui-button:hover,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-primary.ui-datepicker-current:hover,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-primary.ui-datepicker-close:hover,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-primary.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:white;color:#212934;box-shadow:0px 2px 0px white}.ibo-button.ibo-is-alternative.ibo-is-primary:active,.ui-dialog .ibo-is-alternative.ibo-is-primary.ui-button:active,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-primary.ui-datepicker-current:active,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-primary.ui-datepicker-close:active,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-primary.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:white;color:#212934;box-shadow:inset 0px 2px 0px white , 0px 2px 0px white}.ibo-button.ibo-is-alternative.ibo-is-primary:disabled,.ui-dialog .ibo-is-alternative.ibo-is-primary.ui-button:disabled,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-primary.ui-datepicker-current:disabled,.ui-dialog .ibo-is-primary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-primary.ui-datepicker-close:disabled,.ui-dialog .ibo-is-primary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-primary.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-primary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-secondary,.ui-dialog .ibo-is-alternative.ibo-is-secondary.ui-button,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ibo-is-alternative.ui-button,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-current,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-close,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-current,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button,.ibo-is-alternative.ui-datepicker-current,.ibo-is-alternative.ui-datepicker-current.ui-datepicker-close,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-close,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button,.ibo-is-alternative.ui-datepicker-close.ui-datepicker-current,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-secondary.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close,.ui-dialog .ibo-button.ibo-is-alternative.ui-button,.ibo-button.ibo-is-alternative.ui-datepicker-current,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-button.ibo-is-alternative.ui-datepicker-close,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close{background-color:transparent;color:#212934;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-secondary:hover,.ui-dialog .ibo-is-alternative.ibo-is-secondary.ui-button:hover,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ibo-is-alternative.ui-button:hover,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-close:hover,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-current:hover,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button:hover,.ibo-is-alternative.ui-datepicker-current:hover,.ibo-is-alternative.ui-datepicker-current.ui-datepicker-close:hover,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-close:hover,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button:hover,.ibo-is-alternative.ui-datepicker-close.ui-datepicker-current:hover,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-secondary.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close:hover,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover,.ui-dialog .ibo-button.ibo-is-alternative.ui-button:hover,.ibo-button.ibo-is-alternative.ui-datepicker-current:hover,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-button.ibo-is-alternative.ui-datepicker-close:hover,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover{background-color:#f8f9fa;color:#212934;box-shadow:0px 2px 0px #f8f9fa}.ibo-button.ibo-is-alternative.ibo-is-secondary:active,.ui-dialog .ibo-is-alternative.ibo-is-secondary.ui-button:active,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ibo-is-alternative.ui-button:active,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-current:active,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-close:active,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-current:active,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button:active,.ibo-is-alternative.ui-datepicker-current:active,.ibo-is-alternative.ui-datepicker-current.ui-datepicker-close:active,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-close:active,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button:active,.ibo-is-alternative.ui-datepicker-close.ui-datepicker-current:active,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-secondary.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close:active,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active,.ui-dialog .ibo-button.ibo-is-alternative.ui-button:active,.ibo-button.ibo-is-alternative.ui-datepicker-current:active,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-button.ibo-is-alternative.ui-datepicker-close:active,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active{background-color:#f8f9fa;color:#212934;box-shadow:inset 0px 2px 0px #e1e7ec , 0px 2px 0px #f8f9fa}.ibo-button.ibo-is-alternative.ibo-is-secondary:disabled,.ui-dialog .ibo-is-alternative.ibo-is-secondary.ui-button:disabled,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ibo-is-alternative.ui-button:disabled,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-datepicker-current.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-alternative.ui-button.ui-datepicker-close:disabled,.ui-dialog .ui-button.ui-datepicker-close.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-current:disabled,.ui-dialog .ibo-is-secondary.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-current.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ibo-is-alternative.ui-datepicker-current.ui-button:disabled,.ibo-is-alternative.ui-datepicker-current:disabled,.ibo-is-alternative.ui-datepicker-current.ui-datepicker-close:disabled,.ui-dialog .ui-datepicker-current.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-secondary.ui-datepicker-close:disabled,.ui-dialog .ibo-is-secondary.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ui-datepicker-close.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-alternative.ui-datepicker-close.ui-button:disabled,.ibo-is-alternative.ui-datepicker-close.ui-datepicker-current:disabled,.ui-dialog .ui-datepicker-close.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-secondary.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-current.ui-datepicker-close:disabled,.ui-dialog .ibo-is-secondary.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ui-button.ui-dialog-titlebar-close.ui-datepicker-close.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ibo-is-alternative.ui-button:disabled,.ibo-button.ibo-is-alternative.ui-datepicker-current:disabled,.ui-dialog .ibo-button.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-button.ibo-is-alternative.ui-datepicker-close:disabled,.ui-dialog .ibo-button.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-danger,.ui-dialog .ibo-is-alternative.ibo-is-danger.ui-button,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-danger.ui-datepicker-current,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-danger.ui-datepicker-close,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-danger.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#c53030;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-danger:hover,.ui-dialog .ibo-is-alternative.ibo-is-danger.ui-button:hover,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-danger.ui-datepicker-current:hover,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-danger.ui-datepicker-close:hover,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-danger.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#fed7d7;color:#742a2a;box-shadow:0px 2px 0px #fed7d7}.ibo-button.ibo-is-alternative.ibo-is-danger:active,.ui-dialog .ibo-is-alternative.ibo-is-danger.ui-button:active,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-danger.ui-datepicker-current:active,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-danger.ui-datepicker-close:active,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-danger.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#fed7d7;color:#742a2a;box-shadow:inset 0px 2px 0px #c53030 , 0px 2px 0px #fed7d7}.ibo-button.ibo-is-alternative.ibo-is-danger:disabled,.ui-dialog .ibo-is-alternative.ibo-is-danger.ui-button:disabled,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-danger.ui-datepicker-current:disabled,.ui-dialog .ibo-is-danger.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-danger.ui-datepicker-close:disabled,.ui-dialog .ibo-is-danger.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-danger.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-danger.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-success,.ui-dialog .ibo-is-alternative.ibo-is-success.ui-button,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-success.ui-datepicker-current,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-success.ui-datepicker-close,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-success.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#33691e;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-success:hover,.ui-dialog .ibo-is-alternative.ibo-is-success.ui-button:hover,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-success.ui-datepicker-current:hover,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-success.ui-datepicker-close:hover,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-success.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#dcedc8;color:#33691e;box-shadow:0px 2px 0px #dcedc8}.ibo-button.ibo-is-alternative.ibo-is-success:active,.ui-dialog .ibo-is-alternative.ibo-is-success.ui-button:active,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-success.ui-datepicker-current:active,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-success.ui-datepicker-close:active,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-success.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#dcedc8;color:#33691e;box-shadow:inset 0px 2px 0px #689f38 , 0px 2px 0px #dcedc8}.ibo-button.ibo-is-alternative.ibo-is-success:disabled,.ui-dialog .ibo-is-alternative.ibo-is-success.ui-button:disabled,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-success.ui-datepicker-current:disabled,.ui-dialog .ibo-is-success.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-success.ui-datepicker-close:disabled,.ui-dialog .ibo-is-success.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-success.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-success.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-red,.ui-dialog .ibo-is-alternative.ibo-is-red.ui-button,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-red.ui-datepicker-current,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-red.ui-datepicker-close,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-red.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#c53030;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-red:hover,.ui-dialog .ibo-is-alternative.ibo-is-red.ui-button:hover,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-red.ui-datepicker-current:hover,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-red.ui-datepicker-close:hover,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-red.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#fed7d7;color:#742a2a;box-shadow:0px 2px 0px #fed7d7}.ibo-button.ibo-is-alternative.ibo-is-red:active,.ui-dialog .ibo-is-alternative.ibo-is-red.ui-button:active,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-red.ui-datepicker-current:active,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-red.ui-datepicker-close:active,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-red.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#fed7d7;color:#742a2a;box-shadow:inset 0px 2px 0px #c53030 , 0px 2px 0px #fed7d7}.ibo-button.ibo-is-alternative.ibo-is-red:disabled,.ui-dialog .ibo-is-alternative.ibo-is-red.ui-button:disabled,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-red.ui-datepicker-current:disabled,.ui-dialog .ibo-is-red.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-red.ui-datepicker-close:disabled,.ui-dialog .ibo-is-red.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-red.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-red.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-green,.ui-dialog .ibo-is-alternative.ibo-is-green.ui-button,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-green.ui-datepicker-current,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-green.ui-datepicker-close,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-green.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#33691e;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-green:hover,.ui-dialog .ibo-is-alternative.ibo-is-green.ui-button:hover,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-green.ui-datepicker-current:hover,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-green.ui-datepicker-close:hover,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-green.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#dcedc8;color:#33691e;box-shadow:0px 2px 0px #dcedc8}.ibo-button.ibo-is-alternative.ibo-is-green:active,.ui-dialog .ibo-is-alternative.ibo-is-green.ui-button:active,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-green.ui-datepicker-current:active,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-green.ui-datepicker-close:active,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-green.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#dcedc8;color:#33691e;box-shadow:inset 0px 2px 0px #689f38 , 0px 2px 0px #dcedc8}.ibo-button.ibo-is-alternative.ibo-is-green:disabled,.ui-dialog .ibo-is-alternative.ibo-is-green.ui-button:disabled,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-green.ui-datepicker-current:disabled,.ui-dialog .ibo-is-green.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-green.ui-datepicker-close:disabled,.ui-dialog .ibo-is-green.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-green.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-green.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-cyan,.ui-dialog .ibo-is-alternative.ibo-is-cyan.ui-button,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-current,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button.ui-dialog-titlebar-close,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-close,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-button.ibo-is-cyan.ui-button.ui-dialog-titlebar-close,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-current,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-close{background-color:transparent;color:#006164;box-shadow:0px 2px 0px transparent}.ibo-button.ibo-is-alternative.ibo-is-cyan:hover,.ui-dialog .ibo-is-alternative.ibo-is-cyan.ui-button:hover,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-current:hover,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-close:hover,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-button.ibo-is-cyan.ui-button.ui-dialog-titlebar-close:hover,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover{background-color:#c9eef2;color:#006164;box-shadow:0px 2px 0px #c9eef2}.ibo-button.ibo-is-alternative.ibo-is-cyan:active,.ui-dialog .ibo-is-alternative.ibo-is-cyan.ui-button:active,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-current:active,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-close:active,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-button.ibo-is-cyan.ui-button.ui-dialog-titlebar-close:active,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active{background-color:#c9eef2;color:#006164;box-shadow:inset 0px 2px 0px #00838f , 0px 2px 0px #c9eef2}.ibo-button.ibo-is-alternative.ibo-is-cyan:disabled,.ui-dialog .ibo-is-alternative.ibo-is-cyan.ui-button:disabled,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-current:disabled,.ui-dialog .ibo-is-cyan.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled,.ibo-is-alternative.ibo-is-cyan.ui-datepicker-close:disabled,.ui-dialog .ibo-is-cyan.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-button.ibo-is-cyan.ui-button.ui-dialog-titlebar-close:disabled,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled,.ui-dialog .ibo-is-cyan.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled{background-color:transparent;color:#929fb1;box-shadow:inset 0px 2px 0px transparent}.ibo-button,.ui-dialog .ui-button,.ui-datepicker-current,.ui-datepicker-close{position:relative;display:inline-block;padding:6px 9px;border:0;border-radius:4px;cursor:pointer;text-transform:uppercase;white-space:nowrap}.ibo-button.ibo-action-button,.ui-dialog .ibo-action-button.ui-button,.ibo-action-button.ui-datepicker-current,.ibo-action-button.ui-datepicker-close{float:right}.ibo-button .ibo-button--loading-icon,.ui-dialog .ui-button .ibo-button--loading-icon,.ui-datepicker-current .ibo-button--loading-icon,.ui-datepicker-close .ibo-button--loading-icon{display:none}.ibo-button.ibo-is-loading .ibo-button--icon,.ui-dialog .ibo-is-loading.ui-button .ibo-button--icon,.ibo-is-loading.ui-datepicker-current .ibo-button--icon,.ibo-is-loading.ui-datepicker-close .ibo-button--icon{display:none}.ibo-button.ibo-is-loading .ibo-button--loading-icon,.ui-dialog .ibo-is-loading.ui-button .ibo-button--loading-icon,.ibo-is-loading.ui-datepicker-current .ibo-button--loading-icon,.ibo-is-loading.ui-datepicker-close .ibo-button--loading-icon{display:inline-block}.ibo-button.ibo-is-loading .ibo-button--loading-icon+.ibo-button--label,.ui-dialog .ibo-is-loading.ui-button .ibo-button--loading-icon+.ibo-button--label,.ibo-is-loading.ui-datepicker-current .ibo-button--loading-icon+.ibo-button--label,.ibo-is-loading.ui-datepicker-close .ibo-button--loading-icon+.ibo-button--label{margin-left:4px}.ibo-button--icon+.ibo-button--label{margin-left:4px}.ibo-button--vertical-align{margin-top:4px;margin-bottom:4px}.ibo-button-group{display:inline-flex;flex-wrap:nowrap}.ibo-button-group .ibo-button,.ibo-button-group .ui-dialog .ui-button,.ui-dialog .ibo-button-group .ui-button,.ibo-button-group .ui-datepicker-current,.ibo-button-group .ui-datepicker-close{position:relative}.ibo-button-group .ibo-button:first-child,.ibo-button-group .ui-dialog .ui-button:first-child,.ui-dialog .ibo-button-group .ui-button:first-child,.ibo-button-group .ui-datepicker-current:first-child,.ibo-button-group .ui-datepicker-close:first-child{border-radius:4px 0 0 4px}.ibo-button-group .ibo-button:last-child,.ibo-button-group .ui-dialog .ui-button:last-child,.ui-dialog .ibo-button-group .ui-button:last-child,.ibo-button-group .ui-datepicker-current:last-child,.ibo-button-group .ui-datepicker-close:last-child{border-radius:0 4px 4px 0}.ibo-button-group .ibo-button:not(:first-child):not(:last-child),.ibo-button-group .ui-dialog .ui-button:not(:first-child):not(:last-child),.ui-dialog .ibo-button-group .ui-button:not(:first-child):not(:last-child),.ibo-button-group .ui-datepicker-current:not(:first-child):not(:last-child),.ibo-button-group .ui-datepicker-close:not(:first-child):not(:last-child){border-radius:0}.ibo-button-group .ibo-button+.ibo-button,.ibo-button-group .ui-dialog .ui-button+.ibo-button,.ibo-button-group .ui-dialog .ui-dialog .ui-button+.ui-button,.ui-dialog .ibo-button-group .ui-dialog .ui-button+.ui-button,.ibo-button-group .ui-dialog .ui-button+.ui-datepicker-current,.ibo-button-group .ui-dialog .ui-button+.ui-datepicker-close,.ui-dialog .ibo-button-group .ui-button+.ibo-button,.ibo-button-group .ui-datepicker-current+.ibo-button,.ibo-button-group .ui-dialog .ui-datepicker-current+.ui-button,.ui-dialog .ibo-button-group .ui-datepicker-current+.ui-button,.ibo-button-group .ui-datepicker-current+.ui-datepicker-current,.ibo-button-group .ui-datepicker-current+.ui-datepicker-close,.ibo-button-group .ui-datepicker-close+.ibo-button,.ibo-button-group .ui-dialog .ui-datepicker-close+.ui-button,.ui-dialog .ibo-button-group .ui-datepicker-close+.ui-button,.ibo-button-group .ui-datepicker-close+.ui-datepicker-current,.ibo-button-group .ui-datepicker-close+.ui-datepicker-close,.ibo-button-group .ui-dialog .ibo-button+.ui-button,.ui-dialog .ibo-button-group .ibo-button+.ui-button,.ibo-button-group .ibo-button+.ui-datepicker-current,.ibo-button-group .ibo-button+.ui-datepicker-close{margin-left:0}.ibo-button-group .ibo-button+.ibo-button::before,.ibo-button-group .ui-dialog .ui-button+.ibo-button::before,.ui-dialog .ibo-button-group .ui-button+.ibo-button::before,.ibo-button-group .ui-datepicker-current+.ibo-button::before,.ibo-button-group .ui-datepicker-close+.ibo-button::before,.ibo-button-group .ui-dialog .ibo-button+.ui-button::before,.ui-dialog .ibo-button-group .ibo-button+.ui-button::before,.ibo-button-group .ibo-button+.ui-datepicker-current::before,.ibo-button-group .ibo-button+.ui-datepicker-close::before{content:"";position:absolute;top:6px;bottom:6px;left:0;width:1px;border-left:1px solid transparent}.ibo-button-group>*+*.ibo-is-regular.ibo-is-neutral::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-current::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-close::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button.ui-dialog-titlebar-close::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close::before{border-left-color:#d5dde5}.ibo-button-group>*+*.ibo-is-regular.ibo-is-neutral:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:hover::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-current:hover::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button.ui-dialog-titlebar-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover::before{border-left-color:#d5dde5}.ibo-button-group>*+*.ibo-is-regular.ibo-is-neutral:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:active::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-current:active::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button.ui-dialog-titlebar-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active::before{border-left-color:#e1e7ec}.ibo-button-group>*+*.ibo-is-regular.ibo-is-neutral:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:disabled::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-current:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled::before,.ibo-button-group>*+*.ibo-is-neutral.ui-datepicker-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button.ui-dialog-titlebar-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-primary::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-close::before{border-left-color:#006164}.ibo-button-group>*+*.ibo-is-regular.ibo-is-primary:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-close:hover::before{border-left-color:#006164}.ibo-button-group>*+*.ibo-is-regular.ibo-is-primary:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button:active::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-close:active::before{border-left-color:#006164}.ibo-button-group>*+*.ibo-is-regular.ibo-is-primary:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-primary.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-secondary::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button::before,.ui-dialog .ibo-button-group>*+*.ui-button::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-current::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-close::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-current::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button::before,.ibo-button-group>*+*.ui-datepicker-current::before,.ibo-button-group>*+*.ui-datepicker-current.ui-datepicker-close::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-close::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button::before,.ibo-button-group>*+*.ui-datepicker-close.ui-datepicker-current::before,.ibo-button-group>*+*.ui-datepicker-close::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-close::before{border-left-color:#d5dde5}.ibo-button-group>*+*.ibo-is-regular.ibo-is-secondary:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-current:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-close:hover::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-current:hover::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button:hover::before,.ibo-button-group>*+*.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ui-datepicker-current.ui-datepicker-close:hover::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button:hover::before,.ibo-button-group>*+*.ui-datepicker-close.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ui-datepicker-close:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-close:hover::before{border-left-color:#d5dde5}.ibo-button-group>*+*.ibo-is-regular.ibo-is-secondary:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button:active::before,.ui-dialog .ibo-button-group>*+*.ui-button:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-current:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-close:active::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-current:active::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button:active::before,.ibo-button-group>*+*.ui-datepicker-current:active::before,.ibo-button-group>*+*.ui-datepicker-current.ui-datepicker-close:active::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button:active::before,.ibo-button-group>*+*.ui-datepicker-close.ui-datepicker-current:active::before,.ibo-button-group>*+*.ui-datepicker-close:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button:active::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-close:active::before{border-left-color:#e1e7ec}.ibo-button-group>*+*.ibo-is-regular.ibo-is-secondary:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-current:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-datepicker-close:disabled::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-current:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button:disabled::before,.ibo-button-group>*+*.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ui-datepicker-current.ui-datepicker-close:disabled::before,.ibo-button-group>*+*.ibo-is-secondary.ui-datepicker-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button:disabled::before,.ibo-button-group>*+*.ui-datepicker-close.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ui-datepicker-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-regular.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-regular.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-danger::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-close::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-regular.ibo-is-danger:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-close:hover::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-regular.ibo-is-danger:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button:active::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-close:active::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-regular.ibo-is-danger:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-danger.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-success::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-close::before{border-left-color:#33691e}.ibo-button-group>*+*.ibo-is-regular.ibo-is-success:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-close:hover::before{border-left-color:#33691e}.ibo-button-group>*+*.ibo-is-regular.ibo-is-success:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button:active::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-close:active::before{border-left-color:#33691e}.ibo-button-group>*+*.ibo-is-regular.ibo-is-success:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-success.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-red::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-close::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-regular.ibo-is-red:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-close:hover::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-regular.ibo-is-red:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button:active::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-close:active::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-regular.ibo-is-red:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-red.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-green::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-close::before{border-left-color:#33691e}.ibo-button-group>*+*.ibo-is-regular.ibo-is-green:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-close:hover::before{border-left-color:#33691e}.ibo-button-group>*+*.ibo-is-regular.ibo-is-green:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button:active::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-close:active::before{border-left-color:#33691e}.ibo-button-group>*+*.ibo-is-regular.ibo-is-green:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-green.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-regular.ibo-is-cyan::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-current::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-close::before{border-left-color:#006164}.ibo-button-group>*+*.ibo-is-regular.ibo-is-cyan:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-current:hover::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-close:hover::before{border-left-color:#006164}.ibo-button-group>*+*.ibo-is-regular.ibo-is-cyan:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button:active::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-current:active::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-close:active::before{border-left-color:#006164}.ibo-button-group>*+*.ibo-is-regular.ibo-is-cyan:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-current:disabled::before,.ibo-button-group>*+*.ibo-is-cyan.ui-datepicker-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-neutral::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button.ui-dialog-titlebar-close::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button.ui-dialog-titlebar-close::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-neutral:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button.ui-dialog-titlebar-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-neutral:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button.ui-dialog-titlebar-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-neutral:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-neutral.ui-button.ui-dialog-titlebar-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-primary::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button.ui-dialog-titlebar-close::before{border-left-color:#00838f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-primary:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-primary:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-primary:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-primary.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-secondary::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button.ui-dialog-titlebar-close::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-current::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-close::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-secondary:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button.ui-dialog-titlebar-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:hover::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button:hover::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-current:hover::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:hover::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-close:hover::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-secondary:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button.ui-dialog-titlebar-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:active::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button:active::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-current:active::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:active::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-close:active::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#404b5a}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-secondary:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-secondary.ui-button.ui-dialog-titlebar-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-current:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-button.ui-dialog-titlebar-close.ui-datepicker-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-alternative.ui-button:disabled::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-current:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-current.ui-button.ui-dialog-titlebar-close:disabled::before,.ibo-button-group>*+*.ibo-is-alternative.ui-datepicker-close:disabled::before,.ui-dialog .ibo-button-group>*+*.ui-datepicker-close.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-danger::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button.ui-dialog-titlebar-close::before{border-left-color:#e53e3e}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-danger:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-danger:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-danger:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-danger.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-success::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button.ui-dialog-titlebar-close::before{border-left-color:#558b2f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-success:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#558b2f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-success:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#558b2f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-success:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-success.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-red::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button.ui-dialog-titlebar-close::before{border-left-color:#e53e3e}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-red:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-red:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#9b2c2c}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-red:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-red.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-green::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button.ui-dialog-titlebar-close::before{border-left-color:#558b2f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-green:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#558b2f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-green:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#558b2f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-green:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-green.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-cyan::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button.ui-dialog-titlebar-close::before{border-left-color:#00838f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-cyan:hover::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button.ui-dialog-titlebar-close:hover::before{border-left-color:#00838f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-cyan:active::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button.ui-dialog-titlebar-close:active::before{border-left-color:#00838f}.ibo-button-group>*+*.ibo-is-alternative.ibo-is-cyan:disabled::before,.ui-dialog .ibo-button-group>*+*.ibo-is-cyan.ui-button.ui-dialog-titlebar-close:disabled::before{border-left-color:#aebecd}.ibo-breadcrumbs{position:relative;margin-right:32px}.ibo-breadcrumbs.ibo-is-overflowing{justify-content:right}.ibo-breadcrumbs *{display:flex;align-items:center}.ibo-breadcrumbs--item{color:#404b5a}.ibo-breadcrumbs--item:not(:last-child):hover .ibo-breadcrumbs--item-icon>*{opacity:1;filter:none}.ibo-breadcrumbs--item-icon{margin-right:8px;transition:all 0.1s linear}.ibo-breadcrumbs--item-icon>span{color:#929fb1;opacity:0.6}.ibo-breadcrumbs--item-icon>img{height:auto;max-width:16px;opacity:0.3;filter:grayscale(100%)}.ibo-breadcrumbs--item-label{display:inline;max-width:100px}.ibo-breadcrumbs--item:not(:last-child)::after,.ibo-breadcrumbs--previous-items-list-toggler:not(:last-child)::after{content:"";margin:0 12px;color:#aebecd}.ibo-breadcrumbs--previous-items-list-toggler{margin-right:24px;color:#6e7a8a !important}.ibo-breadcrumbs--previous-items-list-toggler:not(:last-child)::after{position:absolute;right:-24px}.ibo-breadcrumbs--previous-items-list{display:flex;flex-direction:column;align-items:stretch;position:fixed;top:37px;padding:8px 0;background-color:white}.ibo-breadcrumbs--previous-item{color:#404b5a;padding:12px 12px}.ibo-breadcrumbs--previous-item .ibo-breadcrumbs--item-label{max-width:200px}@keyframes ibo-quick-create--drawer--opening{from{top:-310px;box-shadow:none}to{top:100%;box-shadow:0 3px 6px rgba(0, 0, 0, 0.1), 0 10px 20px rgba(0, 0, 0, 0.15)}}.ibo-quick-create{position:relative}.ibo-quick-create.ibo-is-opened .ibo-quick-create--input,.ibo-quick-create.ibo-input-select-icon--menu .ibo-quick-create--input{width:245px}.ibo-quick-create.ibo-is-opened .ibo-quick-create--drawer,.ibo-quick-create.ibo-input-select-icon--menu .ibo-quick-create--drawer{animation-name:ibo-quick-create--drawer--opening;animation-delay:0.1s;animation-duration:0.2s;animation-direction:normal;animation-fill-mode:forwards}.ibo-quick-create--head{background-color:white}.ibo-quick-create--icon{color:#dd6c20;align-self:center;padding:0 16px}.ibo-quick-create--icon:hover{color:#c05621}.ibo-quick-create--icon:active{color:#9c4221}.ibo-quick-create--input{width:0;border:none;transition:all 0.2s ease-in-out}.ibo-quick-create--input.selectize-control.single{position:sticky;display:flex}.ibo-quick-create--input.selectize-control.single .selectize-input,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active{display:flex;background-color:transparent;background-image:none;border:none;box-shadow:none}.ibo-quick-create--input.selectize-control.single .selectize-input>input,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active>input{color:#404b5a;outline:none;border:none}.ibo-quick-create--input.selectize-control.single .selectize-input>input::placeholder,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active>input::placeholder{color:#929fb1}.ibo-quick-create--input.selectize-control.single .selectize-input>input:-ms-input-placeholder,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active>input:-ms-input-placeholder,.ibo-quick-create--input.selectize-control.single .selectize-input>input::-ms-input-placeholder,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active>input::-ms-input-placeholder{color:#929fb1}.ibo-quick-create--input.selectize-control.single .selectize-input>.item,.ibo-quick-create--input.selectize-control.single .selectize-input.input-active>.item{color:#404b5a;line-height:200%}.ibo-quick-create--input.selectize-control.single .selectize-dropdown{background-color:white;border:none;border-radius:0}.ibo-quick-create--drawer{z-index:-1;position:absolute;left:0;right:0;top:-310px;padding:16px 16px;background-color:white;box-shadow:none}.ibo-quick-create--compartment-title{margin-top:8px;margin-bottom:8px;padding-left:32px;overflow-x:hidden;color:#404b5a}.ibo-quick-create--compartment-title>span{position:relative}.ibo-quick-create--compartment-title>span::before,.ibo-quick-create--compartment-title>span::after{content:"";display:inline-block;position:absolute;top:50%;height:1px;width:600px;border-top:1px solid #404b5a}.ibo-quick-create--compartment-title>span::before{right:100%;margin-right:8px}.ibo-quick-create--compartment-title>span::after{left:100%;margin-left:8px}.ibo-quick-create--compartment-content{color:#212934}.ibo-quick-create--compartment-element{display:flex;align-items:center;padding:4px 8px;margin-left:-8px;margin-right:-8px;color:inherit}.ibo-quick-create--compartment-element-image{margin-right:8px;width:20px}.ibo-quick-create--compartment-results--container{position:static;width:100% !important;background:transparent;border:none;box-shadow:none}.ibo-quick-create--compartment-results--element{overflow:unset;max-height:unset}.ibo-quick-create--compartment-results--element>.option{padding:4px 8px;margin-left:-8px;margin-right:-8px;color:inherit}.ibo-quick-create--compartment-results--element>.option.active{background-color:#e1e7ec;border-radius:3px}.ibo-quick-create--compartment-results--element>.option:hover{cursor:pointer;color:#9c4221;text-decoration:none}.ibo-quick-create--compartment-results--element>.option .highlight{font-weight:bold}.ibo-quick-create--compartment--placeholder{align-items:center;display:flex;flex-direction:column}.ibo-quick-create--compartment--placeholder-image>svg{width:66%;height:inherit;margin:24px auto 16px auto;display:flex}.ibo-quick-create--compartment--placeholder-hint{text-align:justify;padding:0 8px;color:#6e7a8a}@keyframes ibo-global-search--drawer--opening{from{top:-310px;box-shadow:none}to{top:100%;box-shadow:0 3px 6px rgba(0, 0, 0, 0.1), 0 10px 20px rgba(0, 0, 0, 0.15)}}.ibo-global-search{position:relative}.ibo-global-search.ibo-is-opened .ibo-global-search--input,.ibo-global-search.ibo-input-select-icon--menu .ibo-global-search--input,.ibo-global-search.ibo-is-opened .ibo-global-search--input:hover,.ibo-global-search.ibo-is-opened .ibo-global-search--input:focus,.ibo-global-search.ibo-is-opened .ibo-global-search--input:active,.ibo-global-search.ibo-input-select-icon--menu .ibo-global-search--input:hover,.ibo-global-search.ibo-input-select-icon--menu .ibo-global-search--input:focus,.ibo-global-search.ibo-input-select-icon--menu .ibo-global-search--input:active{padding:8px 8px;width:245px}.ibo-global-search.ibo-is-opened .ibo-global-search--drawer,.ibo-global-search.ibo-input-select-icon--menu .ibo-global-search--drawer{animation-name:ibo-global-search--drawer--opening;animation-delay:0.1s;animation-duration:0.2s;animation-direction:normal;animation-fill-mode:forwards}.ibo-global-search--head{background-color:white}.ibo-global-search--icon{color:#dd6c20;align-self:center;padding:0 16px}.ibo-global-search--icon:hover{color:#c05621}.ibo-global-search--icon:active{color:#9c4221}.ibo-global-search--input,.ibo-global-search--input:hover,.ibo-global-search--input:focus,.ibo-global-search--input:active{padding:0;width:0;color:#404b5a;background-color:transparent;border:none;outline:none;transition:all 0.2s ease-in-out}.ibo-global-search--input::placeholder,.ibo-global-search--input:hover::placeholder,.ibo-global-search--input:focus::placeholder,.ibo-global-search--input:active::placeholder{color:#929fb1}.ibo-global-search--input:-ms-input-placeholder,.ibo-global-search--input:hover:-ms-input-placeholder,.ibo-global-search--input:focus:-ms-input-placeholder,.ibo-global-search--input:active:-ms-input-placeholder,.ibo-global-search--input::-ms-input-placeholder,.ibo-global-search--input:hover::-ms-input-placeholder,.ibo-global-search--input:focus::-ms-input-placeholder,.ibo-global-search--input:active::-ms-input-placeholder{color:#929fb1}.ibo-global-search--drawer{z-index:-1;position:absolute;left:0;right:0;top:-310px;padding:16px 16px;background-color:white;box-shadow:none}.ibo-global-search--compartment-title{margin-bottom:8px;padding-left:32px;overflow-x:hidden;color:#404b5a}.ibo-global-search--compartment-title>span{position:relative}.ibo-global-search--compartment-title>span::before,.ibo-global-search--compartment-title>span::after{content:"";display:inline-block;position:absolute;top:50%;height:1px;width:600px;border-top:1px solid #404b5a}.ibo-global-search--compartment-title>span::before{right:100%;margin-right:8px}.ibo-global-search--compartment-title>span::after{left:100%;margin-left:8px}.ibo-global-search--compartment-content{color:#212934}.ibo-global-search--compartment-element{display:flex;align-items:center;color:inherit}.ibo-global-search--compartment-element:not(:last-child){margin-bottom:8px}.ibo-global-search--compartment-element-image{margin-right:8px;width:20px}.ibo-global-search--compartment--placeholder{align-items:center;display:flex;flex-direction:column}.ibo-global-search--compartment--placeholder-image>svg{width:66%;height:inherit;margin:24px auto 16px auto;display:flex}.ibo-global-search--compartment--placeholder-hint{text-align:justify;padding:0 8px;color:#6e7a8a}.ibo-popover-menu,.ui-menu,.ui-multiselect-menu,.ibo-input-select-icon--menu,.graph_config .toolkit_menu.graph>ul>li ul{display:none;padding:0;background-color:white;border-radius:3px;flex-wrap:wrap;position:absolute}.ibo-popover-menu.ibo-is-opened,.ibo-is-opened.ui-menu,.ui-menu.ibo-input-select-icon--menu,.ibo-is-opened.ui-multiselect-menu,.ui-multiselect-menu.ibo-input-select-icon--menu,.ibo-is-opened.ibo-input-select-icon--menu,.ibo-input-select-icon--menu,.graph_config .toolkit_menu.graph>ul>li ul.ibo-is-opened,.graph_config .toolkit_menu.graph>ul>li ul.ibo-input-select-icon--menu,.ibo-popover-menu.ibo-input-select-icon--menu,.ibo-input-select-icon--menu.ui-menu,.ibo-input-select-icon--menu.ui-multiselect-menu{display:flex;flex-direction:column}.ibo-popover-menu--toggler-visual-hint{margin-left:0.5rem}.ibo-popover-menu--section,.ui-multiselect-checkboxes{display:flex;flex-direction:column;align-self:flex-start;margin:0 0;width:100%;white-space:nowrap;overflow:hidden}.ibo-popover-menu--section:first-child,.ui-multiselect-checkboxes:first-child{border-radius:3px 3px 0 0}.ibo-popover-menu--section:last-child,.ui-multiselect-checkboxes:last-child{border-radius:0 0 3px 3px}.ibo-popover-menu--item,.ui-menu-item,.ui-multiselect-checkboxes li,.ibo-input-select-icon--menu--item,.graph_config .toolkit_menu.graph>ul>li ul li{padding:12px 24px 12px 16px;color:#212934}.ibo-popover-menu--item a,.ui-menu-item a,.ui-multiselect-checkboxes li a,.ibo-input-select-icon--menu--item a,.graph_config .toolkit_menu.graph>ul>li ul li a{color:#212934}.ibo-popover-menu--item:hover,.ui-menu-item:hover,.ui-multiselect-checkboxes li:hover,.ibo-input-select-icon--menu--item:hover,.graph_config .toolkit_menu.graph>ul>li ul li:hover{background-color:#e1e7ec;color:inherit}.ibo-popover-menu--item.ibo-popover-menu--item-separator,.ibo-popover-menu--item-separator.ui-menu-item,.ui-menu-item.ui-autocomplete-category,.ui-multiselect-checkboxes li.ibo-popover-menu--item-separator,.ui-multiselect-checkboxes li.ui-autocomplete-category,.ibo-popover-menu--item-separator.ibo-input-select-icon--menu--item,.ibo-input-select-icon--menu--item.ui-autocomplete-category,.graph_config .toolkit_menu.graph>ul>li ul li.ibo-popover-menu--item-separator,.graph_config .toolkit_menu.graph>ul>li ul li.ui-autocomplete-category,.ibo-popover-menu--item.ui-autocomplete-category,.ui-autocomplete-category.ui-menu-item,.ui-autocomplete-category.ibo-input-select-icon--menu--item{padding:0;margin:0;background-color:#e1e7ec}.ibo-popover-menu--item--icon{padding-right:5px;color:#6e7a8a;font-size:1.33rem}#ibo-navigation-menu--notifications-menu{flex-flow:column;min-width:min(550px, 90vw);max-width:90vw}#ibo-navigation-menu--notifications-menu .ibo-navigation-menu--notifications--messages-section{overflow:auto}.ibo-navigation-menu--notifications--show-all-messages,.ibo-navigation-menu--notifications-dismiss-all,.ibo-navigation-menu--notifications-show-all-multiple{overflow-x:inherit;text-align:center;min-height:45px}.ibo-navigation-menu--notifications--item--image{max-width:20px;max-height:20px;margin:0 6px;border-radius:100%}.ibo-navigation-menu--notifications--item--image[src=""]{display:none}.ibo-navigation-menu--notifications--item--image:not([src=""])~.ibo-navigation-menu--notifications--item--image{display:none}.ibo-navigation-menu--notifications--item--bottom-text{display:flex;flex-direction:column;align-items:center;float:right;align-self:center;margin-left:auto;margin-right:auto}.ibo-navigation-menu--notifications--item--content{flex-grow:1;padding:0 14px;max-height:128px;overflow-y:auto;white-space:normal}.ibo-navigation-menu--notifications--item--content img{max-height:100px;padding:5px}.ibo-navigation-menu--notifications-item{display:flex;flex-direction:row;cursor:pointer}.ibo-navigation-menu--notifications--item--new-message-indicator{width:13px;height:13px;background-color:white;border:solid 2px #aebecd;border-radius:100%;margin-top:4px;flex-shrink:0}.ibo-navigation-menu--notifications--item--new-message-indicator.ibo-is-priority-1{background-color:#fce8e8;border:solid 2px #f56565}.ibo-navigation-menu--notifications--item--new-message-indicator.ibo-is-priority-2{background-color:floralwhite;border:solid 2px #ea7d1e}.ibo-navigation-menu--notifications--item--new-message-indicator.ibo-is-priority-3{background-color:#ebf8ff;border:solid 2px #429ae1}.ibo-navigation-menu--notifications--item--new-message-indicator.ibo-is-priority-4{background-color:white;border:solid 2px #aebecd}.ibo-navigation-menu--notifications-show-all-multiple~.ibo-popover-menu .ibo-navigation-menu--notifications--item--new-message-indicator,.ibo-navigation-menu--notifications-show-all-multiple~.ui-menu .ibo-navigation-menu--notifications--item--new-message-indicator,.ibo-navigation-menu--notifications-show-all-multiple~.ui-multiselect-menu .ibo-navigation-menu--notifications--item--new-message-indicator,.ibo-navigation-menu--notifications-show-all-multiple~.ibo-input-select-icon--menu .ibo-navigation-menu--notifications--item--new-message-indicator,.graph_config .toolkit_menu.graph>ul>li .ibo-navigation-menu--notifications-show-all-multiple~ul .ibo-navigation-menu--notifications--item--new-message-indicator{display:inline-block;margin-right:15px}.ibo-navigation-menu--notifications-dismiss-all--icon{margin:0 10px 0 0}.ibo-popover-menu--item--no-message{text-align:center}.ibo-popover-menu--item--no-message--image>svg{max-width:220px;height:inherit;padding:15px}.ibo-panel.ibo-has-sticky-header>.ibo-panel--header .ibo-panel--title,.ibo-panel.ibo-has-sticky-header>.ibo-object-summary--header .ibo-panel--title,.ibo-panel.ibo-has-sticky-header>.ibo-panel--header .ibo-panel--subtitle,.ibo-panel.ibo-has-sticky-header>.ibo-object-summary--header .ibo-panel--subtitle,.ibo-panel.ibo-has-sticky-header>.ibo-panel--header .ibo-panel--icon,.ibo-panel.ibo-has-sticky-header>.ibo-object-summary--header .ibo-panel--icon,.ibo-panel.ibo-has-sticky-header>.ibo-panel--header .ibo-panel--titles,.ibo-panel.ibo-has-sticky-header>.ibo-object-summary--header .ibo-panel--titles,.ibo-object-details.ibo-has-sticky-header>.ibo-panel--header .ibo-panel--header-left,.ibo-object-details.ibo-has-sticky-header>.ibo-object-summary--header .ibo-panel--header-left{transition:all 0.15s linear}.ibo-panel{--ibo-main-color: #929fb1;position:relative}.ibo-panel.ibo-has-icon>.ibo-panel--header .ibo-panel--titles,.ibo-panel.ibo-has-icon>.ibo-object-summary--header .ibo-panel--titles{padding-left:16px}.ibo-panel.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header .ibo-panel--header-left,.ibo-panel.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header .ibo-panel--header-left{position:relative;z-index:1;margin-left:16px}.ibo-panel.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header .ibo-panel--header-left .ibo-panel--icon,.ibo-panel.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header .ibo-panel--header-left .ibo-panel--icon{position:absolute;bottom:-24px;left:0;overflow:hidden;width:72px;height:72px;min-width:72px;min-height:72px;background-color:#f8f9fa;border:2px solid #90a4ae;border-radius:100%}.ibo-panel.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header .ibo-panel--header-left .ibo-panel--titles,.ibo-panel.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header .ibo-panel--header-left .ibo-panel--titles{padding-left:calc(72px + 16px)}.ibo-panel.ibo-is-selectable .ibo-panel--body::after{content:" ";background-color:transparent;cursor:pointer;position:absolute;display:flex;align-items:center;justify-content:center;height:100%;width:100%;z-index:3;font-size:7rem}.ibo-panel.ibo-is-selectable:hover .ibo-panel--body::after{content:"";color:#f8f9fa;background-color:rgba(146, 159, 177, 0.4);display:flex}.ibo-panel.ibo-is-selected .ibo-panel--body::after{content:"";color:#f8f9fa;background-color:rgba(33, 41, 52, 0.5);display:flex}.ibo-panel.ibo-is-selected:hover .ibo-panel--body::after{background-color:rgba(110, 122, 138, 0.5);display:flex}.ibo-panel--header,.ibo-object-summary--header{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:4px}.ibo-panel--header-left{justify-content:left}.ibo-panel--icon{width:48px;height:48px;min-width:48px;min-height:48px}.ibo-panel--icon-img,.ibo-panel--icon-background{width:100%;height:100%;object-position:center;object-fit:contain;background-position:center;background-repeat:no-repeat;background-size:contain}.ibo-panel--icon-img--must-contain,.ibo-panel--icon-background--must-contain{object-fit:contain;background-size:contain}.ibo-panel--icon-img--must-cover,.ibo-panel--icon-background--must-cover{object-fit:cover;background-size:cover}.ibo-panel--icon-img--must-zoomout,.ibo-panel--icon-background--must-zoomout{width:66.67%;height:66.67%}.ibo-panel--title{display:inline-block;color:#212934;flex-grow:1}.ibo-panel--subtitle{display:flex;color:#404b5a}.ibo-panel--body{position:relative;z-index:1;padding:32px 16px 24px 16px;background-color:white;border:1px solid #ccd4db;border-radius:5px;overflow:hidden}.ibo-panel--body::before{position:absolute;top:0;left:0;display:block;background-color:var(--ibo-main-color);content:"";width:100%;height:8px;padding-bottom:8px}.ibo-panel.ibo-is-primary>.ibo-panel--body::before{background-color:#dd6c20}.ibo-panel.ibo-is-secondary>.ibo-panel--body::before,.ui-dialog .ibo-panel.ui-button>.ibo-panel--body::before,.ibo-panel.ui-datepicker-current>.ibo-panel--body::before,.ibo-panel.ui-datepicker-close>.ibo-panel--body::before{background-color:#929fb1}.ibo-panel.ibo-is-neutral>.ibo-panel--body::before,.ui-dialog .ibo-panel.ui-button.ui-dialog-titlebar-close>.ibo-panel--body::before{background-color:#929fb1}.ibo-panel.ibo-is-information>.ibo-panel--body::before{background-color:#3182ce}.ibo-panel.ibo-is-success>.ibo-panel--body::before{background-color:#7cb342}.ibo-panel.ibo-is-failure>.ibo-panel--body::before{background-color:#e53e3e}.ibo-panel.ibo-is-warning>.ibo-panel--body::before{background-color:#dd6c20}.ibo-panel.ibo-is-danger>.ibo-panel--body::before{background-color:#e53e3e}.ibo-panel.ibo-is-grey>.ibo-panel--body::before{background-color:#929fb1}.ibo-panel.ibo-is-blue-grey>.ibo-panel--body::before{background-color:#546e7a}.ibo-panel.ibo-is-blue>.ibo-panel--body::before{background-color:#2c5382}.ibo-panel.ibo-is-cyan>.ibo-panel--body::before{background-color:#00aac1}.ibo-panel.ibo-is-green>.ibo-panel--body::before{background-color:#7cb342}.ibo-panel.ibo-is-orange>.ibo-panel--body::before{background-color:#dd6c20}.ibo-panel.ibo-is-red>.ibo-panel--body::before{background-color:#e53e3e}.ibo-panel.ibo-is-pink>.ibo-panel--body::before{background-color:#d53f8c}.ibo-panel--collapsible-toggler{display:inline-block;margin-right:8px;font-size:1.5rem;color:#6e7a8a;cursor:pointer}.ibo-panel .ibo-panel--collapsible-toggler--opened{display:block}.ibo-panel .ibo-panel--collapsible-toggler--closed{display:none}.ibo-panel:not(.ibo-is-opened) .ibo-panel--collapsible-toggler--closed{display:block}.ibo-panel:not(.ibo-is-opened) .ibo-panel--collapsible-toggler--opened{display:none}.ibo-panel:not(.ibo-is-opened) .ibo-panel--body{display:none}.ibo-panel.ibo-has-sticky-header>.ibo-panel--header,.ibo-panel.ibo-has-sticky-header>.ibo-object-summary--header{position:sticky;top:0;border:transparent;transition-property:all, top, background-color;transition-duration:0.15s, 0s, 0s;transition-timing-function:linear}.ibo-panel.ibo-has-sticky-header>.ibo-panel--header.ibo-is-sticking,.ibo-panel.ibo-has-sticky-header>.ibo-is-sticking.ibo-object-summary--header{padding-top:4px;padding-bottom:4px;background-color:#f8f9fa;border:1px solid #ccd4db;align-items:center}.ibo-panel.ibo-has-sticky-header>.ibo-panel--header.ibo-is-sticking .ibo-panel--title,.ibo-panel.ibo-has-sticky-header>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--title{font-size:1.17rem}.ibo-panel.ibo-has-sticky-header>.ibo-panel--header.ibo-is-sticking .ibo-panel--subtitle,.ibo-panel.ibo-has-sticky-header>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--subtitle{font-size:1rem}.ibo-panel.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header,.ibo-panel.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header{}.ibo-panel.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header.ibo-is-sticking .ibo-panel--icon,.ibo-panel.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--icon{bottom:-12px;width:48px;height:48px;min-width:48px;min-height:48px;border:1px solid #ccd4db}.ibo-panel.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header.ibo-is-sticking .ibo-panel--titles,.ibo-panel.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--titles{padding-left:calc(48px + 16px)}.ibo-collapsible-section--header{display:flex;align-items:stretch}.ibo-collapsible-section.ibo-is-opened .ibo-collapsible-section--minimize-button,.ibo-collapsible-section.ibo-input-select-icon--menu .ibo-collapsible-section--minimize-button{display:block}.ibo-collapsible-section.ibo-is-opened .ibo-collapsible-section--maximize-button,.ibo-collapsible-section.ibo-input-select-icon--menu .ibo-collapsible-section--maximize-button{display:none}.ibo-collapsible-section:not(.ibo-is-opened) .ibo-collapsible-section--minimize-button{display:none}.ibo-collapsible-section:not(.ibo-is-opened) .ibo-collapsible-section--maximize-button{display:block}.ibo-collapsible-section:not(.ibo-is-opened) .ibo-collapsible-section--body{display:none}.ibo-collapsible-section .ibo-collapsible-section--header{cursor:pointer}.ibo-collapsible-section .ibo-collapsible-section--header:hover i{opacity:0.8}.ibo-collapsible-section .ibo-collapsible-section--header .ibo-collapsible-section--action-button{align-self:center}.ibo-collapsible-section .ibo-collapsible-section--header .ibo-collapsible-section--action-button.ibo-collapsible-section--maximize-button,.ibo-collapsible-section .ibo-collapsible-section--header .ibo-collapsible-section--action-button.ibo-collapsible-section--minimize-button{color:#6e7a8a;margin-right:8px}.ibo-collapsible-section .ibo-collapsible-section--header .ibo-collapsible-section--title{color:#212934;flex-grow:1}.ibo-collapsible-section .ibo-collapsible-section--body{position:relative;padding:24px 16px 16px;background-color:white;border:solid 1px #ccd4db;border-radius:5px;overflow:hidden}.ibo-modal{display:flex;flex-direction:column;max-height:90vh !important;max-width:90vw !important}.ibo-modal.ibo-is-extra-small{height:calc(min(20vh, 150px)) !important;width:calc(min(20vw, 200px)) !important}.ibo-modal.ibo-is-small{height:calc(min(60vh, 400px)) !important;width:calc(min(60vw, 800px)) !important}.ibo-modal.ibo-is-medium{height:calc(min(75vh, 600px)) !important;width:calc(min(75vw, 1200px)) !important}.ibo-modal.ibo-is-large{height:calc(min(90vh, 900px)) !important;width:calc(min(90vw, 1800px)) !important}.ibo-modal-option--do-not-show-again{margin-top:16px}.ibo-modal-option--do-not-show-again .ibo-modal-option--do-not-show-again--checkbox{height:auto;display:inline-block;width:auto}.ibo-modal.ibo-is-informative{align-items:center;min-width:384px;min-height:24px !important}.ibo-modal.ibo-is-informative::before{display:block;position:absolute;top:0;left:0;content:"";width:4px;height:100%}.ibo-modal.ibo-is-informative.ibo-is-error::before{background-color:#e53e3e}.ibo-modal.ibo-is-informative.ibo-is-warning::before{background-color:#dd6c20}.ibo-modal.ibo-is-informative.ibo-is-information::before{background-color:#3182ce}.ibo-modal.ibo-is-informative.ibo-is-success::before{background-color:#7cb342}.ibo-dashlet{position:relative;width:calc(100% - 24px);margin:calc(24px / 2) calc(24px / 2)}.ibo-dashlet.dashlet-selected{position:relative}.ibo-dashlet--is-inline{width:auto}.ibo-dashlet-blocker{position:absolute;z-index:9;top:0;left:0;width:100%;height:100%;cursor:not-allowed}:root{--ibo-dashlet-badge--min-width: 200px;--ibo-dashlet-badge--padding-x: 16px;--ibo-dashlet-badge--padding-y: 16px;--ibo-dashlet-badge--background-color: white;--ibo-dashlet-badge--border: 1px solid #ccd4db;--ibo-dashlet-badge--border-radius: 5px}.ibo-dashlet-badge{max-width:350px;flex-basis:200px;flex-grow:1;flex-shrink:1;padding:16px 16px;background-color:white;border:1px solid #ccd4db;border-radius:5px}.ibo-dashlet-badge--body{display:flex;justify-items:left;align-items:center}.ibo-dashlet-badge--icon-container{margin-right:16px}.ibo-dashlet-badge--icon{width:48px;min-width:48px;max-height:48px}.ibo-dashlet-badge--actions{flex-grow:1;overflow-x:hidden}.ibo-dashlet-badge--action-list{color:inherit}.ibo-dashlet-badge--action-list-count{margin-right:8px}.ibo-dashlet-badge--action-list-label{display:inline-block}.ibo-dashlet-badge--action-create-icon{margin-right:8px}.ibo-dashlet-badge--body--tooltip-title{margin-bottom:16px}.ibo-dashlet-header-static{padding:16px 16px 0 16px;overflow-x:hidden}.ibo-dashlet-header-static--body{position:relative;display:inline-flex;justify-items:left;align-items:center;margin-left:48px;color:#212934}.ibo-dashlet-header-static--body::before,.ibo-dashlet-header-static--body::after{content:"";position:absolute;top:50%;width:10000px;height:1px;border-bottom:2px solid #ccd4db}.ibo-dashlet-header-static--body::before{right:calc(100% + 16px)}.ibo-dashlet-header-static--body::after{left:calc(100% + 16px)}.ibo-dashlet-header-static--icon-container{margin-right:16px}.ibo-dashlet-header-static--icon{width:48px;min-width:48px;max-height:48px}.ibo-dashlet-header-dynamic--container{display:flex;flex-wrap:wrap}.ibo-dashlet-header-dynamic--count{margin-right:10px}.ibo-input,.ui-autocomplete-input,.ui-multiselect,.dataTables_length select,.ui_tpicker_hour_slider>select,.ui_tpicker_minute_slider>select,.ui_tpicker_second_slider>select,select.ibo-input-select-placeholder,.ibo-datatableconfig--attributes-panel--per-page--input,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper input[type="text"]{height:30px;width:100%;background-color:white;color:#212934;padding:0 10px;border:1px solid #aebecd;border-radius:3px}.ibo-input:focus,.ui-autocomplete-input:focus,.ui-multiselect:focus,.dataTables_length select:focus,.ui_tpicker_hour_slider>select:focus,.ui_tpicker_minute_slider>select:focus,.ui_tpicker_second_slider>select:focus,select.ibo-input-select-placeholder:focus,.ibo-datatableconfig--attributes-panel--per-page--input:focus,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"]:focus,.search_form_handler .sf_filter .sff_input_wrapper input[type="text"]:focus{border-color:#dd6c20}.ibo-input:disabled,.ui-autocomplete-input:disabled,.ui-multiselect:disabled,.dataTables_length select:disabled,.ui_tpicker_hour_slider>select:disabled,.ui_tpicker_minute_slider>select:disabled,.ui_tpicker_second_slider>select:disabled,select.ibo-input-select-placeholder:disabled,.ibo-datatableconfig--attributes-panel--per-page--input:disabled,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"]:disabled,.search_form_handler .sf_filter .sff_input_wrapper input[type="text"]:disabled{background-color:#d5dde5;color:#929fb1}.ibo-input::placeholder,.ui-autocomplete-input::placeholder,.ui-multiselect::placeholder,.dataTables_length select::placeholder,.ui_tpicker_hour_slider>select::placeholder,.ui_tpicker_minute_slider>select::placeholder,.ui_tpicker_second_slider>select::placeholder,select.ibo-input-select-placeholder::placeholder,.ibo-datatableconfig--attributes-panel--per-page--input::placeholder,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"]::placeholder,.search_form_handler .sf_filter .sff_input_wrapper input[type="text"]::placeholder{color:#929fb1}textarea.ibo-input,textarea.ui-autocomplete-input,textarea.ui-multiselect,textarea.ibo-datatableconfig--attributes-panel--per-page--input{height:unset}.ibo-input-wrapper.is-error .ibo-input,.is-error.ui_tpicker_hour_slider .ibo-input,.is-error.ui_tpicker_hour_slider .ui-autocomplete-input,.is-error.ui_tpicker_hour_slider .ui-multiselect,.is-error.ui_tpicker_hour_slider .dataTables_length select,.dataTables_length .is-error.ui_tpicker_hour_slider select,.is-error.ui_tpicker_hour_slider .ui_tpicker_hour_slider>select,.is-error.ui_tpicker_hour_slider .ui_tpicker_minute_slider>select,.is-error.ui_tpicker_hour_slider .ui_tpicker_second_slider>select,.is-error.ui_tpicker_hour_slider select.ibo-input-select-placeholder,.is-error.ui_tpicker_hour_slider .ibo-datatableconfig--attributes-panel--per-page--input,.is-error.ui_tpicker_hour_slider .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .is-error.ui_tpicker_hour_slider input[type="text"],.is-error.ui_tpicker_hour_slider .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .is-error.ui_tpicker_hour_slider input[type="text"],.is-error.ui_tpicker_minute_slider .ibo-input,.is-error.ui_tpicker_minute_slider .ui-autocomplete-input,.is-error.ui_tpicker_minute_slider .ui-multiselect,.is-error.ui_tpicker_minute_slider .dataTables_length select,.dataTables_length .is-error.ui_tpicker_minute_slider select,.is-error.ui_tpicker_minute_slider .ui_tpicker_hour_slider>select,.is-error.ui_tpicker_minute_slider .ui_tpicker_minute_slider>select,.is-error.ui_tpicker_minute_slider .ui_tpicker_second_slider>select,.is-error.ui_tpicker_minute_slider select.ibo-input-select-placeholder,.is-error.ui_tpicker_minute_slider .ibo-datatableconfig--attributes-panel--per-page--input,.is-error.ui_tpicker_minute_slider .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .is-error.ui_tpicker_minute_slider input[type="text"],.is-error.ui_tpicker_minute_slider .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .is-error.ui_tpicker_minute_slider input[type="text"],.is-error.ui_tpicker_second_slider .ibo-input,.is-error.ui_tpicker_second_slider .ui-autocomplete-input,.is-error.ui_tpicker_second_slider .ui-multiselect,.is-error.ui_tpicker_second_slider .dataTables_length select,.dataTables_length .is-error.ui_tpicker_second_slider select,.is-error.ui_tpicker_second_slider .ui_tpicker_hour_slider>select,.is-error.ui_tpicker_second_slider .ui_tpicker_minute_slider>select,.is-error.ui_tpicker_second_slider .ui_tpicker_second_slider>select,.is-error.ui_tpicker_second_slider select.ibo-input-select-placeholder,.is-error.ui_tpicker_second_slider .ibo-datatableconfig--attributes-panel--per-page--input,.is-error.ui_tpicker_second_slider .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .is-error.ui_tpicker_second_slider input[type="text"],.is-error.ui_tpicker_second_slider .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .is-error.ui_tpicker_second_slider input[type="text"],.ibo-input-wrapper.is-error .ui-autocomplete-input,.ibo-input-wrapper.is-error .ui-multiselect,.ibo-input-wrapper.is-error .dataTables_length select,.dataTables_length .ibo-input-wrapper.is-error select,.ibo-input-wrapper.is-error .ui_tpicker_hour_slider>select,.ibo-input-wrapper.is-error .ui_tpicker_minute_slider>select,.ibo-input-wrapper.is-error .ui_tpicker_second_slider>select,.ibo-input-wrapper.is-error select.ibo-input-select-placeholder,.ibo-input-wrapper.is-error .ibo-datatableconfig--attributes-panel--per-page--input,.ibo-input-wrapper.is-error .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .ibo-input-wrapper.is-error input[type="text"],.ibo-input-wrapper.is-error .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .ibo-input-wrapper.is-error input[type="text"],.ibo-input-wrapper.is-error .ibo-input-vanilla,.is-error.ui_tpicker_hour_slider .ibo-input-vanilla,.is-error.ui_tpicker_minute_slider .ibo-input-vanilla,.is-error.ui_tpicker_second_slider .ibo-input-vanilla,.ibo-input-wrapper.is-error .ck-editor,.is-error.ui_tpicker_hour_slider .ck-editor,.is-error.ui_tpicker_minute_slider .ck-editor,.is-error.ui_tpicker_second_slider .ck-editor,.ibo-input-wrapper.is-error textarea,.is-error.ui_tpicker_hour_slider textarea,.is-error.ui_tpicker_minute_slider textarea,.is-error.ui_tpicker_second_slider textarea,.ibo-input-field-wrapper.is-error .ibo-input,.ibo-input-field-wrapper.is-error .ui-autocomplete-input,.ibo-input-field-wrapper.is-error .ui-multiselect,.ibo-input-field-wrapper.is-error .dataTables_length select,.dataTables_length .ibo-input-field-wrapper.is-error select,.ibo-input-field-wrapper.is-error .ui_tpicker_hour_slider>select,.ibo-input-field-wrapper.is-error .ui_tpicker_minute_slider>select,.ibo-input-field-wrapper.is-error .ui_tpicker_second_slider>select,.ibo-input-field-wrapper.is-error select.ibo-input-select-placeholder,.ibo-input-field-wrapper.is-error .ibo-datatableconfig--attributes-panel--per-page--input,.ibo-input-field-wrapper.is-error .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .ibo-input-field-wrapper.is-error input[type="text"],.ibo-input-field-wrapper.is-error .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .ibo-input-field-wrapper.is-error input[type="text"],.ibo-input-field-wrapper.is-error .ibo-input-vanilla,.ibo-input-field-wrapper.is-error .ck-editor,.ibo-input-field-wrapper.is-error textarea{border-color:#e53e3e}.ibo-input-wrapper.is-error .ibo-input-vanilla input,.is-error.ui_tpicker_hour_slider .ibo-input-vanilla input,.is-error.ui_tpicker_minute_slider .ibo-input-vanilla input,.is-error.ui_tpicker_second_slider .ibo-input-vanilla input,.ibo-input-field-wrapper.is-error .ibo-input-vanilla input{border:0;background-color:rgba(255, 255, 255, 0)}input.ibo-input-vanilla{width:unset;display:initial}.ibo-input-wrapper--with-buttons,.ibo-input-select-wrapper--with-buttons{position:relative;display:flex}.ibo-field-validation{color:#c53030}.file-input{display:block;position:relative}.ibo-input--label-right{margin-right:4px;display:inline}.ibo-input--label-left{margin-left:4px;display:inline}.disabled{background-color:#d5dde5}.ibo-input-checkbox{height:16px;width:auto}.ibo-input-date-wrapper{position:relative}.ibo-input-date{display:inline-block;width:100%}.ibo-input-date+button{position:absolute;display:inline-block;margin-left:-20px;margin-top:5px;padding:0;background-color:transparent;color:#404b5a;border:none}.ibo-input-datetime-wrapper{position:relative}.ibo-input-datetime{display:inline-block;width:100%}.ibo-input-datetime--action-button{position:absolute;display:inline-block;margin-left:-20px;margin-top:5px;padding:0;color:#404b5a}.ui_tpicker_hour_slider>select,.ui_tpicker_minute_slider>select,.ui_tpicker_second_slider>select{width:auto;padding-right:18px}.ibo-input-duration{display:inline-block;width:unset;text-align:right}.ibo-input-image{display:flex;justify-content:flex-start;align-items:flex-start}.ibo-input-image--image-view{position:relative;overflow:hidden;min-height:96px;background-color:#e1e7ec;border-radius:5px}.ibo-input-image--image-view img[src=""],.ibo-input-image--image-view img[src="null"]{visibility:hidden}.ibo-input-image--image-view input[type="file"]{position:absolute;top:0;bottom:0;left:0;right:0;width:100%;opacity:0}.ibo-input-image--edit-buttons{display:flex;flex-direction:column;margin-left:0.5rem}.ibo-input-image--edit-buttons .ibo-button+.ibo-button,.ibo-input-image--edit-buttons .ui-dialog .ui-button+.ibo-button,.ibo-input-image--edit-buttons .ui-dialog .ui-dialog .ui-button+.ui-button,.ui-dialog .ibo-input-image--edit-buttons .ui-dialog .ui-button+.ui-button,.ibo-input-image--edit-buttons .ui-dialog .ui-button+.ui-datepicker-current,.ibo-input-image--edit-buttons .ui-dialog .ui-button+.ui-datepicker-close,.ui-dialog .ibo-input-image--edit-buttons .ui-button+.ibo-button,.ibo-input-image--edit-buttons .ui-datepicker-current+.ibo-button,.ibo-input-image--edit-buttons .ui-dialog .ui-datepicker-current+.ui-button,.ui-dialog .ibo-input-image--edit-buttons .ui-datepicker-current+.ui-button,.ibo-input-image--edit-buttons .ui-datepicker-current+.ui-datepicker-current,.ibo-input-image--edit-buttons .ui-datepicker-current+.ui-datepicker-close,.ibo-input-image--edit-buttons .ui-datepicker-close+.ibo-button,.ibo-input-image--edit-buttons .ui-dialog .ui-datepicker-close+.ui-button,.ui-dialog .ibo-input-image--edit-buttons .ui-datepicker-close+.ui-button,.ibo-input-image--edit-buttons .ui-datepicker-close+.ui-datepicker-current,.ibo-input-image--edit-buttons .ui-datepicker-close+.ui-datepicker-close,.ibo-input-image--edit-buttons .ui-dialog .ibo-button+.ui-button,.ui-dialog .ibo-input-image--edit-buttons .ibo-button+.ui-button,.ibo-input-image--edit-buttons .ibo-button+.ui-datepicker-current,.ibo-input-image--edit-buttons .ibo-button+.ui-datepicker-close{margin-top:0.5rem;margin-left:0}.ibo-input-richtext-placeholder{height:192px;width:100%;visibility:hidden}.ibo-input-select,.ui-multiselect,.ui_tpicker_hour_slider>select,.ui_tpicker_minute_slider>select,.ui_tpicker_second_slider>select,select.ibo-input-select-placeholder{display:inline-flex;min-width:50px;appearance:none}.ibo-input-select.ibo-input-selectize,.ibo-input-selectize.ui-multiselect,.ui_tpicker_hour_slider>select.ibo-input-selectize,.ui_tpicker_minute_slider>select.ibo-input-selectize,.ui_tpicker_second_slider>select.ibo-input-selectize,select.ibo-input-selectize.ibo-input-select-placeholder{padding-right:0;padding-left:0;min-width:150px !important}.ibo-input-select.ibo-input-selectize input,.ibo-input-selectize.ui-multiselect input,.ui_tpicker_hour_slider>select.ibo-input-selectize input,.ui_tpicker_minute_slider>select.ibo-input-selectize input,.ui_tpicker_second_slider>select.ibo-input-selectize input,select.ibo-input-selectize.ibo-input-select-placeholder input{border-width:0;color:inherit;border-color:white;padding-left:10px}.ibo-input-select.ibo-input-selectize>[data-value],.ibo-input-selectize.ui-multiselect>[data-value],.ui_tpicker_hour_slider>select.ibo-input-selectize>[data-value],.ui_tpicker_minute_slider>select.ibo-input-selectize>[data-value],.ui_tpicker_second_slider>select.ibo-input-selectize>[data-value],select.ibo-input-selectize.ibo-input-select-placeholder>[data-value]{height:100%;line-height:30px;padding-left:10px}.ibo-input-select[size],.ui-multiselect[size],.ui_tpicker_hour_slider>select[size],.ui_tpicker_minute_slider>select[size],.ui_tpicker_second_slider>select[size],select.ibo-input-select-placeholder[size]{height:auto}.ibo-input-select[multiple],.ui-multiselect[multiple],.ui_tpicker_hour_slider>select[multiple],.ui_tpicker_minute_slider>select[multiple],.ui_tpicker_second_slider>select[multiple],select.ibo-input-select-placeholder[multiple]{padding-left:unset;padding-right:unset}.ibo-input-select[multiple] option,.ui-multiselect[multiple] option,.ui_tpicker_hour_slider>select[multiple] option,.ui_tpicker_minute_slider>select[multiple] option,.ui_tpicker_second_slider>select[multiple] option,select.ibo-input-select-placeholder[multiple] option{padding:4px 10px}.ibo-input-select-autocomplete{min-width:150px !important;text-overflow:ellipsis}.ibo-input-selectize{min-width:150px !important}.ibo-input-selectize>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibo-input-selectize>input{background-color:unset;border:unset}.ibo-input-selectize>input:focus{outline:none !important}.ibo-input-selectize.input-active{border:1px solid #dd6c20}.ibo-input-select-wrapper,.ui_tpicker_hour_slider,.ui_tpicker_minute_slider,.ui_tpicker_second_slider{position:relative}.ibo-input-select-wrapper--with-buttons .selectize-control{display:grid;width:100%}.ibo-input-select-wrapper::after,.ui_tpicker_hour_slider::after,.ui_tpicker_minute_slider::after,.ui_tpicker_second_slider::after{position:absolute;z-index:1;content:"";font-family:"Font Awesome 5 Free";font-weight:600;height:28px;margin-left:-16px;margin-top:1px;padding-top:3px;background-color:inherit;color:#212934;pointer-events:none}.ibo-input-select-container{display:flex}.ibo-input-select-wrapper--with-buttons:not(.ibo-input-select-autocomplete-wrapper)::after{position:absolute;z-index:1;content:"";font-family:"Font Awesome 5 Free";font-weight:600;cursor:pointer;right:8px;height:28px;margin-left:-16px;margin-top:1px;padding-top:3px;background-color:inherit;color:#212934;pointer-events:none}.ibo-input-select--action-buttons{position:absolute;z-index:1;display:flex;height:28px;margin-top:0;margin-right:3px;font-size:1rem;background-color:inherit;color:#404b5a;padding:0 2px;text-align:right;bottom:0;top:0;right:0}.ibo-input-select-wrapper .ibo-input-select--action-buttons,.ui_tpicker_hour_slider .ibo-input-select--action-buttons,.ui_tpicker_minute_slider .ibo-input-select--action-buttons,.ui_tpicker_second_slider .ibo-input-select--action-buttons{margin-right:20px}.ibo-input-select--action-button{display:flex;align-items:center;padding-left:6px;padding-right:2px;float:right}.selectize-dropdown.ui-autocomplete,.selectize-dropdown.set-dropdown,.selectize-dropdown.plugin-custom_itop{z-index:2000;max-height:50vh;max-width:50em;overflow-y:auto}.selectize-dropdown-content{max-height:calc(50vh - 4px)}.selectize-dropdown.ui-menu .ui-state-active{margin:unset;background-color:#ebf8ff;color:#404b5a}.ibo-input-select--autocomplete-item,.ibo-input-select--notification-item{display:flex;justify-content:left;align-items:center}.ibo-input-select--autocomplete-item-image{width:30px;height:30px;min-width:30px;min-height:30px;background-position:center center;background-size:100%;border-radius:100%;margin-right:0.7rem;background-color:#ebf8ff;border:1px solid #929fb1}.ibo-input-select--autocomplete-item-image.ibo-is-not-medallion{border:unset;border-radius:0;background-color:unset}.ibo-input-select-icon{display:inline-flex;text-align:left}.ibo-input-select-icon>img{max-height:100%;max-width:100%;padding-right:4px}.ibo-input-select-icon>span{overflow:hidden}.ibo-input-select-icon--menu{position:absolute;z-index:21;max-height:300px;overflow-x:hidden;overflow-y:auto;flex-wrap:nowrap}.ibo-input-select-icon--menu--item>*{width:100%;white-space:nowrap;overflow-x:hidden;text-overflow:ellipsis}.ibo-input-select-icon--menu--item>*>.ibo-input-select-icon--menu--icon{max-width:100%;max-height:100%;margin-right:10px}.ibo-input-one-way-password-wrapper>*:not(first-child){margin-top:6px}.ibo-input-set{flex-wrap:wrap;height:auto;min-height:30px}.ibo-input-set>input{height:auto}.ibo-input-set .item[data-value]>.remove{font-size:18px;padding-top:0.15em;border-left:none}.attribute-set .attribute-set-item,.selectize-control.multi .selectize-input.ibo-input-set .attribute-set-item,.selectize-control.multi .ibo-quick-create--input.selectize-control.single .ibo-input-set.selectize-input.input-active .attribute-set-item,.ibo-quick-create--input.selectize-control.single .selectize-control.multi .ibo-input-set.selectize-input.input-active .attribute-set-item{display:inline-flex;margin-top:1px;margin-right:0;margin-bottom:1px;padding:4px 6px;max-width:360px;background:white none;border:none;border-radius:3px;box-shadow:0 1px 1px rgba(0, 0, 0, 0.15), 0 0 1px 1px rgba(241, 241, 241, 0.7);color:#212934;text-shadow:none}.attribute-set .attribute-set-item:not(:first-child),.selectize-control.multi .selectize-input.ibo-input-set .attribute-set-item:not(:first-child),.selectize-control.multi .ibo-quick-create--input.selectize-control.single .ibo-input-set.selectize-input.input-active .attribute-set-item:not(:first-child),.ibo-quick-create--input.selectize-control.single .selectize-control.multi .ibo-input-set.selectize-input.input-active .attribute-set-item:not(:first-child){margin-left:3px}.attribute-set.history-added .attribute-set-item{font-weight:bold}.attribute-set.history-removed .attribute-set-item{text-decoration:line-through;font-style:italic}.selectize-control.multi .selectize-input.ibo-input-set,.selectize-control.multi .ibo-quick-create--input.selectize-control.single .ibo-input-set.selectize-input.input-active,.ibo-quick-create--input.selectize-control.single .selectize-control.multi .ibo-input-set.selectize-input.input-active{padding:0 8px}.ibo-input-text,textarea{width:100%;min-height:12rem;padding:10px 12px}.ibo-input-text.ibo-is-code,textarea.ibo-is-code{background-color:white}.ibo-input-text--export{width:100%;min-height:15em}.ibo-toggler--wrapper{position:relative;display:inline-block;width:36px;height:20px;vertical-align:baseline}.ibo-toggler--wrapper .ibo-toggler{display:none}.ibo-toggler--slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;border-radius:16px;background-color:#929fb1;transition:0.4s}.ibo-toggler--slider:before{content:"";position:absolute;left:3px;bottom:3px;height:15px;width:15px;border-radius:100%;background-color:#f8f9fa;transition:0.4s}.ibo-toggler--wrapper input:checked+.ibo-toggler--slider{background-color:#dd6c20}.ibo-toggler--wrapper input:disabled+.ibo-toggler--slider{background-color:#e1e7ec}.ibo-toggler--wrapper input:checked:disabled+.ibo-toggler--slider{background-color:#feebc8}input:focus+.ibo-toggler--slider{box-shadow:0 0 1px #dd6c20}input:checked+.ibo-toggler--slider:before{transform:translateX(14.5px)}label~.ibo-toggler--wrapper{margin-left:4px}.ibo-pill.ibo-is-new{color:#2a4265;background-color:#ebf8ff}.ibo-pill.ibo-is-neutral,.ui-dialog .ibo-pill.ui-button.ui-dialog-titlebar-close{color:#2a4265;background-color:#ebf8ff}.ibo-pill.ibo-is-waiting{color:#9c4221;background-color:floralwhite}.ibo-pill.ibo-is-success{color:#33691e;background-color:#dcedc8}.ibo-pill.ibo-is-failure{color:#9b2c2c;background-color:#fce8e8}.ibo-pill.ibo-is-frozen{color:#6e7a8a;background-color:#f8f9fa}.ibo-pill.ibo-is-active{color:#33691e;background-color:#dcedc8}.ibo-pill.ibo-is-inactive{color:#9c4221;background-color:floralwhite}.ibo-pill{--ibo-main-color--100: #ebf8ff;--ibo-main-color--900: #2a4265;max-width:240px;margin-top:4px;margin-bottom:4px;padding:6px 10px;border-radius:3px;color:var(--ibo-main-color--900);background-color:var(--ibo-main-color--100)}.ibo-pill:hover,.ibo-pill:active{color:inherit}.ibo-prop--apply{width:calc(32px + 12px);padding-left:12px}.ibo-prop--apply.ui-state-error:after{color:#404b5a;content:"";vertical-align:bottom}.ibo-prop--apply.ui-state-error>span{display:none !important}.ibo-prop--cancel{width:calc(32px + 8px);padding-left:8px}.ibo-prop--apply,.ibo-prop--cancel{height:28px}.ibo-prop--apply>span,.ibo-prop--cancel>span{display:block;height:28px;width:32px;text-align:center}.ibo-prop--apply>span>div,.ibo-prop--cancel>span>div{display:inline-flex;justify-content:center;align-items:center;width:100%;height:100%}.ibo-spinner.ibo-is-inline{display:inline-block}.ibo-spinner.ibo-is-inline>*{display:inline-block}.ibo-spinner.ibo-is-small,.ibo-spinner.ibo-is-medium,.ibo-spinner.ibo-is-large{display:flex;flex-direction:column}.ibo-spinner.ibo-is-small>.ibo-spinner--icon,.ibo-spinner.ibo-is-medium>.ibo-spinner--icon,.ibo-spinner.ibo-is-large>.ibo-spinner--icon{align-self:center;color:#929fb1}.ibo-spinner.ibo-is-small>.ibo-spinner--description,.ibo-spinner.ibo-is-medium>.ibo-spinner--description,.ibo-spinner.ibo-is-large>.ibo-spinner--description{align-self:center;color:#404b5a}.ibo-spinner.ibo-is-small>.ibo-spinner--description{margin-top:4px}.ibo-spinner.ibo-is-medium>.ibo-spinner--description{margin-top:8px}.ibo-spinner.ibo-is-large>.ibo-spinner--description{margin-top:16px}.ibo-title{color:#212934;padding:12px 0}.ibo-title--icon{width:90px;height:90px;min-width:90px;min-height:90px;overflow:hidden}.ibo-title--icon>.ibo-title--icon-level-2{width:80px;height:80px;min-width:80px;min-height:80px}.ibo-title--icon>.ibo-title--icon-level-3{width:70px;height:70px;min-width:70px;min-height:70px}.ibo-title--icon-img,.ibo-title--icon-background{width:100%;height:100%;object-position:center;object-fit:contain;background-size:contain}.ibo-title--icon-img--must-contain,.ibo-title--icon-background--must-contain{object-fit:contain;background-size:contain}.ibo-title--icon-img--must-cover,.ibo-title--icon-background--must-cover{object-fit:cover;background-size:cover}.ibo-title--icon-img--must-zoomout,.ibo-title--icon-background--must-zoomout{width:66.67%;height:66.67%}.ibo-title--subtitle{margin-top:2px;margin-bottom:2px;flex-wrap:wrap}.ibo-title-for-dashlet{padding-top:2em}.ibo-title-for-dashlet--content{background-color:white;border-radius:5px;border:1px solid;border-color:#ccd4db;padding-bottom:1em}.ibo-title-separator{border-radius:5px 5px 0 0;border-color:#3182ce;color:#3182ce;background-color:#3182ce;border:3px solid;margin:0;padding:0}:root{--ibo-datatable-panel--table-spacing: 48px}.ibo-datatable--toolbar{display:flex;justify-content:space-between;align-items:center;padding:0 6px;color:#404b5a}.ibo-datatable--toolbar:first-child{margin-bottom:18px}.ibo-datatable--toolbar:not(:first-child){margin-top:18px}.ibo-datatable--toolbar-left>*:not(:first-child),.ibo-datatable--toolbar-right>*:not(:first-child){margin-left:1rem}.ibo-datatable-header{color:#212934}.ibo-datatable-panel>.ibo-panel--body{padding:32px 0 24px}.ibo-datatable--selection-validation-buttons-toolbar{clear:both;margin-top:10px}.ibo-list-column{max-height:150px;overflow-y:auto}.ibo-sort-order::after{color:#dd6c20}.ibo-sort-order.ibo-is-descending::after{content:""}.ibo-sort-order.ibo-is-ascending::after{content:""}.ibo-sort-order.ibo-is-none::after{content:""}.itop-fieldsorter>.selected{background-color:#bee3f8}.ibo-datatable tbody>tr{transition:background-color 300ms linear}.ibo-datatable tbody>tr:hover,.ibo-datatable tbody>tr.selected:hover{cursor:pointer;background-color:#feebc8}.ibo-datatable tbody>tr.selected{background-color:#fbd38d}.ibo-datatable tbody>tr .ibo-datatable--row-actions-toolbar{justify-content:end}.ibo-datatable tbody>tr>[data-attribute-type="AttributeHTML"],.ibo-datatable tbody>tr>[data-attribute-type="AttributeText"],.ibo-datatable tbody>tr>[data-attribute-type="AttributeLongText"]{max-width:100%;overflow:auto}.ibo-datatable--selected-count,.ibo-datatable--result-count{padding-right:0.2em;padding-left:0.1em}.ibo-datatable[data-status="loading"]{margin-top:18px}.ibo-datatable[data-status="loading"] td,.ibo-datatable[data-status="loading"] th{position:relative;padding:10px 12px}.ibo-datatable[data-status="loading"] tr:nth-child(even){background-color:#f2f2f2}.ibo-datatable[data-status="loading"] th{border-bottom:1px solid #ccd4db}.ibo-datatableconfig--attributes-panel .ibo-multi-column .ibo-column:first-child{margin:8px 0;max-height:150px;overflow-y:scroll}.ibo-datatableconfig--attributes-panel--per-page--input{margin:0 4px;max-width:4em;display:initial}.ibo-datatableconfig--settings-panel .ibo-panel--body{display:flex;flex-direction:row}.ibo-datatableconfig--settings-panel--options-container{flex-grow:1}.ibo-datatableconfig--settings-panel--option{display:flex;flex-direction:row;align-items:first baseline;margin-right:4px}.ibo-prop-header{padding-bottom:14px}.help-text{padding:1px 5px;background-color:#d7e3f8;border:1px solid #c6e7f5;border-radius:5px;margin:5px 0;font-size:0.9em}.form-error ul{padding:1px 5px;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:5px;margin:5px 0;font-size:0.9em}.subform{background-color:#efefef;border-radius:5px;padding:10px}.form-buttons{margin:20px 0}.form select{padding:0;overflow-y:auto}.form select option{height:30px;display:flex;align-items:center}.turbo-refreshing{opacity:0.5}.ibo-field legend{margin-top:24px}collection-entry-element{margin-top:8px;display:block;padding:10px 10px;background-color:#f5f5f5;border-radius:5px}.ts-control{height:auto;min-height:30px}.ibo-form-actions>.ibo-button>span,.ui-dialog .ibo-form-actions>.ui-button>span,.ibo-form-actions>.ui-datepicker-current>span,.ibo-form-actions>.ui-datepicker-close>span{margin-right:5px}.ibo-form textarea{resize:vertical}.ibo-fieldset~.ibo-fieldset:not(.ibo-column),fieldset~.ibo-fieldset:not(.ibo-column),.ibo-fieldset~fieldset:not(.ibo-column){margin-top:48px}.ibo-multi-column~.ibo-fieldset,.ibo-multi-column~fieldset{margin-top:48px}.ibo-fieldset-legend,.ibo-dashboard-editor--properties-subtitle,.ibo-dashboard--available-dashlet--title,.ibo-dashlet--properties--title,legend{width:100%;margin-bottom:16px;padding-bottom:4px;border-bottom:2px solid #aebecd}.ibo-field{}.ibo-field:not([data-attribute-type="AttributeBlob"], [data-attribute-type="AttributeFile"], [data-attribute-type="AttributeImage"], [data-attribute-type="AttributeCustomFields"], [data-attribute-type="AttributeTagSet"], [data-attribute-type="AttributeEnumSet"], [data-attribute-type="AttributeLinkedSet"], [data-attribute-type="AttributeLinkedSetIndirect"], [data-attribute-type="AttributeClassAttCodeSet"], [data-attribute-type="AttributeQueryAttCodeSet"], .ibo-input-file-select--container){}.ibo-field:not([data-attribute-type="AttributeBlob"], [data-attribute-type="AttributeFile"], [data-attribute-type="AttributeImage"], [data-attribute-type="AttributeCustomFields"], [data-attribute-type="AttributeTagSet"], [data-attribute-type="AttributeEnumSet"], [data-attribute-type="AttributeLinkedSet"], [data-attribute-type="AttributeLinkedSetIndirect"], [data-attribute-type="AttributeClassAttCodeSet"], [data-attribute-type="AttributeQueryAttCodeSet"], .ibo-input-file-select--container) .ibo-field--value{word-break:break-word;white-space:inherit}.ibo-field:not([data-attribute-type="AttributeBlob"], [data-attribute-type="AttributeFile"], [data-attribute-type="AttributeImage"], [data-attribute-type="AttributeCustomFields"], [data-attribute-type="AttributeTagSet"], [data-attribute-type="AttributeEnumSet"], [data-attribute-type="AttributeLinkedSet"], [data-attribute-type="AttributeLinkedSetIndirect"], [data-attribute-type="AttributeClassAttCodeSet"], [data-attribute-type="AttributeQueryAttCodeSet"], .ibo-input-file-select--container) .ibo-field--value *:not(input, select, textarea){word-break:break-word;white-space:inherit}.ibo-field:not([data-attribute-type="AttributeBlob"], [data-attribute-type="AttributeFile"], [data-attribute-type="AttributeImage"], [data-attribute-type="AttributeCustomFields"], [data-attribute-type="AttributeTagSet"], [data-attribute-type="AttributeEnumSet"], [data-attribute-type="AttributeLinkedSet"], [data-attribute-type="AttributeLinkedSetIndirect"], [data-attribute-type="AttributeClassAttCodeSet"], [data-attribute-type="AttributeQueryAttCodeSet"], .ibo-input-file-select--container) .ibo-field--value pre{white-space:break-spaces}.ibo-field[data-attribute-type="AttributeImage"]>.ibo-field--value{display:grid}.ibo-field[data-attribute-type="AttributeImage"]>.ibo-field--value>span{display:inherit}.ibo-field[data-attribute-type="AttributeHTML"][data-attribute-flag-read-only="true"],.ibo-field[data-attribute-type="AttributeText"][data-attribute-flag-read-only="true"],.ibo-field[data-attribute-type="AttributeLongText"][data-attribute-flag-read-only="true"]{display:grid}.ibo-field[data-attribute-type="AttributeHTML"][data-attribute-flag-read-only="true"]>.ibo-field--value,.ibo-field[data-attribute-type="AttributeText"][data-attribute-flag-read-only="true"]>.ibo-field--value,.ibo-field[data-attribute-type="AttributeLongText"][data-attribute-flag-read-only="true"]>.ibo-field--value{max-width:100%;overflow:auto}.ibo-field-large{display:block}.ibo-field-large .ibo-field--label{position:relative;display:flex;align-items:center;max-width:initial;width:100%}.ibo-field-large .ibo-field-small .ibo-field--label{display:table-cell;vertical-align:top;padding-right:10px;min-width:100px;max-width:145px;width:30%}.ibo-field-large .ibo-field--value{margin-top:2px}.ibo-field-large .ibo-field--value>*{--ibo-scrollbar--scrollbar-track-background-color: #f2f2f2}.ibo-field-large.ibo-is-fullscreen{background-color:white}.ibo-field-large.ibo-is-fullscreen .ibo-field--label{position:fixed;width:100%;min-width:initial;max-width:initial;padding:4px 8px;background-color:#f8f9fa;border-bottom:1px solid #ccd4db}.ibo-field-large.ibo-is-fullscreen .ibo-field--value{padding:36px 8px 4px 8px}.ibo-field-large.ibo-is-fullscreen .ibo-field--value>*{height:initial !important;width:initial !important}.ibo-field-small{display:table;width:100%}.ibo-field-small .ibo-field--label{display:table-cell;vertical-align:top;padding-right:10px}.ibo-field--fullscreen-toggler{width:20px;height:20px;border-radius:5px;cursor:pointer}.ibo-field--fullscreen-toggler:hover{background-color:#f2f2f2}.ibo-field--label{min-width:100px;max-width:145px;width:30%;word-break:break-word}.ibo-field--label-small .ibo-field--label{width:20em}.ibo-field--value{width:100%;color:#404b5a}.ibo-field--value .HTML table{table-layout:fixed;width:100%}.ibo-field--label>.ibo-field--comments{flex:auto}.ibo-fieldset-legend>.ibo-field--comments,.ibo-dashboard-editor--properties-subtitle>.ibo-field--comments,.ibo-dashboard--available-dashlet--title>.ibo-field--comments,.ibo-dashlet--properties--title>.ibo-field--comments,legend>.ibo-field--comments{padding-bottom:2px;font-size:1.17rem}.ibo-field--comments{display:table-cell;vertical-align:top;width:5em}.ibo-field--comments>input[type="checkbox"]{margin-left:5px;float:right}.ibo-field--comments>.multi_values,.ibo-field--comments>.mono_value,.ibo-field--comments>.ibo-field--comments--synchro{float:right}.mailto,.tel{white-space:nowrap}.mailto .text_decoration,.tel .text_decoration{margin-right:0.5rem;font-size:0.9em}.object-ref-icon.text_decoration,.object-ref-icon-disabled.text_decoration{margin-right:0.5rem}.ibo-field--enable-bulk,.ibo-field--comments--synchro{display:inline;padding:2px 5px;margin:0 0 0 5px;height:calc(100% - 5px);border-radius:5px;font-weight:bold;white-space:nowrap}.ibo-field--enable-bulk--checkbox{margin-left:8px}.ibo-toolbar{display:flex;align-items:center}.ibo-toolbar.ibo-toolbar--action{position:relative}.ibo-toolbar.ibo-toolbar--button{margin-top:16px}.ibo-toolbar-spacer{flex-grow:1}.ibo-toolbar-vertical-separator{display:inline-flex;border-right:1px solid #aebecd;width:1px;height:16px;margin:0 0.75rem}.search_box{box-sizing:border-box;position:relative;z-index:1100;text-align:center}.search_box *{box-sizing:border-box}.search_form_handler{}.search_form_handler input[type="text"],.search_form_handler select{padding:1px 2px}.search_form_handler:not(.closed) .sf_title .sft_short{display:none}.search_form_handler:not(.closed) .sf_title .sft_toggler{transform:rotateX(180deg);transition:transform 0.5s linear}.search_form_handler.closed{margin-bottom:0.5em;width:150px;overflow:hidden;border-radius:4px}.search_form_handler.closed .sf_criterion_area{height:0;opacity:0;padding:0}.search_form_handler.closed .sf_title{padding:6px 8px;text-align:center;font-size:12px}.search_form_handler.closed .sf_title .sft_long{display:none}.search_form_handler.closed .sf_title .sft_hint,.search_form_handler.closed .sf_title .sfobs_hint{display:none}.search_form_handler:not(.no_auto_submit) .sft_hint{display:none}.search_form_handler:not(.no_auto_submit) .sfc_fg_apply{display:none}.search_form_handler.no_auto_submit .sfc_fg_search{display:none}.search_form_handler.no_auto_submit .sft_hint{display:inline-block}.search_form_handler:not(.hide_obsolete_data) .sfobs_hint{display:none}.search_form_handler.hide_obsolete_data .sfobs_hint{display:inline-block}.search_form_handler.hide_obsolete_data.no_auto_submit .sfobs_hint{margin-left:30px}.search_form_handler .sf_message{display:none;margin:8px 8px 0 8px;border-radius:0px}.search_form_handler .sf_criterion_area{padding:8px 8px 3px 8px}.search_form_handler .sf_criterion_area .sf_criterion_row:not(:first-child){margin-top:20px}.search_form_handler .sf_criterion_area .sf_criterion_row:not(:first-child)::before{content:"";position:absolute;top:-12px;left:0px;width:100%;border-top:1px solid #e1e7ec}.search_form_handler .sf_criterion_area .sf_criterion_row:not(:first-child)::after{content:"or";position:absolute;top:-20px;left:8px;padding-left:5px;padding-right:5px;color:#929fb1;background-color:white}.search_form_handler .sf_criterion_area .sf_criterion_row .sf_criterion_group{display:inline}.search_form_handler .sf_criterion_area .sf_criterion_row .sf_criterion_group .sfc_fg_button,.search_form_handler .sf_criterion_area .sf_criterion_row .sf_criterion_group .sfc_header{border:1px solid #d5dde5;border-radius:3px}.search_form_handler .sf_criterion_area .search_form_criteria,.search_form_handler .sf_criterion_area .sf_more_criterion,.search_form_handler .sf_criterion_area .sf_button{position:relative;display:inline-block;margin-right:10px;margin-top:3px;margin-bottom:3px;vertical-align:top}.search_form_handler .sf_criterion_area .search_form_criteria.opened,.search_form_handler .sf_criterion_area .sf_more_criterion.opened,.search_form_handler .sf_criterion_area .sf_button.opened{margin-bottom:0}.search_form_handler .sf_criterion_area .search_form_criteria.opened .sfc_header,.search_form_handler .sf_criterion_area .search_form_criteria.opened .sfm_header,.search_form_handler .sf_criterion_area .sf_more_criterion.opened .sfc_header,.search_form_handler .sf_criterion_area .sf_more_criterion.opened .sfm_header,.search_form_handler .sf_criterion_area .sf_button.opened .sfc_header,.search_form_handler .sf_criterion_area .sf_button.opened .sfm_header{border-bottom:none !important;padding-bottom:13px}.search_form_handler .sf_criterion_area .search_form_criteria>*,.search_form_handler .sf_criterion_area .sf_more_criterion>*,.search_form_handler .sf_criterion_area .sf_button>*{padding:7px 8px;vertical-align:top;border:solid 1px #d5dde5;border-radius:3px}.search_form_handler .sf_criterion_area .search_form_criteria .sfm_content,.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content,.search_form_handler .sf_criterion_area .sf_button .sfm_content{position:absolute;z-index:-1;min-width:100%;left:0px;margin-top:-1px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_fg_buttons,.search_form_handler .sf_criterion_area .search_form_criteria .sfm_buttons,.search_form_handler .sf_criterion_area .sf_more_criterion .sfc_fg_buttons,.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_buttons,.search_form_handler .sf_criterion_area .sf_button .sfc_fg_buttons,.search_form_handler .sf_criterion_area .sf_button .sfm_buttons{white-space:nowrap}.search_form_handler .sf_criterion_area .sf_more_criterion,.search_form_handler .sf_criterion_area .sf_button{min-width:34px;text-align:center}.search_form_handler .sf_criterion_area .search_form_criteria{}.search_form_handler .sf_criterion_area .search_form_criteria.locked{background-color:#d5dde5}.search_form_handler .sf_criterion_area .search_form_criteria.locked .sfc_title{user-select:none;cursor:initial}.search_form_handler .sf_criterion_area .search_form_criteria.draft .sfc_header,.search_form_handler .sf_criterion_area .search_form_criteria.draft .sfc_form_group{border-style:dashed;border-color:#929fb1}.search_form_handler .sf_criterion_area .search_form_criteria.draft .sfc_title{font-style:italic}.search_form_handler .sf_criterion_area .search_form_criteria.opened{z-index:1}.search_form_handler .sf_criterion_area .search_form_criteria.opened .sfc_toggle{transform:rotateX(-180deg)}.search_form_handler .sf_criterion_area .search_form_criteria.opened .sfc_form_group{display:flex;flex-direction:column;margin-top:-1px;z-index:-1}.search_form_handler .sf_criterion_area .search_form_criteria.opened_left .sfc_form_group{left:auto;right:0px}.search_form_handler .sf_criterion_area .search_form_criteria:not(:last-of-type){margin-right:12px}.search_form_handler .sf_criterion_area .search_form_criteria>*{background-color:#f2f2f2;color:#212934}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_toggle,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_close{position:absolute;top:7px;color:#dd6c20}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_locked{position:absolute;top:9px;color:#aebecd}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_toggle{display:inline-block;right:23px;transition:all 0.3s ease-in-out}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_close,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_locked{right:7px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_title{max-width:240px;padding-right:30px;white-space:nowrap;overflow-x:hidden;text-overflow:ellipsis;cursor:pointer}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_title .sfc_values{font-weight:bold}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group{position:absolute;display:none;max-width:450px;width:max-content;max-height:calc(min(512px, 50vh));overflow-x:auto;overflow-y:hidden}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators{display:flex;flex-direction:column;overflow:auto;min-height:0;font-size:12px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator.force_hide{display:none !important}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator>label{line-height:20px;white-space:nowrap}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator>label>*{display:inline-block;vertical-align:middle}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_radio{width:12px;margin:0;margin-right:7px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_name{width:96px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"]{display:unset;width:160px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices{display:flex;flex-direction:column;height:100%}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices label>input{vertical-align:text-top;margin-left:0;margin-right:8px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper{overflow-y:auto;margin:0 -8px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list{text-align:left}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list.sfc_opc_mc_items_selected{position:relative;padding-top:5px;margin-top:5px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list.sfc_opc_mc_items_selected::before{content:"";position:absolute;border-top:1px solid #d5dde5;width:calc(100% - 12px);margin-left:6px;top:0px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list .sfc_opc_mc_placeholder{padding:15px 8px;font-style:italic;text-align:center}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list .sfc_opc_mc_item{padding:4px 8px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list .sfc_opc_mc_item:hover{background-color:#e1e7ec}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items .sfc_opc_mc_items_list .sfc_opc_mc_item label{display:inline-block;width:100%}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items_hint{margin-top:15px;margin-bottom:15px;padding-left:9px;padding-right:9px;color:#6e7a8a;font-size:10px;font-style:italic}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_opc_multichoices .sfc_opc_mc_items_wrapper .sfc_opc_mc_items_hint>span{margin-right:0.5em;font-style:italic}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_search,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_apply,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_cancel{margin-top:8px;font-size:1rem}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_search,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_apply{margin-right:5px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_more,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_less{position:absolute;bottom:7px;right:0px;cursor:pointer;color:#2c5382;font-size:10px;font-weight:bold;border:none;background-color:transparent}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_more>span,.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_less>span{margin-left:3px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operator:not(:first-of-type),.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operator:first-of-type .sfc_op_radio{display:none}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_less{display:none}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_more{display:inline-block}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .sfc_fg_operator{margin-bottom:3px}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .sfc_fg_operator:last-of-type{margin-bottom:0}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .sfc_fg_operator:not(:first-of-type),.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .sfc_fg_operator:first-of-type .sfc_op_radio{display:inherit}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .sfc_fg_less{display:inline-block}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .sfc_fg_more{display:none}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group.advanced .hide_on_advanced{display:none}.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group:not(.advanced) .hide_on_less{display:none}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_raw>*{border-color:transparent}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_raw .sfc_title{cursor:initial;padding-right:20px}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_raw .sfc_form_group{display:none}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_enum .sfc_form_group .sfc_fg_operator_in{display:flex;flex-direction:column;height:100%;min-height:0}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_enum .sfc_form_group .sfc_fg_operator_in>label{display:flex;height:100%;min-height:0;width:100%;line-height:initial;white-space:nowrap}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_enum .sfc_form_group .sfc_fg_operator_in>label .sfc_op_content{width:100%}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_tag_set .sfc_form_group .sfc_fg_operator_in>label{display:inline-block;width:100%;line-height:initial;white-space:nowrap}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_tag_set .sfc_form_group .sfc_fg_operator_in>label .sfc_op_content{width:100%}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_numeric .sfc_fg_operators .sfc_fg_operator.sfc_fg_operator_between .sfc_op_content_from_outer{display:inline}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_numeric .sfc_fg_operators .sfc_fg_operator.sfc_fg_operator_between .sfc_op_content_until_outer{display:inline;margin-left:5px}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_numeric .sfc_fg_operators .sfc_fg_operator.sfc_fg_operator_between label.sfc_op_content_from_label,.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_numeric .sfc_fg_operators .sfc_fg_operator.sfc_fg_operator_between label.sfc_op_content_until_label{width:45px;display:inline-block}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_numeric .sfc_fg_operators .sfc_fg_operator.sfc_fg_operator_between input[type="text"]{width:77px}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date_time .sfc_form_group.advanced .sfc_fg_operator_between,.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date .sfc_form_group.advanced .sfc_fg_operator_between{margin-bottom:5px}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date_time .sfc_fg_operator_between_days input,.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date .sfc_fg_operator_between_days input{width:135px}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date_time button.ui-datepicker-trigger,.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date button.ui-datepicker-trigger{background:none;border:none;height:100%;padding:2px}.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date_time button.ui-datepicker-trigger img,.search_form_handler .sf_criterion_area .search_form_criteria.search_form_criteria_date button.ui-datepicker-trigger img{vertical-align:middle}.search_form_handler .sf_criterion_area .sf_more_criterion.opened{z-index:2}.search_form_handler .sf_criterion_area .sf_more_criterion.opened .sfm_content{display:inherit}.search_form_handler .sf_criterion_area .sf_more_criterion.opened_left .sfm_content{left:auto;right:0px}.search_form_handler .sf_criterion_area .sf_more_criterion>*{background-color:white;color:#37474f}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_toggler .sfm_tg_title{margin-right:7px}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_toggler .sfm_tg_icon{color:#dd6c20}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content{display:none;min-width:200px}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content .sfm_lists{margin:0 -8px;padding:0 8px;max-height:400px;overflow-x:hidden;overflow-y:auto}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content .sfm_lists .sfl_items>li:hover{background-color:#e1e7ec}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content .sfm_buttons{display:none}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content .sfm_buttons button{margin-top:8px;margin-right:5px;padding:3px 6px;font-size:11px}.search_form_handler .sf_criterion_area .sf_more_criterion .sfm_content .sfm_buttons button:last-of-type{margin-right:0}.search_form_handler .sf_criterion_area .sf_button{cursor:pointer}.search_form_handler .sf_criterion_area .sf_button>*{background-color:white;color:#dd6c20}.search_form_handler .sf_list:not(:first-of-type) .sfl_title{border-top:1px solid #ccd4db;padding-top:8px;margin-top:5px}.search_form_handler .sf_list .sfl_title{font-weight:bold}.search_form_handler .sf_list .sfl_items{margin:5px -8px 0 -8px;padding:0;text-align:left}.search_form_handler .sf_list .sfl_items>li{padding:4px 8px;list-style:none;white-space:nowrap}.search_form_handler .sf_list .sfl_items>li:hover{background-color:#e1e7ec}.search_form_handler .sf_list .sfl_items>li.sfl_i_placeholder{font-style:italic;opacity:0.8}.search_form_handler .sf_list .sfl_items>li>label{display:inline-block;width:100%}.search_form_handler .sf_list .sfl_items>li>label>*{vertical-align:middle}.search_form_handler .sf_list .sfl_items>li>label>input[type="checkbox"]{margin-left:0;margin-right:8px}.search_form_handler .sf_filter{position:relative;margin-top:8px;margin-bottom:8px}.search_form_handler .sf_filter input,.search_form_handler .sf_filter button,.search_form_handler .sf_filter .sff_picto{vertical-align:middle;height:22px}.search_form_handler .sf_filter input,.search_form_handler .sf_filter button{border:1px solid #ABABAB}.search_form_handler .sf_filter input{width:100% !important}.search_form_handler .sf_filter button{width:23px;background-color:white;color:#dd6c20;font-size:10px}.search_form_handler .sf_filter button:first-of-type{margin-left:5px}.search_form_handler .sf_filter button:not(:first-of-type){border-left:transparent}.search_form_handler .sf_filter .sff_input_wrapper{position:relative}.search_form_handler .sf_filter .sff_input_wrapper input[type="text"]{display:unset}.search_form_handler .sf_filter .sff_input_wrapper .sff_picto{position:absolute;right:7px;top:3px;user-select:none;color:#404b5a}.search_form_handler .sf_filter .sff_input_wrapper .sff_reset{display:none}.search_form_handler .sf_filter .sff_input_wrapper input::-ms-clear{display:none}.search_form_handler .sf_filter.sf_with_buttons input{width:calc(100% - 28px) !important;min-width:120px}.sft_hint,.sfobs_hint,.sft_toggler{margin-left:8px;color:#404b5a}.sf_results_placeholder{margin-top:24px;text-align:center}.sf_results_placeholder button{margin-top:8px}.sf_results_placeholder button>span{margin-right:0.5em}.ibo-search-form-panel{z-index:3;margin-bottom:8px}.ibo-search-form-panel .ibo-panel--body{padding:18px 14px 10px;overflow:initial}.ibo-search-form-panel .ibo-panel--body::before{border-radius:5px 5px 0 0}#ibo-main-content .search_form_handler .sf_criterion_area{padding:0}.sfm_tg_title{display:none}.ibo-criterion-group:empty~.sf_more_criterion .sfm_tg_title{display:unset}.sf_results_area{z-index:1;margin-bottom:300px}.ibo-search-form-panel .ibo-panel--body.ibo-is-sticking{position:fixed;border-radius:0;border-bottom-color:transparent}.ibo-datatable-panel.ibo-is-sticking .ibo-panel--header,.ibo-datatable-panel.ibo-is-sticking .ibo-object-summary--header{z-index:0}.ibo-datatable-panel.ibo-is-sticking .ibo-datatable--toolbar{position:fixed;z-index:2;padding-bottom:4px;background-color:white;border-left:1px solid #ccd4db;border-right:1px solid #ccd4db}.ibo-datatable-panel.ibo-is-sticking .dataTables_scrollHead{position:fixed !important;z-index:2;background-color:white;border-left:1px solid #ccd4db !important;border-right:1px solid #ccd4db !important}.ibo-field-badge{display:inline-flex;align-items:baseline;margin:0;padding:4px 10px;border-radius:3px;background-color:var(--ibo-main-color);color:var(--ibo-complementary-color)}.ibo-field-badge--decoration+.ibo-field-badge--label{margin-left:0.5rem}.ibo-input-file-select--container .ibo-input-file-select .ibo-input-file-select--file-input{display:none}.ibo-input-file-select--container .ibo-input-file-select .ibo-input-file-select--file-name{margin-left:10px}.ibo-medallion-icon{display:flex;padding:13px 0}.ibo-medallion-icon--image{height:48px;width:48px;padding:2px;border-radius:100%;background-color:#bee3f8}.ibo-medallion-icon--description{display:inline-block;padding-left:8px}@keyframes decreaseHighlight{0%{height:100%}8%{border-radius:0 0 0 3px}100%{height:0}}.ibo-toast{display:inline-flex;position:fixed;align-items:center;max-width:calc(50% - 20px);padding:12px 8px 12px 16px;border-radius:3px;box-shadow:0 2px 4px rgba(0, 0, 0, 0.12), 0 3px 6px rgba(0, 0, 0, 0.15);transition:all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);z-index:2147483647}.ibo-toast::before{display:block;position:absolute;top:0;left:0;content:"";width:4px;height:100%;top:initial;bottom:0;border-radius:3px 0 0 3px}.ibo-toast.ibo-is-auto-closeable::before{animation:decreaseHighlight 5s linear forwards}.ibo-toast:hover::before{animation:none}.ibo-badge{display:inline-block;white-space:nowrap;padding:2px 4px;border-radius:4px}.ibo-badge.ibo-is-primary{background-color:floralwhite;color:#7b341e}.ibo-badge.ibo-is-secondary,.ui-dialog .ibo-badge.ui-button,.ibo-badge.ui-datepicker-current,.ibo-badge.ui-datepicker-close{background-color:#f8f9fa;color:#212934}.ibo-badge.ibo-is-neutral,.ui-dialog .ibo-badge.ui-button.ui-dialog-titlebar-close{background-color:#f8f9fa;color:#212934}.ibo-badge.ibo-is-information{background-color:#ebf8ff;color:#2a4265}.ibo-badge.ibo-is-success{background-color:#dcedc8;color:#33691e}.ibo-badge.ibo-is-failure{background-color:#fce8e8;color:#742a2a}.ibo-badge.ibo-is-warning{background-color:floralwhite;color:#7b341e}.ibo-badge.ibo-is-danger{background-color:#fce8e8;color:#742a2a}.ibo-badge.ibo-is-grey{background-color:#f8f9fa;color:#212934}.ibo-badge.ibo-is-blue-grey{background-color:#cfd8dc;color:#263238}.ibo-badge.ibo-is-blue{background-color:#ebf8ff;color:#2a4265}.ibo-badge.ibo-is-cyan{background-color:#c9eef2;color:#006164}.ibo-badge.ibo-is-green{background-color:#dcedc8;color:#33691e}.ibo-badge.ibo-is-orange{background-color:floralwhite;color:#7b341e}.ibo-badge.ibo-is-red{background-color:#fce8e8;color:#742a2a}.ibo-badge.ibo-is-pink{background-color:#fff5f7;color:#702459}:root{}.ibo-navigation-menu{position:relative;height:100vh}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--square-company-logo{display:none}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--full-company-logo{display:flex}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--silo-selection{display:inline-block}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--silo-visual-hint{display:none}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body{width:310px}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--toggler-bar:nth-child(1){top:4px;left:7px;width:14px;transform:rotateZ(-45deg)}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--toggler-bar:nth-child(2){top:8px;left:7px;width:0;opacity:0}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--toggler-bar:nth-child(3){top:12px;left:7px;width:14px;transform:rotateZ(45deg)}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--menu-group:not(.ibo-is-active):active{border-radius:16px}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part{padding:24px 0 12px}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--notifications .ibo-navigation-menu--notifications-toggler{display:none}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--user-info{height:100%}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--user-info .ibo-navigation-menu--user-welcome-message,.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--user-info .ibo-navigation-menu--user-notifications,.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--user-info .ibo-navigation-menu--user-organization{display:block}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--user-info .ibo-navigation-menu--user-picture{margin-top:-60px;width:72px;height:72px;border:solid 3px #263238}.ibo-navigation-menu.ibo-is-expanded .ibo-navigation-menu--body .ibo-navigation-menu--bottom-part .ibo-navigation-menu--user-info .ibo-navigation-menu--user-picture .ibo-navigation-menu--user-picture--image{max-width:72px;max-height:72px}.ibo-navigation-menu.ibo-is-active .ibo-navigation-menu--drawer{right:calc(-1 * 312px)}.ibo-navigation-menu.ibo-is-filtered .ibo-navigation-menu--menu-filter-clear{display:block}.ibo-navigation-menu.ibo-is-filtered .ibo-navigation-menu--menu-nodes{margin-bottom:48px}.ibo-navigation-menu.ibo-is-filtered .ibo-navigation-menu--menu-nodes .ibo-navigation-menu--menu-nodes-title{margin-bottom:8px}.ibo-navigation-menu--body,.ibo-navigation-menu--drawer{height:100vh}.ibo-navigation-menu--body{z-index:1;display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;height:100vh;width:60px;background-color:#263238;transition:width 0.1s ease-in-out}.ibo-navigation-menu--top-part{z-index:2;min-height:120px;padding:12px 16px;overflow:hidden}.ibo-navigation-menu--middle-part{z-index:1;flex-grow:1;overflow-y:auto;padding:24px 16px 16px;scrollbar-width:thin;scrollbar-color:#d5dde5 rgba(255, 255, 255, 0)}.ibo-navigation-menu--middle-part::-webkit-scrollbar{width:5px}.ibo-navigation-menu--middle-part::-webkit-scrollbar-track{background-color:rgba(255, 255, 255, 0)}.ibo-navigation-menu--middle-part::-webkit-scrollbar-thumb{background-color:#d5dde5}.ibo-navigation-menu--bottom-part{z-index:2;padding-top:20px;padding-bottom:16px;height:126px;background-color:#404b5a;justify-content:space-between;flex-direction:column}.ibo-navigation-menu--toggler,.ibo-navigation-menu--menu-group{margin:calc(-1 * 10px) calc(-1 * 8px);padding:10px 8px;border-radius:5px}.ibo-navigation-menu--square-company-logo{display:flex;width:38px;height:38px;margin:0 -5px 44px}.ibo-navigation-menu--square-company-logo>img{object-fit:contain}.ibo-navigation-menu--full-company-logo{display:none;width:310px;height:70px;margin:0 0 12px -16px}.ibo-navigation-menu--full-company-logo>img{object-fit:contain;margin:0 auto}.ibo-navigation-menu--toggler{position:relative;display:inline-flex;width:44px}.ibo-navigation-menu--toggler:hover,.ibo-navigation-menu--toggler:active{background-color:#455a64}.ibo-navigation-menu--toggler:hover .ibo-navigation-menu--toggler-bar,.ibo-navigation-menu--toggler:active .ibo-navigation-menu--toggler-bar{background-color:white}.ibo-navigation-menu--toggler-icon{position:relative;display:flex;height:20px;width:28px}.ibo-navigation-menu--toggler-bar{position:absolute;display:block;height:3px;width:100%;opacity:1;transition:all 0.2s linear;background-color:#d5dde5}.ibo-navigation-menu--toggler-bar:nth-child(1){top:0}.ibo-navigation-menu--toggler-bar:nth-child(2){top:8px}.ibo-navigation-menu--toggler-bar:nth-child(3){top:16px}.ibo-navigation-menu--silo-selection{position:absolute;display:none;width:70%;margin-left:15px}.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ibo-input,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ibo-input,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ui-autocomplete-input,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ui-multiselect,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .dataTables_length select,.dataTables_length .ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider select,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ui_tpicker_hour_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ui_tpicker_minute_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ui_tpicker_second_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider select.ibo-input-select-placeholder,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ibo-datatableconfig--attributes-panel--per-page--input,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider input[type="text"],.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider input[type="text"],.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ibo-input,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ui-autocomplete-input,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ui-multiselect,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .dataTables_length select,.dataTables_length .ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider select,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ui_tpicker_hour_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ui_tpicker_minute_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ui_tpicker_second_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider select.ibo-input-select-placeholder,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ibo-datatableconfig--attributes-panel--per-page--input,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider input[type="text"],.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider input[type="text"],.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ibo-input,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ui-autocomplete-input,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ui-multiselect,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .dataTables_length select,.dataTables_length .ibo-navigation-menu--silo-selection .ui_tpicker_second_slider select,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ui_tpicker_hour_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ui_tpicker_minute_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ui_tpicker_second_slider>select,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider select.ibo-input-select-placeholder,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ibo-datatableconfig--attributes-panel--per-page--input,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .ibo-navigation-menu--silo-selection .ui_tpicker_second_slider input[type="text"],.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .ibo-navigation-menu--silo-selection .ui_tpicker_second_slider input[type="text"],.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ui-autocomplete-input,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ui-multiselect,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .dataTables_length select,.dataTables_length .ibo-navigation-menu--silo-selection .ibo-input-wrapper select,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ui_tpicker_hour_slider>select,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ui_tpicker_minute_slider>select,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ui_tpicker_second_slider>select,.ibo-navigation-menu--silo-selection .ibo-input-wrapper select.ibo-input-select-placeholder,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ibo-datatableconfig--attributes-panel--per-page--input,.ibo-navigation-menu--silo-selection .ibo-input-wrapper .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content .ibo-navigation-menu--silo-selection .ibo-input-wrapper input[type="text"],.ibo-navigation-menu--silo-selection .ibo-input-wrapper .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper .ibo-navigation-menu--silo-selection .ibo-input-wrapper input[type="text"]{padding-right:38px;overflow:hidden}.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ibo-input-select-autocomplete,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ibo-input-select-autocomplete,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ibo-input-select-autocomplete,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ibo-input-select-autocomplete{padding-right:60px}.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ibo-input-select-autocomplete~.ibo-input-select--action-button--search,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--search,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--search,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--search{margin-left:-42px}.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ibo-input-select-autocomplete~.ibo-input-select--action-button--clear,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--clear,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--clear,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--clear{margin-left:-72px}.ibo-navigation-menu--silo-selection .ibo-input-wrapper .ibo-input-select-autocomplete~.ibo-input-select--action-button--hierarchy,.ibo-navigation-menu--silo-selection .ui_tpicker_hour_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--hierarchy,.ibo-navigation-menu--silo-selection .ui_tpicker_minute_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--hierarchy,.ibo-navigation-menu--silo-selection .ui_tpicker_second_slider .ibo-input-select-autocomplete~.ibo-input-select--action-button--hierarchy{margin-left:-60px}.ibo-navigation-menu--silo-visual-hint{position:absolute;top:2px;right:0;width:16px;height:16px;background-color:#e53e3e;border:2px solid #263238;border-radius:100%}.ibo-navigation-menu--menu-group{display:flex;justify-content:left;align-items:center;white-space:nowrap;overflow-x:hidden;color:#d5dde5;transition-property:background-color, color, padding, margin, border-radius;transition-duration:0.1s;transition-timing-function:linear}.ibo-navigation-menu--menu-group>.ibo-navigation-menu--menu-group-icon{display:flex}.ibo-navigation-menu--menu-group .ibo-navigation-menu--menu-group-title{flex-grow:1}.ibo-navigation-menu--menu-group:not(:last-child){margin-bottom:20px}.ibo-navigation-menu--menu-group:not(.ibo-is-active):hover,.ibo-navigation-menu--menu-group:not(.ibo-is-active):active{color:white;background-color:#455a64}.ibo-navigation-menu--menu-group:not(.ibo-is-active):active{border-radius:100%}.ibo-navigation-menu--menu-group.ibo-is-active{margin-right:calc(-2 * 8px);padding-right:calc(2 - 8px);color:#37474f;background-color:#f8f9fa;border-radius:5px 0 0 5px}.ibo-navigation-menu--menu-group.ibo-is-active .ibo-navigation-menu--menu-group-icon{color:#ea7d1e}.ibo-navigation-menu--menu-group-icon{width:28px;min-width:28px;justify-content:center;font-size:1.83rem}.ibo-navigation-menu--menu-group-icon::before{width:28px}.ibo-navigation-menu--menu-group-title{margin-left:16px;justify-content:left}.ibo-navigation-menu--drawer{position:absolute;z-index:-1;top:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;width:312px;padding:32px 20px;background-color:#f8f9fa;border-right:1px solid #d5dde5;transition:right 0.2s ease-in-out}.ibo-navigation-menu--menu-filter{position:relative}.ibo-navigation-menu--menu-filter-input{width:100%;padding:8px 10px;color:#212934;background-color:white;border:1px solid #d5dde5;border-radius:3px;padding-right:76px}.ibo-navigation-menu--menu-filter-input::placeholder{color:#6e7a8a}.ibo-navigation-menu--menu-filter-input:-ms-input-placeholder,.ibo-navigation-menu--menu-filter-input::-ms-input-placeholder{color:#6e7a8a}.ibo-navigation-menu--menu-filter-clear{display:none;position:absolute;top:8px;right:60px;padding:3px 3px}.ibo-navigation-menu--menu-filter-hotkey{position:absolute;top:6.5px;right:10px;border:1px solid #ccd4db;border-radius:3px;color:#6e7a8a;padding:2px 4px}.ibo-navigation-menu--menu-filter-hint{position:relative;margin-top:16px;padding-right:12px;color:#6e7a8a}.ibo-navigation-menu--menu-filter-hint-close{position:absolute;top:1px;right:2px}.ibo-navigation-menu--menu--placeholder{width:100%;margin-top:50px}.ibo-navigation-menu--menu--placeholder-image>svg{display:block;width:90%;height:auto;margin:auto}.ibo-navigation-menu--menu--placeholder-hint{margin-top:8px;text-align:center}.ibo-navigation-menu--menu-groups{overflow-y:auto;overflow-x:hidden;margin:50px calc(-1 * 20px) 0 calc(-1 * 20px);padding-left:20px;padding-right:20px;width:inherit}.ibo-navigation-menu--menu-nodes{display:none}.ibo-navigation-menu--menu-nodes ul li>a,.ibo-navigation-menu--menu-nodes ul li>span{margin:0 -10px;padding:6px 10px;border-radius:0;color:#6e7a8a}.ibo-navigation-menu--menu-nodes ul li>a{color:inherit}.ibo-navigation-menu--menu-nodes ul li>a:hover{background-color:#e1e7ec;border-radius:5px}.ibo-navigation-menu--menu-nodes ul ul{padding-left:20px}.ibo-navigation-menu--menu-nodes.ibo-is-active{display:block}.ibo-navigation-menu--menu-nodes-title{margin-top:0;margin-bottom:32px;word-break:break-word}.ibo-navigation-menu--menu-node-title{display:flex;justify-content:space-between;align-items:center}.ibo-navigation-menu--menu-node-counter{margin-left:8px;padding:2px 6px;width:34px;min-width:34px;text-align:center;background:#e1e7ec;border-radius:5px}.ibo-navigation-menu--notifications{position:relative;display:flex;flex-direction:column;align-content:center}.ibo-navigation-menu--notifications-toggler{position:relative;font-size:2rem;color:#929fb1}.ibo-navigation-menu--notifications-toggler:hover,.ibo-navigation-menu--notifications-toggler.ibo-is-loaded:hover{color:#f2f2f2}.ibo-navigation-menu--notifications-toggler.ibo-is-loaded{color:#d5dde5}.ibo-navigation-menu--notifications-toggler.ibo-is-loaded:not(.ibo-is-empty) .ibo-navigation-menu--notifications-toggler--new-messages{display:inline}.ibo-navigation-menu--notifications-toggler .ibo-navigation-menu--notifications-toggler--new-messages{top:-2px;right:-7px;width:16px;height:16px}.ibo-navigation-menu--user-notifications--toggler{position:relative}.ibo-navigation-menu--user-notifications--toggler.ibo-is-loaded{color:#d5dde5}.ibo-navigation-menu--user-notifications--toggler.ibo-is-loaded:not(.ibo-is-empty) .ibo-navigation-menu--notifications-toggler--new-messages{display:inline}.ibo-navigation-menu--user-notifications--toggler .ibo-navigation-menu--notifications-toggler--new-messages{top:-2px;right:-5px;width:10px;height:10px}.ibo-navigation-menu--notifications-toggler--new-messages{position:absolute;display:none;background-color:#e53e3e;border:2px solid #404b5a;border-radius:100%}.ibo-navigation-menu--user-info{justify-content:space-between;flex-direction:column}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-picture{width:36px;height:36px;overflow:hidden;background-color:#d5dde5;border-radius:100%}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-picture .ibo-navigation-menu--user-picture--image{display:flex;max-width:36px;max-height:36px}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-welcome-message,.ibo-navigation-menu--user-info .ibo-navigation-menu--user-organization,.ibo-navigation-menu--user-info .ibo-navigation-menu--user-notifications{display:none;text-align:center;color:white}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-welcome-message .ibo-navigation-menu--user-welcome-message--text,.ibo-navigation-menu--user-info .ibo-navigation-menu--user-welcome-message .ibo-navigation-menu--user-welcome-message--toggler{color:white}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-welcome-message--toggler{padding-left:6px}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-notifications .ibo-navigation-menu--user-notifications--text{color:white}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-notifications .ibo-navigation-menu--user-notifications--toggler--icon{padding-left:5px}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-organization{color:#ebf8ff}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container{position:absolute;bottom:10px}.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ibo-popover-menu>.ibo-popover-menu--section:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ui-menu>.ibo-popover-menu--section:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ui-menu>.ui-multiselect-checkboxes:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ui-multiselect-menu>.ibo-popover-menu--section:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ui-multiselect-menu>.ui-multiselect-checkboxes:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ibo-input-select-icon--menu>.ibo-popover-menu--section:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ibo-input-select-icon--menu>.ui-multiselect-checkboxes:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .graph_config .toolkit_menu.graph>ul>li ul>.ibo-popover-menu--section:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .graph_config .toolkit_menu.graph>ul>li ul>.ui-multiselect-checkboxes:nth-child(odd),.graph_config .toolkit_menu.graph>ul>li .ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container ul>.ibo-popover-menu--section:nth-child(odd),.ibo-navigation-menu--user-info .ibo-navigation-menu--user-menu-container .ibo-popover-menu>.ui-multiselect-checkboxes:nth-child(odd){background-color:#f8f9fa}:root{--ibo-top-bar--height: 54px;--ibo-top-bar--padding-left: 16px;--ibo-top-bar--padding-right: 16px;--ibo-top-bar--padding-y: 0;--ibo-top-bar--background-color: white;--ibo-top-bar--elements-spacing: 32px;--ibo-top-bar--quick-actions--margin-right: 32px}.ibo-top-bar{height:var(--ibo-top-bar--height);padding:var(--ibo-top-bar--padding-y) var(--ibo-top-bar--padding-right) var(--ibo-top-bar--padding-y) var(--ibo-top-bar--padding-left);background-color:var(--ibo-top-bar--background-color)}.ibo-top-bar .ibo-breadcrumbs{flex-grow:1;overflow-x:hidden}.ibo-top-bar--quick-actions{margin-right:var(--ibo-top-bar--quick-actions--margin-right)}.ibo-top-bar--toolbar-dashboard-title{max-width:350px}.ibo-top-bar--toolbar-dashboard-menu-toggler{display:flex;align-items:center}#ibo-center-container.ibo-center-container--with-side-content{display:flex;align-items:stretch}#ibo-center-container.ibo-center-container--with-side-content #ibo-main-content{flex-grow:1}.ibo-v-spacer{padding-top:1em}#ibo-side-content{background-color:white;border-left:1px solid #ccd4db}.ibo-details{margin-top:5px}.ibo-tab-container:not(.ibo-is-scrollable):not([data-status="loaded"]) .ibo-tab-container--tab-container:not(:first-child){display:none}.ibo-tab-container--tabs-list{position:relative;height:36px;background-color:#f8f9fa}.ibo-tab-container--tab-header,.ibo-tab-container--extra-tabs-container{color:#404b5a}.ibo-tab-container--tab-header:hover:not(.ui-state-disabled),.ibo-tab-container--extra-tabs-container:hover:not(.ui-state-disabled){color:#2c5382;background-color:#e1e7ec}.ibo-tab-container--tab-header.ui-tabs-active,.ui-tabs-active.ibo-tab-container--extra-tabs-container{color:#2c5382}.ibo-tab-container--tab-toggler,.ibo-tab-container--extra-tabs-list-toggler{padding-left:24px;padding-right:24px}.ibo-tab-container--extra-tabs-container{position:absolute;top:0;bottom:0;right:0;background-color:#f8f9fa}.ibo-tab-container--extra-tabs-list-toggler{padding-left:12px;padding-right:12px}.ibo-tab-container--extra-tabs-list{position:fixed;z-index:10;max-height:300px;display:flex;flex-direction:column;overflow-y:auto;background-color:#f8f9fa;border-radius:3px}.ibo-tab-container--extra-tab-toggler{padding:8px 16px;max-width:220px;color:#6e7a8a;overflow-x:clip}.ibo-tab-container--extra-tab-toggler:hover,.ibo-tab-container--extra-tab-toggler:active{color:#2c5382;background-color:#e1e7ec}.ibo-tab-container--extra-tab-toggler--tooltip-title{margin-bottom:16px}.ibo-tab-container--tab-container{padding:32px 32px;overflow-x:auto}.ibo-tab-container--tab-container-list.ibo-is-scrollable .ibo-tab-container--tab-container:not(:first-child:nth-last-child(2)) .ibo-tab-container--tab-container--label{display:block}.ibo-tab-container--tab-container-list.ibo-is-scrollable .ibo-tab-container--tab-container{min-height:auto}.ibo-tab-container--tab-container-list.ibo-is-scrollable .ibo-tab-container--tab-container:last-child:not(:only-child){min-height:60vh}.ibo-tab-container--tab-container--label{display:none;margin-bottom:20px;overflow-x:hidden}.ibo-tab-container--tab-container--label>span{position:relative;padding-left:20px;margin-left:40px;color:#929fb1}.ibo-tab-container--tab-container--label>span::before,.ibo-tab-container--tab-container--label>span::after{content:"";display:inline-block;position:absolute;top:calc(50% - (2px / 2));height:1px;width:10000px;border-top:2px solid #929fb1}.ibo-tab-container--tab-container--label>span::before{right:100%}.ibo-tab-container--tab-container--label>span::after{left:100%;margin-left:20px}.ibo-tab--temporary-remote-content{position:relative}.ibo-tab--temporary-remote-content--placeholder{position:relative;height:auto;max-height:300px;text-align:center}.ibo-tab--temporary-remote-content--placeholder>svg{max-width:calc(300px * 5.4);max-height:300px}.ibo-tab--temporary-remote-content--button{position:absolute;top:0;display:flex;justify-content:center;align-content:center;flex-direction:column;text-align:center;height:100%;width:100%;cursor:pointer;background-color:transparent;color:#404b5a}.ibo-tab--temporary-remote-content--button:hover{opacity:0.5;background-color:#212934;color:#e1e7ec}.ibo-multi-column{display:flex;flex-wrap:wrap;margin:0 -16px;row-gap:48px}.ibo-column{min-width:300px;flex-grow:1;flex-shrink:1;padding:0 16px;flex-basis:10%}.ibo-column:not(:last-child) .ibo-column:not(.ibo-without-margin){margin-bottom:48px}.ibo-mini-column{min-width:30px;flex-grow:1;flex-shrink:1;padding:0 16px;flex-basis:10%;display:flex;flex-direction:column}.ibo-mini-column>.ibo-button,.ui-dialog .ibo-mini-column>.ui-button,.ibo-mini-column>.ui-datepicker-current,.ibo-mini-column>.ui-datepicker-close{margin-left:0;margin-right:0}.ibo-mini-column:not(:last-child){margin-bottom:48px}.ibo-dashboard--top-bar{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px}.ibo-dashboard--top-bar .ibo-dashboard--top-bar-toolbar{display:flex;align-items:center}.ibo-dashboard--selector{display:flex;align-items:center;margin-left:12px;margin-right:1}.ibo-dashboard--selector:hover{background-color:#f8f9fa;border-radius:4px}.ibo-dashboard--selector .selector-label{display:inline-block;margin-left:10px;margin-right:10px;vertical-align:super}.ibo-dashboard--grid{width:100%}.ibo-dashboard--grid-row{display:flex;flex-direction:row;justify-content:space-between;overflow:hidden}.ibo-dashboard--grid-row:not(:last-child){padding-bottom:calc(24px / 2)}.ibo-dashboard--grid-row:not(:first-child){padding-top:calc(24px / 2)}.ibo-dashboard--grid-column{display:flex;flex-flow:row wrap;align-items:flex-start;align-content:flex-start;width:calc(100% + (2 * 24px));margin:calc(-1 * 24px / 2) calc(-1 * 24px / 2);min-width:0}.ibo-dashboard--grid-column:not(:last-child){margin-right:0}.ibo-dashboard--grid-column:not(:first-child){margin-left:0}.ibo-dashboard--grid-column.edit_mode{margin:1px;border:2px #ccd4db dashed;width:100%;min-height:40px}.ibo-dashboard--switch{position:relative;display:inline-block;width:30px;height:24px;vertical-align:baseline}.ibo-dashboard--switch input{display:none}.ibo-dashboard--slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0}.ibo-dashboard--slider:before{content:"";font-size:0.83rem;color:#404b5a;position:absolute;right:5px;bottom:3px}.ibo-dashboard--slider:after{content:"";font-size:1.17rem;color:#dd6c20;position:absolute;left:6px;bottom:1px}input:checked+.ibo-dashboard--slider:before{content:""}input:checked+.ibo-dashboard--slider:after{content:""}.ibo-dashboard-editor--pane{flex-grow:1;padding:16px 30px 16px 15px;overflow:auto}.ibo-dashboard-editor--available-dashlet-icon{display:inline-block;height:34px;width:34px;margin:2px 5px;cursor:grab}.ibo-dashboard-editor--available-dashlet-icon:active{cursor:move}.ibo-dashboard-editor--properties,.ibo-dashboard--available-dashlets,.ibo-dashlet--properties{display:flex;flex-direction:column;padding-bottom:20px}.ibo-dashboard-editor--properties table,.ibo-dashboard--available-dashlets table,.ibo-dashlet--properties table{width:100%;text-align:left}.ibo-dashboard-editor--properties table td,.ibo-dashboard-editor--properties table th,.ibo-dashboard--available-dashlets table td,.ibo-dashboard--available-dashlets table th,.ibo-dashlet--properties table td,.ibo-dashlet--properties table th{margin-bottom:14px}.ibo-dashboard-editor--properties-title{padding-bottom:2rem}.ibo-dashboard-editor--layout-list{display:flex;justify-content:center;padding-bottom:12px}.ibo-dashboard-editor--layout-list>.ui-button{display:inline-block;height:auto;margin:0 15px 0 5px}.ibo-dashboard--available-dashlets--list{display:flex;justify-content:center;flex-wrap:wrap}#dashboard_editor{display:flex;flex-direction:row;padding:0}#dashboard_editor>.itop-dashboard{resize:horizontal;overflow:scroll;border-right:solid 1px #e1e7ec;padding:16px 15px 16px 30px}.ibo-dashboard-editor--delete-dashlet-icon{position:absolute;top:7px;right:9px;padding:2px 6px;z-index:21}.ibo-dashboard-editor .itop-dashboard a{cursor:not-allowed}.ibo-wizard-container{padding:10px 16px;background:#bee3f8;border-radius:3px;border-left:3px solid #3182ce}.ibo-object-details.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header .ibo-panel--header-left,.ibo-object-details.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header .ibo-panel--header-left{margin-left:32px;padding-left:96px}.ibo-object-details.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header .ibo-panel--header-left .ibo-panel--icon,.ibo-object-details.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header .ibo-panel--header-left .ibo-panel--icon{bottom:calc(-1 * 96px / 2 + -12px);width:96px;height:96px;min-width:96px;min-height:96px}.ibo-object-details.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header .ibo-panel--header-left .ibo-panel--titles,.ibo-object-details.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header .ibo-panel--header-left .ibo-panel--titles{padding-left:32px}.ibo-object-details--status-dot{width:10px;height:10px;min-width:10px;min-height:10px;border-radius:100%}.ibo-object-details--status-dot+.ibo-object-details--status-label{margin-left:8px}.ibo-object-details--status+.ibo-object-details--object-class{margin-left:0.5rem;display:inline-flex}.ibo-object-details--status+.ibo-object-details--object-class::before{content:"("}.ibo-object-details--status+.ibo-object-details--object-class::after{content:")"}.ibo-object-details--tag{color:#404b5a}.ibo-object-details--tag:not(:first-child){margin-left:12px}.ibo-object-details--tag-icon{margin-right:6px;color:#6e7a8a}.ibo-object-details--object-class~.ibo-object-details--tag::before,.ibo-object-details--tag~.ibo-object-details--tag::before{content:" ";display:inline-block;vertical-align:middle;margin-right:12px;width:5px;height:5px;border-radius:100%;background-color:#404b5a}.ibo-object-details.ibo-has-sticky-header>.ibo-panel--header,.ibo-object-details.ibo-has-sticky-header>.ibo-object-summary--header{}.ibo-object-details.ibo-has-sticky-header>.ibo-panel--header.ibo-is-sticking .ibo-object-details--object-class,.ibo-object-details.ibo-has-sticky-header>.ibo-is-sticking.ibo-object-summary--header .ibo-object-details--object-class{display:none}.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header,.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-object-summary--header{}.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header.ibo-is-sticking .ibo-panel--header-left,.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--header-left{padding-left:48px}.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header.ibo-is-sticking .ibo-panel--header-right,.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--header-right{padding-right:8px}.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-panel--header.ibo-is-sticking .ibo-panel--titles,.ibo-object-details.ibo-has-sticky-header.ibo-has-icon.ibo-has-medallion-icon>.ibo-is-sticking.ibo-object-summary--header .ibo-panel--titles{padding-left:32px}.ibo-object-summary.ibo-has-medallion-icon .ibo-panel--titles{padding-left:16px}.ibo-object-summary>.ibo-panel--body{display:flex;flex-direction:column;padding:0;max-height:40vh;box-shadow:0 3px 6px rgba(0, 0, 0, 0.1), 0 10px 20px rgba(0, 0, 0, 0.15)}.ibo-object-summary--header{margin:8px 0 0 0;padding:8px 0;background-color:#f8f9fa;border-bottom:solid 1px #ccd4db}.ibo-object-summary--header .ibo-panel--icon{overflow:hidden;background-color:#f8f9fa;border:1px solid #90a4ae;border-radius:100%}.ibo-object-summary--header .ibo-panel--header-left{margin-left:16px}.ibo-object-summary--header .ibo-panel--header-right{align-self:start;margin-right:16px;margin-left:8px}.ibo-object-summary--body{overflow:auto}.ibo-object-summary--content--attributes{display:table;width:calc(100% - (2 * 16px));margin:16px 16px 24px 16px}.ibo-object-summary--content--attributes--code,.ibo-object-summary--content--attributes--value{display:table-cell}.ibo-activity-panel{position:relative;display:flex;flex-direction:column;width:480px;height:100%;transition:width 0.2s ease-in-out}.ibo-activity-panel.ibo-is-expanded{width:60vw}.ibo-activity-panel.ibo-is-expanded .ibo-activity-panel--expand-icon{display:none}.ibo-activity-panel:not(.ibo-is-expanded) .ibo-activity-panel--reduce-icon{display:none}.ibo-activity-panel.ibo-is-closed{width:32px}.ibo-activity-panel.ibo-is-closed .ibo-activity-panel--header,.ibo-activity-panel.ibo-is-closed .ibo-activity-panel--body,.ibo-activity-panel.ibo-is-closed .ibo-activity-panel--add-caselog-entry-button{display:none}.ibo-activity-panel.ibo-is-closed .ibo-activity-panel--closed-cover{display:inherit}.ibo-activity-panel--header{position:relative;background-color:#f8f9fa}.ibo-activity-panel--header .ibo-activity-panel--togglers a{color:#404b5a}.ibo-activity-panel--togglers{display:flex;align-items:center}.ibo-activity-panel--actions{display:flex;align-items:center;flex-grow:0;position:sticky;padding-right:16px;background-color:#f8f9fa;color:#929fb1}.ibo-activity-panel--actions:hover{color:#404b5a}.ibo-activity-panel--actions>*:not(:first-child){margin-left:0.75rem}.ibo-activity-panel--tabs-togglers{display:flex;align-items:center;justify-content:safe center;flex-grow:1;padding-left:48px;overflow-x:auto}.ibo-activity-panel--tab-toggler.ibo-is-active .ibo-activity-panel--tab-title{background-color:#e1e7ec}.ibo-activity-panel--tab-toggler.ibo-is-active .ibo-activity-panel--tab-title-messages-count{display:none}.ibo-activity-panel--tab-toggler.ibo-is-draft .ibo-activity-panel--tab-title-draft-indicator{display:initial}.ibo-activity-panel--tab-toggler-for-caselog-1 .ibo-activity-panel--tab-title-decoration{background-color:#689f38}.ibo-activity-panel--tab-toggler-for-caselog-2 .ibo-activity-panel--tab-title-decoration{background-color:#b83280}.ibo-activity-panel--tab-toggler-for-caselog-3 .ibo-activity-panel--tab-title-decoration{background-color:#f6ae55}.ibo-activity-panel--tab-toggler-for-caselog-4 .ibo-activity-panel--tab-title-decoration{background-color:#3182ce}.ibo-activity-panel--tab-toggler-for-caselog-5 .ibo-activity-panel--tab-title-decoration{background-color:#80deea}.ibo-activity-panel--tab-toggler-for-caselog-6 .ibo-activity-panel--tab-title-decoration{background-color:#c5e1a5}.ibo-activity-panel--tab-toggler-for-caselog-7 .ibo-activity-panel--tab-title-decoration{background-color:#fbb6ce}.ibo-activity-panel--tab-title{padding:8px 16px}.ibo-activity-panel--tab-title:hover{background-color:#e1e7ec}.ibo-activity-panel--tab-title-decoration{display:inline-flex;margin-right:8px;width:12px;height:12px;border-radius:3px}.ibo-activity-panel--tab-title-messages-count{display:inline-block;margin-left:8px;background-color:#e1e7ec;padding:0 4px;border-radius:3px}.ibo-activity-panel--tab-title-messages-count[data-messages-count="0"]{display:none}.ibo-activity-panel--tab-title-draft-indicator{display:none;margin-left:8px}.ibo-activity-panel--tab-title-text{max-width:100px}.ibo-activity-panel--tab-toolbar{display:none;flex-direction:column;padding-left:10px;padding-right:10px;background-color:#e1e7ec}.ibo-activity-panel--tab-toolbar.ibo-is-active{display:flex}.ibo-activity-panel--tab-toolbar-actions{justify-content:space-between;flex-wrap:nowrap;margin:4px 0;height:32px}.ibo-activity-panel--tab-toolbar-left-actions .ibo-activity-panel--tab-toolbar-action:not(:first-child)::before{content:"-";margin:0 8px}.ibo-activity-panel--tab-toolbar-middle-actions .ibo-activity-panel--tab-toolbar-action>input{margin-right:8px}.ibo-activity-panel--tab-toolbar-middle-actions .ibo-activity-panel--tab-toolbar-action:not(:first-child){margin-left:18px}.ibo-activity-panel--tab-toolbar-right-actions .ibo-activity-panel--tab-toolbar-info{color:#212934}.ibo-activity-panel--tab-toolbar-right-actions .ibo-activity-panel--tab-toolbar-info>.ibo-activity-panel--tab-toolbar-info-icon{margin-left:8px}.ibo-activity-panel--tab-toolbar-right-actions .ibo-activity-panel--tab-toolbar-info:not(:first-child){margin-left:16px}.ibo-activity-panel--tab-toolbar-action{position:relative;color:#212934}.ibo-activity-panel--filter{cursor:pointer}.ibo-activity-panel--filter-options-toggler{padding-left:0.5rem;color:#212934}.ibo-activity-panel--filter-options-toggler.ibo-is-closed{transform:rotateX(180deg)}.ibo-activity-panel--filter-options-toggler.ibo-is-closed+.ibo-activity-panel--filter-options{display:none}.ibo-activity-panel--filter-options{position:absolute;z-index:1;display:flex;flex-direction:column;top:24px;left:-12px;max-width:200px;padding:8px 12px;background-color:#e1e7ec;border-radius:3px}.ibo-activity-panel--filter-option{cursor:pointer}.ibo-activity-panel--filter-option:not(:first-child){margin-top:8px}.ibo-activity-panel--filter-option-input{margin-right:0.5rem}.ibo-activity-panel--body{flex-grow:1;overflow:auto;padding:16px 16px}.ibo-activity-panel--body--placeholder{margin-top:16px}.ibo-activity-panel--body--placeholder-image>svg{width:250px;height:inherit}.ibo-activity-panel--body--placeholder-hint{margin-top:16px;color:#404b5a}.ibo-activity-panel--add-caselog-entry-button{position:absolute;z-index:1;right:12px;top:88px;width:36px;height:36px;background-color:#dd6c20;color:white;border-radius:100%;box-shadow:0 1px 2px rgba(0, 0, 0, 0.25), 0 1px 3px rgba(0, 0, 0, 0.12)}.ibo-activity-panel--add-caselog-entry-button>i{text-align:center;height:100%;width:100%;font-size:1.33rem;line-height:33px}.ibo-activity-panel--add-caselog-entry-button:hover{color:white;background-color:#ea7d1e;box-shadow:0 2px 4px rgba(0, 0, 0, 0.12), 0 3px 6px rgba(0, 0, 0, 0.15)}.ibo-activity-panel--add-caselog-entry-button:active{color:white;background-color:#c05621}.ibo-activity-panel--add-caselog-entry-button.ibo-is-hidden{display:none}.ibo-activity-panel .ibo-activity-panel--entry-forms-confirmation-dialog{display:none}.ibo-activity-panel--entry-forms-confirmation-explanation{margin-bottom:16px}.ibo-activity-panel--entry-forms-confirmation-preference-input{margin-right:0.5rem}.ibo-activity-panel--closed-cover{display:none;position:absolute;z-index:2;top:0;bottom:0;left:0;right:0;background-color:#f8f9fa;cursor:pointer}.ibo-activity-panel--closed-content-container{transform:rotateZ(-90deg);white-space:nowrap}.ibo-activity-panel--open-icon{margin-left:0.75rem}.ibo-caselog-entry-form{display:block;width:100%;background-color:#e1e7ec}.ibo-caselog-entry-form.ibo-is-closed{display:none}.ibo-caselog-entry-form--actions{display:flex;justify-content:space-between;margin-top:8px;margin-bottom:8px}.ibo-caselog-entry-form--lock-indicator{margin-top:12px}.ibo-caselog-entry-form--lock-icon{width:32px;min-width:32px;height:32px;min-height:32px;color:#fcfcfd;background-color:#404b5a;border-radius:100%}.ibo-caselog-entry-form--lock-message{margin-left:1rem}.ibo-caselog-entry-form--action-buttons--main-actions{}.ibo-caselog-entry-form--action-buttons--main-actions>.ibo-popover-menu,.ibo-caselog-entry-form--action-buttons--main-actions>.ui-menu,.ibo-caselog-entry-form--action-buttons--main-actions>.ui-multiselect-menu,.ibo-caselog-entry-form--action-buttons--main-actions>.ibo-input-select-icon--menu,.graph_config .toolkit_menu.graph>ul>li .ibo-caselog-entry-form--action-buttons--main-actions>ul{z-index:1}.ibo-activity-panel--entry-group:not(:last-child){margin-bottom:24px}.ibo-activity-entry{display:flex;flex-direction:row;align-items:flex-end}.ibo-activity-entry:not(:last-child) .ibo-activity-entry--medallion{visibility:hidden}.ibo-activity-entry:not(:last-child) .ibo-activity-entry--sub-information{margin-bottom:4px}.ibo-activity-entry.ibo-is-current-user{flex-direction:row-reverse;min-width:min-content}.ibo-activity-entry.ibo-is-current-user .ibo-activity-entry--medallion{margin-right:initial;margin-left:8px}.ibo-activity-entry.ibo-is-current-user .ibo-activity-entry--information{margin-right:0;margin-left:40px}.ibo-activity-entry.ibo-is-current-user .ibo-activity-entry--main-information{background-color:#ebf8ff}.ibo-activity-entry.ibo-is-current-user .ibo-activity-entry--sub-information{text-align:right}.ibo-activity-entry.ibo-is-current-user:last-child .ibo-activity-entry--main-information{border-bottom-right-radius:0;border-bottom-left-radius:5px}.ibo-activity-entry:not(.ibo-is-current-user){}.ibo-activity-entry:not(.ibo-is-current-user) .ibo-activity-entry--information{margin-right:40px;margin-left:0}.ibo-activity-entry:not(.ibo-is-current-user):last-child .ibo-activity-entry--main-information{border-bottom-right-radius:5px;border-bottom-left-radius:0}.ibo-activity-entry.ibo-is-closed .ibo-activity-entry--main-information{max-height:48px;overflow:hidden;cursor:pointer}.ibo-activity-entry.ibo-is-closed .ibo-activity-entry--main-information::after{content:"...";position:absolute;top:30px;left:0;padding-left:16px;width:100%;height:100%;background-color:inherit}.ibo-activity-entry--medallion{margin-right:8px;margin-bottom:18px;min-width:32px;width:32px;min-height:32px;height:32px;overflow:hidden;border-radius:100%}.ibo-activity-entry--medallion.ibo-has-image{background-color:#ebf8ff;box-shadow:inset 0 1px 2px 0 rgba(0, 0, 0, 0.25)}.ibo-activity-entry--medallion:not(.ibo-has-image){background-color:#546e7a;color:white;border:1px solid #e1e7ec}.ibo-activity-entry--medallion .ibo-activity-entry--author-picture{max-height:100%}.ibo-activity-entry--main-information{position:relative;display:flex;flex-direction:row;align-items:baseline;padding:12px 16px;color:#404b5a;background-color:#e1e7ec;border-radius:5px}.ibo-activity-entry--main-information-icon{margin-right:16px;color:#6e7a8a;font-size:1.33rem}.ibo-activity-entry--main-information-content{flex-grow:1;word-break:break-word}.ibo-activity-entry--main-information-content a{color:#2b6bb0}.ibo-activity-entry--main-information-content a:hover{color:#2a4265}.ibo-activity-entry--main-information-content a:active,.ibo-activity-entry--main-information-content a:focus{color:#2a4265}.ibo-activity-entry--sub-information{margin-top:4px;text-align:left;color:#6e7a8a}.ibo-activity-entry--sub-information>*:not(:last-child):after{content:" ";display:inline-block;vertical-align:middle;margin-left:0.5rem;margin-right:0.5rem;width:4px;height:4px;border-radius:100%;background-color:#929fb1}.ibo-activity-panel--load-more-entries-container{position:relative}.ibo-activity-panel--load-more-entries-container:hover .ibo-activity-panel--load-all-entries{margin-left:84px}.ibo-activity-panel--load-more-entries-container:not(:hover) .ibo-activity-panel--load-all-entries{visibility:hidden}.ibo-activity-panel--load-entries-button{width:32px;height:32px;border-radius:100%;background-color:#e1e7ec;border:1px solid #ccd4db}.ibo-activity-panel--load-more-entries{z-index:1}.ibo-activity-panel--load-all-entries{position:absolute;z-index:0;top:0;margin-left:0;transition:all 0.1s ease-in-out}.ibo-caselog-entry{}.ibo-caselog-entry .ibo-activity-entry--main-information{padding-top:12px;padding-bottom:12px}.ibo-caselog-entry .ibo-activity-entry--main-information-icon{display:none}.ibo-caselog-entry .ibo-activity-entry--main-information::before{content:"";position:absolute;top:0;bottom:0;width:3px}.ibo-caselog-entry:not(.ibo-is-current-user) .ibo-activity-entry--main-information::before{left:0;border-top-left-radius:5px;border-bottom-left-radius:5px}.ibo-caselog-entry:not(.ibo-is-current-user):last-child .ibo-activity-entry--main-information::before{border-bottom-left-radius:0}.ibo-caselog-entry.ibo-is-current-user .ibo-activity-entry--main-information::before{right:0;border-top-right-radius:5px;border-bottom-right-radius:5px}.ibo-caselog-entry.ibo-is-current-user:last-child .ibo-activity-entry--main-information::before{border-bottom-right-radius:0}.ibo-caselog-entry.ibo-is-closed.ibo-is-current-user .ibo-activity-entry--main-information::after{width:calc(100% - 3px)}.ibo-caselog-entry.ibo-is-closed:not(.ibo-is-current-user) .ibo-activity-entry--main-information::after{margin-left:3px}.ibo-caselog-entry--entry-for-caselog-1 .ibo-activity-entry--main-information::before{background-color:#689f38}.ibo-caselog-entry--entry-for-caselog-2 .ibo-activity-entry--main-information::before{background-color:#b83280}.ibo-caselog-entry--entry-for-caselog-3 .ibo-activity-entry--main-information::before{background-color:#f6ae55}.ibo-caselog-entry--entry-for-caselog-4 .ibo-activity-entry--main-information::before{background-color:#3182ce}.ibo-caselog-entry--entry-for-caselog-5 .ibo-activity-entry--main-information::before{background-color:#80deea}.ibo-caselog-entry--entry-for-caselog-6 .ibo-activity-entry--main-information::before{background-color:#c5e1a5}.ibo-caselog-entry--entry-for-caselog-7 .ibo-activity-entry--main-information::before{background-color:#fbb6ce}.ibo-transition-entry--original-state-label{color:#404b5a;text-decoration:line-through}a.ibo-edits-entry--short-description{position:relative;display:block;color:inherit}.ibo-edits-entry--long-description-toggler-icon{position:absolute;top:3px;right:0;transition:all 0.2s ease-in-out}.ibo-edits-entry--long-description{display:none;margin-top:8px;list-style:inside}.ibo-edits-entry:not(.ibo-is-closed) .ibo-edits-entry--long-description-toggler-icon{transform:rotateX(180deg)}.ibo-edits-entry:not(.ibo-is-closed) .ibo-edits-entry--long-description{display:block}a.ibo-notification-entry--short-description{color:inherit}.ibo-notification-entry--long-description-toggler-icon{margin-left:12px;transition:all 0.2s ease-in-out}.ibo-notification-entry--long-description{display:none;margin-top:8px;list-style:inside}.ibo-notification-entry:not(.ibo-is-closed) .ibo-notification-entry--long-description-toggler-icon{transform:rotateX(180deg)}.ibo-notification-entry:not(.ibo-is-closed) .ibo-notification-entry--long-description{display:block}.ibo-extension-details{display:inline-flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%}.ibo-extension-details--information{flex-grow:1;display:flex;flex-direction:column}.ibo-extension-details--actions{display:flex}.ibo-extension-details--information--metadata{color:#6e7a8a}.ibo-extension-details--information--metadata span+span:before{content:"-";padding-left:4px;padding-right:4px}.ibo-extension-details:has(> .ibo-extension-details--actions input:is([type="checkbox"], [type="radio"]):checked)>.ibo-extension-details--information>.ibo-extension-details--information--label .ibo-badge.unchecked{display:none}.ibo-extension-details:has(> .ibo-extension-details--actions input[type="checkbox"]:not(:checked))>.ibo-extension-details--information>.ibo-extension-details--information--label .ibo-badge.checked,.ibo-extension-details:has(> .ibo-extension-details--actions input[type="radio"]:not(:checked))>.ibo-extension-details--information>.ibo-extension-details--information--label .ibo-badge.checked{display:none}.ibo-extension-details--actions>button{padding:3px 9px}.ibo-extension-details--actions:has(.toggler-install:not(:disabled)) .ibo-popover-menu--section a[data-resource-id="force_uninstall"],.ibo-extension-details--actions:has(.toggler-install:not(:disabled)) .ui-multiselect-checkboxes a[data-resource-id="force_uninstall"]{display:none}.ibo-extension-details .ibo-popover-menu~.ibo-button,.ibo-extension-details .ui-menu~.ibo-button,.ibo-extension-details .ui-dialog .ui-menu~.ui-button,.ui-dialog .ibo-extension-details .ui-menu~.ui-button,.ibo-extension-details .ui-menu~.ui-datepicker-current,.ibo-extension-details .ui-menu~.ui-datepicker-close,.ibo-extension-details .ui-multiselect-menu~.ibo-button,.ibo-extension-details .ui-dialog .ui-multiselect-menu~.ui-button,.ui-dialog .ibo-extension-details .ui-multiselect-menu~.ui-button,.ibo-extension-details .ui-multiselect-menu~.ui-datepicker-current,.ibo-extension-details .ui-multiselect-menu~.ui-datepicker-close,.ibo-extension-details .ibo-input-select-icon--menu~.ibo-button,.ibo-extension-details .ui-dialog .ibo-input-select-icon--menu~.ui-button,.ui-dialog .ibo-extension-details .ibo-input-select-icon--menu~.ui-button,.ibo-extension-details .ibo-input-select-icon--menu~.ui-datepicker-current,.ibo-extension-details .ibo-input-select-icon--menu~.ui-datepicker-close,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul~.ibo-button,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li .ui-dialog ul~.ui-button,.ui-dialog .ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul~.ui-button,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul~.ui-datepicker-current,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul~.ui-datepicker-close,.graph_config .toolkit_menu.graph>ul>li .ibo-extension-details ul~.ibo-button,.ibo-extension-details .ui-dialog .ibo-popover-menu~.ui-button,.ui-dialog .ibo-extension-details .ibo-popover-menu~.ui-button,.ibo-extension-details .ibo-popover-menu~.ui-datepicker-current,.ibo-extension-details .ibo-popover-menu~.ui-datepicker-close{visibility:hidden}.ibo-extension-details .ibo-popover-menu:has(.ibo-popover-menu--item)~.ibo-button,.ibo-extension-details .ibo-popover-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ibo-button,.ibo-extension-details .ui-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ibo-button,.ibo-extension-details .ui-dialog .ui-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ui-dialog .ibo-extension-details .ui-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ibo-extension-details .ui-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-current,.ibo-extension-details .ui-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-close,.ibo-extension-details .ui-multiselect-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ibo-button,.ibo-extension-details .ui-dialog .ui-multiselect-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ui-dialog .ibo-extension-details .ui-multiselect-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ibo-extension-details .ui-multiselect-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-current,.ibo-extension-details .ui-multiselect-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-close,.ibo-extension-details .ibo-input-select-icon--menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ibo-button,.ibo-extension-details .ui-dialog .ibo-input-select-icon--menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ui-dialog .ibo-extension-details .ibo-input-select-icon--menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ibo-extension-details .ibo-input-select-icon--menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-current,.ibo-extension-details .ibo-input-select-icon--menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-close,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ibo-button,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li .ui-dialog ul:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ui-dialog .ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-current,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-close,.graph_config .toolkit_menu.graph>ul>li .ibo-extension-details ul:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ibo-button,.ibo-extension-details .ui-dialog .ibo-popover-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ui-dialog .ibo-extension-details .ibo-popover-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-button,.ibo-extension-details .ibo-popover-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-current,.ibo-extension-details .ibo-popover-menu:has(.ui-menu-item, .ui-multiselect-checkboxes li, .ibo-input-select-icon--menu--item, .graph_config .toolkit_menu.graph>ul>li ul li)~.ui-datepicker-close,.ibo-extension-details .ui-menu:has(.ibo-popover-menu--item)~.ibo-button,.ibo-extension-details .ui-dialog .ui-menu:has(.ibo-popover-menu--item)~.ui-button,.ui-dialog .ibo-extension-details .ui-menu:has(.ibo-popover-menu--item)~.ui-button,.ibo-extension-details .ui-menu:has(.ibo-popover-menu--item)~.ui-datepicker-current,.ibo-extension-details .ui-menu:has(.ibo-popover-menu--item)~.ui-datepicker-close,.ibo-extension-details .ui-multiselect-menu:has(.ibo-popover-menu--item)~.ibo-button,.ibo-extension-details .ui-dialog .ui-multiselect-menu:has(.ibo-popover-menu--item)~.ui-button,.ui-dialog .ibo-extension-details .ui-multiselect-menu:has(.ibo-popover-menu--item)~.ui-button,.ibo-extension-details .ui-multiselect-menu:has(.ibo-popover-menu--item)~.ui-datepicker-current,.ibo-extension-details .ui-multiselect-menu:has(.ibo-popover-menu--item)~.ui-datepicker-close,.ibo-extension-details .ibo-input-select-icon--menu:has(.ibo-popover-menu--item)~.ibo-button,.ibo-extension-details .ui-dialog .ibo-input-select-icon--menu:has(.ibo-popover-menu--item)~.ui-button,.ui-dialog .ibo-extension-details .ibo-input-select-icon--menu:has(.ibo-popover-menu--item)~.ui-button,.ibo-extension-details .ibo-input-select-icon--menu:has(.ibo-popover-menu--item)~.ui-datepicker-current,.ibo-extension-details .ibo-input-select-icon--menu:has(.ibo-popover-menu--item)~.ui-datepicker-close,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ibo-popover-menu--item)~.ibo-button,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li .ui-dialog ul:has(.ibo-popover-menu--item)~.ui-button,.ui-dialog .ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ibo-popover-menu--item)~.ui-button,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ibo-popover-menu--item)~.ui-datepicker-current,.ibo-extension-details .graph_config .toolkit_menu.graph>ul>li ul:has(.ibo-popover-menu--item)~.ui-datepicker-close,.graph_config .toolkit_menu.graph>ul>li .ibo-extension-details ul:has(.ibo-popover-menu--item)~.ibo-button,.ibo-extension-details .ui-dialog .ibo-popover-menu:has(.ibo-popover-menu--item)~.ui-button,.ui-dialog .ibo-extension-details .ibo-popover-menu:has(.ibo-popover-menu--item)~.ui-button,.ibo-extension-details .ibo-popover-menu:has(.ibo-popover-menu--item)~.ui-datepicker-current,.ibo-extension-details .ibo-popover-menu:has(.ibo-popover-menu--item)~.ui-datepicker-close{visibility:visible}.ibo-extension-details .ibo-toggler--wrapper:has(.ibo-toggler.ibo-is-hidden){visibility:hidden}.ibo-bulk--bulk-modify--incompatible-attribute:before{margin-right:4px;content:"";color:#429ae1}#form_part_csv_options:has(#ibo-sanitize-excel-export--input:checked) #ibo-sanitize-excel-export--alert,#form_part_xlsx_options:has(#ibo-sanitize-excel-export--input:checked) #ibo-sanitize-excel-export--alert{display:none}.ibo-block-csv textarea{width:100%;min-height:10em;margin-top:10px}.ibo-block-list--empty-text,.ibo-block-list--create-action{text-align:center}.ibo-block-list--create-icon{margin-right:0.5rem}.ibo-linked-set--bulk-tooltip-info:before{margin-right:4px;content:"";color:#429ae1}.ibo-table-preview{margin-top:20px;overflow-x:auto}.ibo-table-preview th{position:relative;padding:4px 24px 4px 4px;border-width:1px 1px 0;border-style:groove groove none;background:#f2f2f2}.ibo-table-preview td{padding-right:4px;padding-left:4px;border-width:0 1px;border-style:none groove}.ibo-table-preview tr:last-child td{border-bottom-width:1px;border-bottom-style:groove}.ibo-preview-header{margin-bottom:4px}.ibo-table-preview--remove-column{position:absolute;top:8px;right:8px;display:inline-block;cursor:pointer;font-size:8px}#form_part_interactive_fields_xlsx,#form_part_interactive_fields_csv,#form_part_interactive_fields_pdf{margin-top:24px}.ibo-welcome-popup--dialog.ui-dialog-content{padding:0 0;height:auto !important;max-height:80vh !important}.ibo-welcome-popup--messages-stack{min-width:300px;max-width:300px;padding:24px 16px;overflow-y:auto;background-color:#f8f9fa}.ibo-welcome-popup--messages-stack>*:not(:first-child){margin-top:12px}.ibo-welcome-popup--stack-item{padding:12px 16px;background-color:white;border:1px solid #d5dde5}.ibo-welcome-popup--stack-item.ibo-is-active{border-color:#929fb1}.ibo-welcome-popup--stack-item.ibo-is-acknowledged{opacity:0.6}.ibo-welcome-popup--stack-item.ibo-is-acknowledged.ibo-is-active{opacity:1}.ibo-welcome-popup--stack-item-icon{width:32px;height:32px;min-width:32px;min-height:32px;margin-right:12px;border-width:1px}.ibo-welcome-popup--message-content-wrapper{overflow:auto}.ibo-welcome-popup--message-content{display:flex;justify-content:space-between;align-items:center;padding:32px 48px}.ibo-welcome-popup--message-content .ibo-welcome-popup--message-illustration{margin-left:48px}.ibo-welcome-popup--message-content:not(.ibo-is-active){display:none}.ibo-welcome-popup--message-content.ibo-is-illustration-on-left-side{flex-direction:row-reverse}.ibo-welcome-popup--message-content.ibo-is-illustration-on-left-side .ibo-welcome-popup--message-illustration{margin-left:unset;margin-right:48px}.ibo-welcome-popup--message-title{margin-bottom:32px}.ibo-welcome-popup--message-illustration{display:flex;min-width:256px;aspect-ratio:1;background-size:contain}.ibo-welcome-popup--message-illustration>svg{height:auto}.ibo-user-rights{padding:4px 12px;border-radius:4px}.ibo-user-rights.ibo-is-success{background-color:#dcedc8;color:#235816;border:1px solid #8ac34a}.ibo-user-rights.ibo-is-failure{background-color:#fce8e8;color:#491d1d;border:1px solid #f56565}:root{--ibo-dm-class--User--main-color: #546e7a;--ibo-dm-class--User--complementary-color: white}.ibo-dm-class--User{--ibo-main-color: #546e7a;--ibo-main-color--100: #eaeef0;--ibo-main-color--900: #1f292d;--ibo-complementary-color: white}.ibo-dm-class-alt--User{--ibo-main-color: white;--ibo-complementary-color: #546e7a}:root{--ibo-dm-enum--User-status-enabled--main-color: #689f38;--ibo-dm-enum--User-status-enabled--complementary-color: white}.ibo-dm-enum--User-status-enabled{--ibo-main-color: #689f38;--ibo-main-color--100: #edf6e5;--ibo-main-color--900: #253914;--ibo-complementary-color: white}.ibo-dm-enum-alt--User-status-enabled{--ibo-main-color: white;--ibo-complementary-color: #689f38}:root{--ibo-dm-enum--User-status-disabled--main-color: #f6ae55;--ibo-dm-enum--User-status-disabled--complementary-color: white}.ibo-dm-enum--User-status-disabled{--ibo-main-color: #f6ae55;--ibo-main-color--100: #fdefdd;--ibo-main-color--900: #492a04;--ibo-complementary-color: white}.ibo-dm-enum-alt--User-status-disabled{--ibo-main-color: white;--ibo-complementary-color: #f6ae55}:root{--ibo-dm-class--Action--main-color: #546e7a;--ibo-dm-class--Action--complementary-color: white}.ibo-dm-class--Action{--ibo-main-color: #546e7a;--ibo-main-color--100: #eaeef0;--ibo-main-color--900: #1f292d;--ibo-complementary-color: white}.ibo-dm-class-alt--Action{--ibo-main-color: white;--ibo-complementary-color: #546e7a}:root{--ibo-dm-enum--Action-status-enabled--main-color: #689f38;--ibo-dm-enum--Action-status-enabled--complementary-color: white}.ibo-dm-enum--Action-status-enabled{--ibo-main-color: #689f38;--ibo-main-color--100: #edf6e5;--ibo-main-color--900: #253914;--ibo-complementary-color: white}.ibo-dm-enum-alt--Action-status-enabled{--ibo-main-color: white;--ibo-complementary-color: #689f38}:root{--ibo-dm-enum--Action-status-disabled--main-color: #e1e7ec;--ibo-dm-enum--Action-status-disabled--complementary-color: #6e7a8a}.ibo-dm-enum--Action-status-disabled{--ibo-main-color: #e1e7ec;--ibo-main-color--100: #e9eef1;--ibo-main-color--900: #1e272f;--ibo-complementary-color: #6e7a8a}.ibo-dm-enum-alt--Action-status-disabled{--ibo-main-color: #6e7a8a;--ibo-complementary-color: #e1e7ec}:root{--ibo-dm-enum--Action-status-test--main-color: #f6ae55;--ibo-dm-enum--Action-status-test--complementary-color: white}.ibo-dm-enum--Action-status-test{--ibo-main-color: #f6ae55;--ibo-main-color--100: #fdefdd;--ibo-main-color--900: #492a04;--ibo-complementary-color: white}.ibo-dm-enum-alt--Action-status-test{--ibo-main-color: white;--ibo-complementary-color: #f6ae55}.ibo-about-box--top-part{display:flex;flex-direction:row;align-content:center}.ibo-about-box--top-part>div{padding:16px 12px;margin:auto auto;width:50%}:root{--ibo-body-text-color: #212934;--ibo-body-background-color: #f2f2f2}html{height:100vh}body{display:flex;height:100vh;color:var(--ibo-body-text-color);background-color:var(--ibo-body-background-color)}#ibo-navigation-menu{z-index:20}#ibo-page-container{position:relative;z-index:10;height:100%;overflow:auto;flex-grow:1;display:flex;flex-direction:column}#ibo-top-bar,#ibo-main-content{padding-left:36px;padding-right:36px}#ibo-top-container{z-index:20;position:sticky;top:0;left:0;right:0}#ibo-center-container{position:relative;z-index:10;flex-grow:1;overflow:hidden}#ibo-center-container>*{height:100%}#ibo-main-content{padding-top:16px;padding-bottom:16px;overflow:auto}#ibo-main-content>.ibo-panel{margin-left:auto;margin-right:auto}.ibo-preferences--user-preferences--picture-placeholder{display:flex;flex-direction:row;flex-wrap:wrap}.ibo-preferences--user-preferences--picture-placeholder--image{height:54px;width:54px;border-radius:100%;margin:12px;border:solid 3px #d5dde5}.ibo-preferences--user-preferences--picture-placeholder--image>img{border-radius:100%;background-color:#d5dde5}.ibo-preferences--user-preferences--picture-placeholder--image.ibo-is-active{border-color:#2c5382}.ibo-preferences--user-preferences--picture-placeholder--image:hover{border-color:#3182ce}#ibo-form-for-user-interface-preferences>.ibo-keyboard-shortcut--shortcut{display:table;width:100%}#ibo-form-for-user-interface-preferences>.ibo-keyboard-shortcut--shortcut>*:not(.ibo-button){width:30%;display:table-cell}.ibo-keyboard-shortcut--input,.ibo-keyboard-shortcut--input:focus{display:inline-block;width:auto;text-transform:capitalize;text-align:center;color:#404b5a;background-color:transparent;border:1px solid #aebecd;border-bottom:2px solid #aebecd;border-radius:3px;padding:2px 4px;margin-bottom:5px}.ibo-keyboard-shortcut--input.ibo-is-focus,.ibo-keyboard-shortcut--input:focus.ibo-is-focus{text-transform:none;color:#9c4221;border-color:#dd6c20}#ibo-favorite-organizations .ibo-toolbar{float:right;vertical-align:top}#ibo-favorite-organizations .ibo-datatable--toolbar{padding-top:3px}#ibo-attachment--upload-file .ibo-input-file-select--container{display:inline-block}.ibo-attachment--datatable--icon-preview{max-height:44px;max-width:44px}.ibo-attachment--datatable tbody tr td{vertical-align:middle}.ibo-attachment--upload-file--drop-zone-hint{display:none}.ibo-drag-in{border:2px #ccd4db dashed}.ibo-drag-in .ibo-attachment--upload-file--drop-zone-hint{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;max-height:200px;margin:22px 0;color:#6e7a8a}.ibo-drag-in .ibo-attachment--upload-file--drop-zone-hint>svg{margin-bottom:5px}.ibo-drag-in #ibo-attachment--upload-file--upload-button-container{display:none}.ibo-tab-container--tab-header.ibo-drag-in,.ibo-drag-in.ibo-tab-container--extra-tabs-container{border:none;background-color:#bee3f8;color:#2c5382}.ibo-tab-container--tab-header.ibo-drag-in>a::after,.ibo-drag-in.ibo-tab-container--extra-tabs-container>a::after{content:"";padding-left:8px;color:#3182ce}.itop-simple-graph{margin-top:10px;border:1px dotted transparent;border-radius:5px}.itop-simple-graph.ibo-has-focus{border:1px dotted #404b5a}.graph_zoom{display:flex;float:right;align-items:center}.graph_zoom_slider{height:1.1em;display:inline-block;width:10em}.graph_zoom_plus,.graph_zoom_minus{cursor:pointer;display:inline-block;margin-left:0.5em;margin-right:0.5em}.graph_config{display:flex;align-items:center;flex-wrap:wrap}.graph_config .toolkit_menu.graph>ul>li{position:relative}.graph_config .toolkit_menu.graph>ul>li ul{z-index:1;position:absolute;display:none}.graph_separator{flex-grow:1}.ibo-simple-graph--grouping-threshold--container,.ibo-simple-graph--additional-context--container{margin-right:0.3em;display:flex;align-items:center}.ibo-simple-graph--grouping-threshold--container>*,.ibo-simple-graph--additional-context--container>*{margin-right:1em}#graph_grouping_threshold{width:auto;padding-right:0}.ibo-display-graph--search-box .sf_criterion_area{display:flex;flex-direction:column}.ibo-display-graph--search-box .sf_criterion_row{display:flex;flex-wrap:wrap;align-items:center}.ibo-display-graph--search-box .sf_criterion_row>div{align-items:center;display:flex;padding:0 15px}.ibo-display-graph--search-box .sf_criterion_row>div>input{margin-right:10px}.ibo-display-graph--search-box .sf_criterion_row>div .ibo-medallion-icon{display:flex;align-items:center}.ibo-display-graph--search-box #ReloadMovieBtn{align-self:flex-end}#impacted_objects_lists>div~div{margin-top:24px}#impacted_objects_lists_placeholder,#impacted_groups_placeholder{height:256px}.ibo-audit--audit-category--panel .ibo-panel--body tr.ibo-is-red td:last-of-type:before{background-color:#c53030}.ibo-audit--audit-category--panel .ibo-panel--body tr.ibo-is-orange td:last-of-type:before{background-color:#c05621}.ibo-audit--audit-category--panel .ibo-panel--body tr.ibo-is-green td:last-of-type:before{background-color:#558b2f}.ibo-audit--audit-category--panel .ibo-panel--body{padding:10px 16px}.ibo-audit--audit-category--panel .ibo-panel--body .ibo-datatable td:not(:nth-child(1)),.ibo-audit--audit-category--panel .ibo-panel--body .ibo-datatable th:not(:nth-child(1)){text-align:right;width:100px}.ibo-audit--audit-category--panel .ibo-panel--body .ibo-datatable--toolbar{display:none}.ibo-audit--audit-category--panel .ibo-panel--body tr td:last-of-type:before{content:"";height:12px;width:12px;border-radius:100%;display:inline-block;margin-right:5px;vertical-align:middle}.ibo-audit--dashboard{padding:18px 0}.ibo-dashboard--grid-row+.ibo-audit--error-alert{margin-top:24px}.ibo-audit--audit-line--csv-download{height:2.5em;vertical-align:middle}.ibo-data-synchro-source--replicas-status.ibo-is-grey{color:#212934;background-color:#ccd4db}.ibo-data-synchro-source--replicas-status.ibo-is-orange{color:#7b341e;background-color:#fbd38d}.ibo-data-synchro-source--replicas-status.ibo-is-bluegrey{color:#263238;background-color:#b0bec5}.ibo-data-synchro-source--replicas-status.ibo-is-red{color:#742a2a;background-color:#feb2b2}.ibo-data-synchro-source--replicas-status.ibo-is-blue{color:#2a4265;background-color:#bee3f8}.ibo-data-synchro-source--replicas-status.ibo-is-green{color:#33691e;background-color:#dcedc8}.ibo-data-synchro-source--replicas-status.ibo-is-cyan{color:#006164;background-color:#c9eef2}.ibo-data-synchro-source--replicas-status-separator{border-top:white}.ibo-data-synchro-source--replicas-status.ibo-is-light{opacity:0.5}.ibo-data-synchro-source--replicas-status.ibo-is-light:hover{opacity:1}.synoptics tr td{padding:10px;min-width:200px;vertical-align:middle;text-align:center}.synoptics tr td.arrow{min-width:100px;border-top:2px solid #fcfcfd}.ibo-data-synchro-source--replicas-status--warning{margin:0 5px 0 8px}.ibo-page-header--replica-title{display:table;width:100%}.ibo-page-header--replica-title>.ibo-toolbar--button{display:table-cell;vertical-align:middle}.ibo-datamodel-viewer--details .ibo-datamodel-viewer--empty{display:flex;flex-direction:column;align-items:center}.ibo-datamodel-viewer--details .ibo-datamodel-viewer--empty svg{width:max(20%, 384px)}.ibo-datamodel-viewer--breadcrumb{margin:4px 0}.ibo-datamodel-viewer--breadcrumb .ibo-button,.ibo-datamodel-viewer--breadcrumb .ui-dialog .ui-button,.ui-dialog .ibo-datamodel-viewer--breadcrumb .ui-button,.ibo-datamodel-viewer--breadcrumb .ui-datepicker-current,.ibo-datamodel-viewer--breadcrumb .ui-datepicker-close{text-transform:none}.ibo-datamodel-viewer--classname{color:#546e7a}.ibo-datamodel-viewer--tag--category{color:#37474f}.ibo-datamodel-viewer--tag--category .ibo-object-details--tag-icon{color:#546e7a}.ibo-datamodel-viewer--icon--abstract:after{content:"A";display:inline-flex;justify-content:center;align-items:center;width:15px;height:15px;line-height:14px;border-radius:50%;border:1px solid #00bbd4;color:white;background-color:#00bbd4}.ibo-datamodel-viewer--parent--spacer{padding:0 8px}.ibo-datamodel-viewer--classes-list .selectize-input,.ibo-datamodel-viewer--classes-list .ibo-quick-create--input.selectize-control.single .selectize-input.input-active,.ibo-quick-create--input.selectize-control.single .ibo-datamodel-viewer--classes-list .selectize-input.input-active{background-color:white !important;background-image:none !important;color:#404b5a;box-shadow:none !important;border-color:#aebecd !important}#ibo-datamodel-viewer--attributes-table>tbody tr td:first-child{width:3px}.ibo-datamodel-viewer--origin-cell{vertical-align:middle}.ibo-datamodel-viewer--origin-cell>div{height:8px;width:8px;border-radius:100%}.ibo-datamodel-viewer--classes-list{position:relative;height:100%;width:384px;padding-left:24px;padding-top:8px;overflow-y:scroll}.ibo-datamodel-viewer--lifecycle--code{color:#6e7a8a}.ibo-datamodel-viewer--lifecycle--stimuli{color:#2a4265}.ibo-datamodel-viewer--lifecycle--attribute-option{color:#702459}.dataModelSchema g{cursor:pointer}.dataModelSchema g:hover rect:not(.liseret){fill:#ccd4db}.dataModelSchema text{fill:#212934;text-anchor:middle}#selfreferencing:hover~g>.selfattr{fill:#ccd4db}.tooltipD3{position:fixed;text-align:center;background:white;border:1px solid #6e7a8a;border-radius:3px;pointer-events:none;fill:#212934;text-anchor:middle}.tooltipD3 i{font-size:1rem}.tooltipD3 span{margin:3px}#tooltipD3_top{border-bottom:1px solid #6e7a8a;padding:3px}.ibo-datamodel-viewer--lifecycle-image{margin-bottom:16px}#tabs1-import .ibo-field--label{max-width:50%}div.ibo-csv-import--cell-modified{font-weight:bold;color:#2b6bb0}div.ibo-csv-import--cell-error{font-weight:bold;color:#c53030}div.ibo-csv-import--cell-message{padding-top:3px}tr.ibo-csv-import--row-unchanged td{border-bottom:1px #ccd4db solid}.wizContainer table tr.ibo-csv-import--row-error td{border-bottom:1px #ccd4db solid;background-color:#fed7d7}tr.ibo-csv-import--row-modified td{border-bottom:1px #ccd4db solid}tr.ibo-csv-import--row-added td{border-bottom:1px #ccd4db solid}.ibo-csv-import--download-file{font-size:4em;color:#f6ae55;margin:20px}.ibo-global-search--result--title>img{max-height:48px;max-width:48px;margin-right:8px}.ibo-run-query--highlight{background-color:#fbd38d}.ibo-oauth-wizard .ibo-panel--body .ibo-oauth-wizard--form--container{display:flex;flex-direction:row;flex-grow:1}.ibo-oauth-wizard .ibo-panel--body .ibo-oauth-wizard--illustration svg{max-height:384px}#ibo-oauth-wizard--conf--result{white-space:pre-wrap}.ibo-notifications--view-all--container{display:grid;grid-gap:24px}.ibo-notifications--view-all--container .ibo-object-summary .ibo-panel--title{font-size:1.5rem}.ibo-notifications--view-all--container .ibo-object-summary .ibo-panel--toolbar{min-width:96px}.ibo-notifications--view-all--container .ibo-object-summary>.ibo-panel--body{box-shadow:none;max-height:400px}.ibo-notifications--view-all--container .ibo-object-summary+.ibo-object-summary{margin-top:0}@media screen and (max-width:768px){.ibo-notifications--view-all--container{grid-template-columns:repeat(1, 1fr)}}@media screen and (min-width:1024px){.ibo-notifications--view-all--container{grid-template-columns:repeat(2, 1fr)}}@media screen and (min-width:1408px){.ibo-notifications--view-all--container{grid-template-columns:repeat(3, 1fr)}}.ibo-notifications--view-all--toolbar{justify-content:space-between}.ibo-notifications--view-all--toggler{display:flex;align-content:center}.ibo-notifications--view-all--item--read .ibo-panel--body::before{background-color:#e1e7ec}.ibo-notifications--view-all--item--unread .ibo-panel--body::before{background-color:#e53e3e}.ibo-notifications--view-all--container .ibo-notifications--view-all--read-action,.ibo-notifications--view-all--container .ibo-notifications--view-all--unread-action{margin-left:0 !important}.ibo-notifications--view-all--item--read .ibo-notifications--view-all--read-action{display:none}.ibo-notifications--view-all--item--unread .ibo-notifications--view-all--unread-action{display:none}.ibo-notifications--view-all--empty{flex-direction:column;margin-top:96px}.ibo-notifications--view-all--empty svg{max-width:30%;height:auto}.ibo-input-select--notification-item{display:flex !important;flex-direction:row}.ibo-input-select--notification-item--mixed-value{font-size:1rem;color:#9c4221;margin-left:4px}.ibo-alert+.ibo-alert{margin-top:4px}.ibo-alert+.ibo-block:not(.ibo-alert){margin-top:16px}.ibo-button+.ibo-button,.ui-dialog .ui-button+.ibo-button,.ui-dialog .ui-button+.ui-button,.ui-dialog .ui-button+.ui-datepicker-current,.ui-dialog .ui-button+.ui-datepicker-close,.ui-datepicker-current+.ibo-button,.ui-dialog .ui-datepicker-current+.ui-button,.ui-datepicker-current+.ui-datepicker-current,.ui-datepicker-current+.ui-datepicker-close,.ui-datepicker-close+.ibo-button,.ui-dialog .ui-datepicker-close+.ui-button,.ui-datepicker-close+.ui-datepicker-current,.ui-datepicker-close+.ui-datepicker-close,.ui-dialog .ibo-button+.ui-button,.ibo-button+.ui-datepicker-current,.ibo-button+.ui-datepicker-close{margin-left:4px}.ibo-button-group+.ibo-button-group,.ibo-button+.ibo-button-group,.ui-dialog .ui-button+.ibo-button-group,.ui-datepicker-current+.ibo-button-group,.ui-datepicker-close+.ibo-button-group,.ibo-button-group+.ibo-button,.ui-dialog .ibo-button-group+.ui-button,.ibo-button-group+.ui-datepicker-current,.ibo-button-group+.ui-datepicker-close{margin-left:4px}.ibo-collapsible-section+.ibo-collapsible-section{margin-top:12px}.ibo-collapsible-section+.ibo-block:not(.ibo-collapsible-section){margin-top:16px}.ibo-caselog-list .ibo-collapsible-section{margin:0;min-width:22em}.ibo-caselog-list .ibo-collapsible-section .ibo-collapsible-section--body{color:#212934;padding:8px;background-color:rgba(248, 249, 250, 0.5)}.ibo-alert--body .ibo-collapsible-section .ibo-collapsible-section--body{color:#212934;padding:8px}.ibo-alert--body>*+.ibo-collapsible-section{margin-top:8px}.ibo-datatable+.ibo-block{margin-top:4px}.ibo-panel .ibo-panel--body .ibo-datatable{width:100%}.display_block+.display_block{margin-top:24px}.display_block+.ibo-block:not(.display_block){margin-top:16px}.ibo-field+.ibo-field:not(:empty){margin-top:16px}.form_field+.form_field{margin-top:16px}.ibo-fieldset+.ibo-field,fieldset+.ibo-field{margin-top:32px}.ibo-field+.ibo-fieldset:not(.ibo-column),.ibo-field+fieldset:not(.ibo-column){margin-top:32px}.ibo-fieldset+.ibo-fieldset:not(.ibo-column),fieldset+.ibo-fieldset:not(.ibo-column),.ibo-fieldset+fieldset:not(.ibo-column){margin-top:48px}.ibo-multi-column+.ibo-fieldset,.ibo-multi-column+fieldset{margin-top:48px}.ibo-form+.ibo-form{margin-top:24px}select+label,label+select,label>select,input+label,label+input,label>input{margin-left:8px}.ibo-datatable .attribute-set .attribute-set-item{display:inline;margin:0;padding:4px 6px;box-shadow:0 1px 2px rgba(0, 0, 0, 0.25), 0 1px 3px rgba(0, 0, 0, 0.12)}.ibo-datatable .attribute-set .attribute-set-item+.attribute-set-item{margin-left:0.5rem}.ibo-object-details.ibo-has-medallion-icon>.ibo-panel--body>.ibo-tab-container:not(.ibo-is-vertical)>.ibo-tab-container--tabs-list{padding-left:calc(32px + 96px + 32px - 24px)}.tippy-box[data-theme~="object-summary"]{background-color:rgba(255, 255, 255, 0);color:#212934}.tippy-box[data-theme~="object-summary"] .tippy-arrow{display:none}.ibo-panel+.ibo-panel{margin-top:24px}.ibo-panel+.ibo-block:not(.ibo-panel){margin-top:16px}#ibo-main-content{}#ibo-main-content .ibo-panel.ibo-has-sticky-header{margin-bottom:200px}#ibo-main-content .ibo-panel.ibo-has-sticky-header>.ibo-sticky-sentinel-top{top:-16px;height:16px}#ibo-main-content .ibo-panel.ibo-has-sticky-header>.ibo-panel--header.ibo-is-sticking,#ibo-main-content .ibo-panel.ibo-has-sticky-header>.ibo-is-sticking.ibo-object-summary--header{top:-16px}.ui-dialog-content{}.ui-dialog-content .ibo-panel.ibo-has-sticky-header{}.ui-dialog-content .ibo-panel.ibo-has-sticky-header>.ibo-sticky-sentinel-top{top:-16px;height:16px}.ui-dialog-content .ibo-panel.ibo-has-sticky-header>.ibo-panel--header.ibo-is-sticking,.ui-dialog-content .ibo-panel.ibo-has-sticky-header>.ibo-is-sticking.ibo-object-summary--header{top:-16px}.ibo-pill:not(:last-child){margin-right:16px}.ibo-dashboard--grid-row .ibo-dashlet-header-static{margin-top:12px}.ibo-dashboard--grid-row:first-child .ibo-dashlet:first-child .ibo-dashlet-header-static{margin-top:0}.ibo-details .ibo-prop--apply>span,.ibo-details .ibo-prop--cancel>span{display:unset}.ibo-details .ibo-prop--apply{display:table-column}.ibo-activity-panel--tab-entry-form .ibo-caselog-entry-form{padding-bottom:14px;border-bottom:1px solid #aebecd}.ibo-panel{}.ibo-panel>.ibo-panel--body>.ibo-tab-container{margin-top:-24px;margin-left:-16px;margin-right:-16px;margin-bottom:-24px}.ibo-panel>.ibo-panel--body>.ibo-tab-container>.ibo-tab-container--tab-container-list{height:100%;overflow-y:auto;flex-grow:1}.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical{display:flex;flex-direction:row}.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list{padding-top:48px;flex-direction:column;height:auto;padding-left:unset;margin-right:unset;min-width:calc(32px + 90px + 32px)}.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list>.ibo-tab-container--tab-header,.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list>.ibo-tab-container--extra-tabs-container{height:48px;width:100%;justify-content:left}.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list>.ibo-tab-container--tab-header>.ibo-tab-container--tab-toggler,.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list>.ibo-tab-container--extra-tabs-container>.ibo-tab-container--tab-toggler,.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list>.ibo-tab-container--tab-header>.ibo-tab-container--extra-tabs-list-toggler,.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tabs-list>.ibo-tab-container--extra-tabs-container>.ibo-tab-container--extra-tabs-list-toggler{width:100%;justify-content:left}.ibo-panel>.ibo-panel--body>.ibo-tab-container.ibo-is-vertical>.ibo-tab-container--tab-container{flex-grow:1;margin-left:unset}.ibo-panel.ibo-has-sticky-header>.ibo-panel--body>.ibo-tab-container>.ibo-tab-container--tabs-list.ibo-is-sticking{position:fixed;z-index:10}.ibo-panel.ibo-has-sticky-header>.ibo-panel--body>.ibo-tab-container:not(.ibo-is-vertical)>.ibo-tab-container--tabs-list.ibo-is-sticking{padding-left:0}.ibo-panel.ibo-has-sticky-header>.ibo-panel--body>.ibo-tab-container:not(.ibo-is-vertical)>.ibo-tab-container--tabs-list.ibo-is-sticking .ibo-tab-container--tab-toggler,.ibo-panel.ibo-has-sticky-header>.ibo-panel--body>.ibo-tab-container:not(.ibo-is-vertical)>.ibo-tab-container--tabs-list.ibo-is-sticking .ibo-tab-container--extra-tabs-list-toggler,.ibo-panel.ibo-has-sticky-header>.ibo-panel--body>.ibo-tab-container:not(.ibo-is-vertical)>.ibo-tab-container--tabs-list.ibo-is-sticking .ibo-tab-container--extra-tabs-list-toggler{font-size:1rem}.ibo-block-list--medallion{flex-direction:column;align-items:center}.ibo-block-list--medallion>.ibo-medallion-icon--image{margin:0 auto}.ibo-block-list--medallion>.ibo-medallion-icon--image~.ibo-medallion-icon--description{margin-top:12px}.ibo-block-list--medallion>.ibo-medallion-icon--description{flex-grow:1;text-align:center}.ibo-datatable .ibo-field-badge{margin:0;padding:0;color:unset;background-color:unset}.ibo-datatable .ibo-field-badge::before{content:"";display:inline-flex;margin-right:0.5rem;width:10px;height:10px;min-width:10px;min-height:10px;background-color:var(--ibo-main-color)}.ibo-datatable .ibo-field-badge .ibo-field-badge--decoration{display:none}.ibo-datatable .ibo-field-badge .ibo-field-badge--decoration+.ibo-field-badge--label{margin-left:unset}.ui-dialog .blockUI.blockOverlay{background-color:white}.ibo-datatable .blockUI.blockOverlay{background-color:white}.ibo-datatable .blockUI.blockMsg{font-size:2em}.ibo-badge+.ibo-badge{margin-left:4px}.ibo-extension-details+.ibo-extension-details,.ibo-extension-details--information--description .ibo-extension-details{margin-top:8px}.ibo-svg-illustration--container>svg *[fill="#6c63ff"]{fill:#ea7d1e}.ibo-navigation-menu.ibo-is-active .ibo-navigation-menu--drawer{transform:translate3d(0, 0, 0)}.switch{position:relative;display:inline-block;width:36px;height:20px;vertical-align:baseline}.switch input{display:none}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#929fb1;transition:0.4s}.slider:before{position:absolute;content:"";height:15px;width:15px;left:3px;bottom:3px;background-color:#d5dde5;transition:0.4s}input:checked+.slider{background-color:#dd6c20}input:focus+.slider{box-shadow:0 0 1px #dd6c20}input:checked+.slider:before{transform:translateX(14.5px)}.slider.round{border-radius:20px}.slider.round:before{border-radius:7px}.ibo-is-html-content blockquote{color:#212934}.center{text-align:center}.hidden{display:none}@keyframes progress_bar_color_ongoing{from{background-color:#FBD38D}to{background-color:#FEEBC8}}@-webkit-keyframes bg-pan-left{0%{background-position:100% 50%}100%{background-position:0 50%}}@keyframes bg-pan-left{0%{background-position:100% 50%}100%{background-position:0 50%}}body{display:flex;flex-direction:column;background-color:#f8f9fa;color:#212934;margin:0;padding:0;font-size:10pt;font-family:Tahoma, Verdana, Arial, Helvetica, serif;overflow-y:auto}h1{color:#555555;font-size:16pt}h2{color:#212934;font-size:14pt;font-weight:normal}h3{color:#1C94C4;font-size:12pt;font-weight:bold}a{color:#1c94c4;text-decoration:none}a:hover{color:#EA7D1E}.itop-setup--message{margin-top:16px}.next{width:100%;text-align:right}.v-spacer{padding-top:1em}button{margin-top:1em;padding-left:1em;padding-right:1em}p.info{padding-left:50px;background:url(../images/info-mid.png) no-repeat left -5px;min-height:48px}p.ok{padding-left:50px;background:url(../images/clean-mid.png) no-repeat left -8px;min-height:48px}p.warning{padding-left:50px;background:url(../images/messagebox_warning-mid.png) no-repeat left -5px;min-height:48px}p.error{padding-left:50px;background:url(../images/stop-mid.png) no-repeat left -5px;min-height:48px}label{cursor:pointer}td.label{text-align:left}label.read-only{color:#666;cursor:text}td.input{text-align:left}table.formTable{border:0}.wizlabel,.wizinput{color:#000;font-size:10pt}.wizhelp{color:#333;font-size:8pt}#progress{border:none;width:210px;height:26px;line-height:26px;text-align:center;margin:5px;box-shadow:inset 0 2px 4px 0 rgba(0, 0, 0, 0.06) !important;border-radius:2px;background-color:#EDF2F7 !important}#progress .progress{color:#000000 !important;background-image:linear-gradient(270deg, #FBD38D 50%, #FEEBC8 55%, #FBD38D 80%) !important;animation:bg-pan-left 3s infinite both;background-size:600% 100%;border-radius:inherit}#progress .progress.progress-error{background-image:none !important;background-color:#F56565 !important;animation:none}h3.clickable{background:url(../images/plus.gif) no-repeat left;padding-left:16px;cursor:hand}h3.clickable.open{background:url(../images/minus.gif) no-repeat left;padding-left:16px;cursor:hand}.message{color:#1A202C;background-color:#F7FAFC;border-left:4px solid #4A5568;padding:10px;font-size:initial}.message>.message-title{font-weight:bold;margin-right:5px}.message.message-valid{color:#276749;background-color:#F0FFF4;border-color:#48BB78}.message.message-warning{color:#C05621;background-color:#FFFAF0;border-color:#ED8936}.message.message-error{color:#C53030;background-color:#FFF5F5;border-color:#E53E3E}*:not(.message)+.message{margin-top:6px}.text-valid{color:#276749}.text-warning{color:#C05621}.text-error{color:#C53030}fieldset{border:none;padding:0;margin:15px 0 0 0}fieldset>legend{margin-bottom:7px;padding-bottom:7px;width:100%;color:#3C3C3C;font-size:11pt;font-weight:bold;border-bottom:1px solid #D2D2D2}.module-selection-banner img{max-height:48px}.module-selection-body{overflow:auto;box-shadow:inset 0 2px 4px 0 rgba(0, 0, 0, 0.06) !important;background-color:#F7FAFC;padding:10px}.module-selection-body .wiz-choice:not(:checked)~label .checked{display:none}.module-selection-body .wiz-choice:checked~label .unchecked{display:none}.ibo-extension-details:has(> .ibo-extension-details--actions>input:checked) .ibo-extension-details:has(#itop-ticket-mgmt-simple-ticket-enhanced-portal:not(:checked), #itop-ticket-mgmt-itil-enhanced-portal:not(:checked)) .ibo-extension-details--information--description::after{content:"Legacy portal is no longer part of iTop, by leaving this option unchecked your portal users won't be able to access iTop anymore.";display:block;margin-top:0.5em;font-weight:bold;color:#e60000b8}.ibo-extension-details--information--metadata{color:#404b5a}.choice-disabled{color:#6e7a8a}body{font-size:1.17rem;font-family:"Raleway"}#ibo_setup_container{width:800px;margin-left:auto;margin-right:auto;height:100%;display:flex;flex-direction:column;padding:20px 0}#ibo_setup_container pre{white-space:pre-wrap}#ibo_setup_container .ibo-title h2{margin-bottom:15px}#ibo_setup_container .ibo-setup--header{background-color:#fff;padding:0 20px;border:3px solid #ccd4db;height:80px;border-bottom:none;border-radius:3px 3px 0 0}#ibo_setup_container .ibo-setup--header .ibo-title--icon{border:0;vertical-align:middle;margin-right:20px}#ibo_setup_container .ibo-setup--body{display:flex;flex-direction:column;background-color:#fff;padding:20px;border:3px solid #ccd4db;border-top:none;flex-grow:1;overflow:auto;border-radius:0 0 3px 3px}#ibo_setup_container .ibo-setup--body .ibo-setup--wizard{width:100%;display:flex;flex-direction:column;height:100%}#ibo_setup_container .ibo-setup--body .ibo-setup--wizard .ibo-setup--wizard--content{overflow:auto}#ibo_setup_container .ibo-setup--body .ibo-setup--wizard .ibo-setup--wizard--buttons-container{margin-top:auto}#ibo_setup_container .ibo-setup--body .ibo-setup--wizard .ibo-setup--wizard--buttons-container tr{display:flex;justify-content:flex-end}#ibo_setup_container .ibo-setup--body .ibo-setup--wizard .ibo-setup--wizard--buttons-container button{margin-left:8px}#ibo_setup_container .ibo-setup--body .itop-setup--message{margin-top:16px}#ibo_setup_container .ibo-setup--body .ibo-setup--button-bar{margin-top:16px}#ibo_setup_container .ibo-setup--body .ibo-setup--button-bar .ibo-setup--button-spacer{flex-grow:1}#ibo_setup_container .ibo-setup--body .ibo-setup--js-error{overflow:auto;max-height:100px;color:#9b2c2c;font-size:1rem}#ibo_setup_container .ibo-setup--body .ibo-setup--upgrade-info{margin-top:5px}#ibo_setup_container .ibo-setup--body .ibo-fieldset,#ibo_setup_container .ibo-setup--body fieldset{margin-top:12px}#ibo_setup_container .ibo-setup--body .ibo-fieldset~.ibo-fieldset,#ibo_setup_container .ibo-setup--body fieldset~.ibo-fieldset,#ibo_setup_container .ibo-setup--body .ibo-fieldset~fieldset,#ibo_setup_container .ibo-setup--body fieldset~fieldset{margin-top:12px}#ibo_setup_container .ibo-setup--body .ibo-field{margin-top:5px}#ibo_setup_container .ibo-setup--body .ibo-setup--small-field-label .ibo-field--label{width:15%}#ibo_setup_container .ibo-setup--body .ibo-field--comments{font-size:1rem;color:#6e7a8a;text-align:left;width:100%;padding-left:10px}#ibo_setup_container .ibo-setup--body .ibo-alert{padding:7px 20px}#ibo_setup_container .ibo-setup--body .ibo-setup--small-message{font-size:1rem;color:#6e7a8a}#ibo_setup_container .ibo-setup--body .ibo-collapsible-section{margin:10px 0 0 0}#ibo_setup_container .ibo-setup--body .ibo-collapsible-section.ibo-setup--small .ibo-collapsible-section--header .ibo-collapsible-section--title{font-size:1.17rem;font-weight:400;color:#6e7a8a}#ibo_setup_container .ibo-setup--body .ibo-collapsible-section .ibo-collapsible-section--body{max-height:400px;overflow:auto}#ibo_setup_container .ibo-setup--body .ibo-input,#ibo_setup_container .ibo-setup--body .ui-autocomplete-input,#ibo_setup_container .ibo-setup--body .ui-multiselect,#ibo_setup_container .ibo-setup--body .dataTables_length select,.dataTables_length #ibo_setup_container .ibo-setup--body select,#ibo_setup_container .ibo-setup--body .ui_tpicker_hour_slider>select,#ibo_setup_container .ibo-setup--body .ui_tpicker_minute_slider>select,#ibo_setup_container .ibo-setup--body .ui_tpicker_second_slider>select,#ibo_setup_container .ibo-setup--body select.ibo-input-select-placeholder,#ibo_setup_container .ibo-setup--body .ibo-datatableconfig--attributes-panel--per-page--input,#ibo_setup_container .ibo-setup--body .search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content input[type="text"],.search_form_handler .sf_criterion_area .search_form_criteria .sfc_form_group .sfc_fg_operators .sfc_fg_operator .sfc_op_content #ibo_setup_container .ibo-setup--body input[type="text"],#ibo_setup_container .ibo-setup--body .search_form_handler .sf_filter .sff_input_wrapper input[type="text"],.search_form_handler .sf_filter .sff_input_wrapper #ibo_setup_container .ibo-setup--body input[type="text"]{width:auto;display:inline-block}#ibo_setup_container .ibo-setup--body table td{white-space:nowrap;line-height:2.5rem;padding-right:8px;padding-bottom:1rem}#ibo_setup_container .ibo-setup--body .setup-content-title,#ibo_setup_container .ibo-setup--body h2{margin-bottom:18px}.ibo-setup--button-bar{margin-top:16px}.ibo-setup--button-bar .ibo-setup--full-width{width:100%}.ibo-setup--button-bar .ibo-setup--full-width{width:100%}.ibo-setup-summary-title,.ibo-setup-summary-title:visited,.ibo-setup-summary-title:hover{font-size:1.17rem;color:inherit}#ibo-setup-licenses--components-list{background-color:#f2f2f2;padding:12px;box-shadow:inset 0px 2px 4px 1px rgba(0, 0, 0, 0.15)}.setup-prefix-toggler--input--container,.setup-tls--input--container,.setup-disk-location--input--container,.setup-backup--input--container{display:flex;line-height:2.5rem;margin:1rem 0}.setup-prefix-toggler--input--container input,.setup-tls--input--container input,.setup-disk-location--input--container input,.setup-backup--input--container input{margin:0 8px}.setup-disk-location--input--container input,.setup-backup--input--container input{flex-grow:1}.collapsable-options{margin-bottom:18px}.collapsable-options [data-role="setup-collapsable-options--toggler"]::before{margin-right:8px;cursor:pointer}.collapsable-options:not(.setup-is-opened) [data-role="setup-collapsable-options--toggler"]::before{content:""}.collapsable-options.setup-is-opened [data-role="setup-collapsable-options--toggler"]::before{content:""}.setup-input--hint--icon{color:#6e7a8a}.setup-invalid-field--icon{color:#c53030;margin-left:8px}.setup-accept-licenses{margin-top:18px}.module-selection-banner{display:flex}.module-selection-banner>img{margin-right:12px}.setup-end-placeholder{display:flex;flex-direction:row;align-items:center}.setup-end-placeholder>div{padding:0px 15px}.setup-end-placeholder a{display:flex;flex-direction:column;align-items:center}.setup-end-placeholder a svg{max-height:150px;margin-bottom:15px;width:auto}.setup-extension--icon{margin-right:5px;color:#2b6bb0;font-size:1.33rem}.setup-extension--missing .setup-extension--icon{color:#a00000}.setup-extension-tag{display:inline-flex;background-color:grey;border-radius:8px;padding-left:3px;padding-right:3px;margin-right:3px}.setup-extension-tag.installed{background-color:#9eff9e}.setup-extension-tag.notinstalled{background-color:#ed9eff}.setup-extension-tag.tobeinstalled{background-color:#9ef0ff}.setup-extension-tag.tobeuninstalled{background-color:#ff9e9e}.setup-extension-tag.notuninstallable{background-color:#ffc98c}.setup-extension-tag.removed{background-color:#969594}.ibo-extension-details{align-items:flex-start}.ibo-extension-details--actions input{margin:0.2em 0.5em;width:12px}:not(.ibo-badge)~.ibo-badge{margin-left:0.5em}.ibo-extension-details--information--label i{font-size:0.9em;margin-left:0.3em}.setup--wizard-choice--label+.setup--wizard-choice--more-info{margin-left:0.5rem}#params_summary{overflow:auto}#params_summary div{width:100%;margin-top:0;padding-top:0.5em;padding-left:0}#params_summary div ul{margin-left:0;padding-left:40px}#params_summary div.closed ul{display:none}#params_summary div li{list-style:none;width:100%;margin-left:0;padding-left:0em}.title{padding-left:20px;font-weight:bold;cursor:pointer}#params_summary div.closed .title::before{margin-right:5px;content:""}#params_summary div:not(.closed) .title::before{margin-right:5px;content:""}#progress_content *:not(.message)+.message{margin-top:1.5rem}#fresh_content{border:0;min-height:300px;min-width:600px;display:none;margin-left:auto;margin-right:auto}
\ No newline at end of file
diff --git a/datamodels/2.x/combodo-backoffice-darkmoon-theme/dictionaries/zh_cn.dict.combodo-backoffice-darkmoon-theme.php b/datamodels/2.x/combodo-backoffice-darkmoon-theme/dictionaries/zh_cn.dict.combodo-backoffice-darkmoon-theme.php
index 45857d5b93..608d28d354 100644
--- a/datamodels/2.x/combodo-backoffice-darkmoon-theme/dictionaries/zh_cn.dict.combodo-backoffice-darkmoon-theme.php
+++ b/datamodels/2.x/combodo-backoffice-darkmoon-theme/dictionaries/zh_cn.dict.combodo-backoffice-darkmoon-theme.php
@@ -22,5 +22,5 @@
* along with iTop. If not, see
*/
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'theme:darkmoon' => '暗月',
+ 'theme:darkmoon' => 'Dark moon',
]);
diff --git a/datamodels/2.x/combodo-backoffice-fullmoon-high-contrast-theme/dictionaries/zh_cn.dict.combodo-backoffice-fullmoon-high-contrast-theme.php b/datamodels/2.x/combodo-backoffice-fullmoon-high-contrast-theme/dictionaries/zh_cn.dict.combodo-backoffice-fullmoon-high-contrast-theme.php
index de73ad883e..d1325947c3 100644
--- a/datamodels/2.x/combodo-backoffice-fullmoon-high-contrast-theme/dictionaries/zh_cn.dict.combodo-backoffice-fullmoon-high-contrast-theme.php
+++ b/datamodels/2.x/combodo-backoffice-fullmoon-high-contrast-theme/dictionaries/zh_cn.dict.combodo-backoffice-fullmoon-high-contrast-theme.php
@@ -23,5 +23,5 @@
*/
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'theme:fullmoon-high-contrast' => 'Fullmoon (High contrast)~~',
+ 'theme:fullmoon-high-contrast' => 'Fullmoon (高对比度)',
]);
diff --git a/datamodels/2.x/combodo-backoffice-fullmoon-protanopia-deuteranopia-theme/dictionaries/zh_cn.dict.combodo-backoffice-fullmoon-protanopia-deuteranopia-theme.php b/datamodels/2.x/combodo-backoffice-fullmoon-protanopia-deuteranopia-theme/dictionaries/zh_cn.dict.combodo-backoffice-fullmoon-protanopia-deuteranopia-theme.php
index 3d59b91f7e..c2d3913c18 100644
--- a/datamodels/2.x/combodo-backoffice-fullmoon-protanopia-deuteranopia-theme/dictionaries/zh_cn.dict.combodo-backoffice-fullmoon-protanopia-deuteranopia-theme.php
+++ b/datamodels/2.x/combodo-backoffice-fullmoon-protanopia-deuteranopia-theme/dictionaries/zh_cn.dict.combodo-backoffice-fullmoon-protanopia-deuteranopia-theme.php
@@ -23,5 +23,5 @@
*/
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'theme:fullmoon-protanopia-deuteranopia' => 'Fullmoon (Protanopia & Deuteranopia)~~',
+ 'theme:fullmoon-protanopia-deuteranopia' => 'Fullmoon (红绿色盲 & 绿色色盲)',
]);
diff --git a/datamodels/2.x/combodo-backoffice-fullmoon-tritanopia-theme/dictionaries/zh_cn.dict.combodo-backoffice-fullmoon-tritanopia-theme.php b/datamodels/2.x/combodo-backoffice-fullmoon-tritanopia-theme/dictionaries/zh_cn.dict.combodo-backoffice-fullmoon-tritanopia-theme.php
index 1075b9c9f8..16ad899878 100644
--- a/datamodels/2.x/combodo-backoffice-fullmoon-tritanopia-theme/dictionaries/zh_cn.dict.combodo-backoffice-fullmoon-tritanopia-theme.php
+++ b/datamodels/2.x/combodo-backoffice-fullmoon-tritanopia-theme/dictionaries/zh_cn.dict.combodo-backoffice-fullmoon-tritanopia-theme.php
@@ -23,5 +23,5 @@
*/
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'theme:fullmoon-tritanopia' => 'Fullmoon (Tritanopia)~~',
+ 'theme:fullmoon-tritanopia' => 'Fullmoon (蓝黄色盲)',
]);
diff --git a/datamodels/2.x/combodo-data-feature-removal/src/Controller/DataFeatureRemovalController.php b/datamodels/2.x/combodo-data-feature-removal/src/Controller/DataFeatureRemovalController.php
index bac4fb5362..a58e2377a9 100644
--- a/datamodels/2.x/combodo-data-feature-removal/src/Controller/DataFeatureRemovalController.php
+++ b/datamodels/2.x/combodo-data-feature-removal/src/Controller/DataFeatureRemovalController.php
@@ -25,8 +25,8 @@ use CoreException;
use Dict;
use Exception;
use MetaModel;
+use MFCompiler;
use RunTimeEnvironment;
-use SecurityException;
use SetupUtils;
use utils;
@@ -84,11 +84,8 @@ class DataFeatureRemovalController extends Controller
{
$aParams = [];
- try {
- //from setup wizard/mtp
- SetupUtils::CheckSetupToken();
- SetupUtils::EraseSetupToken();
- } catch (SecurityException $e) {
+ //from setup wizard/mtp
+ if (!SetupUtils::IsSessionSetupTokenValid()) {
//from same module
$this->ValidateTransactionId();
}
@@ -97,12 +94,15 @@ class DataFeatureRemovalController extends Controller
$aHiddenInputNames = [
'selected_extensions' => '[]',
'selected_modules' => '[]',
- 'display_choices' => '[]',
+ 'display_choices' => '',
'added_extensions' => '[]',
'removed_extensions' => '[]',
'extensions_not_uninstallable' => '[]',
'copy_setup_files' => 1,
+ 'force-uninstall' => "",
+ 'use_symbolic_links' => MFCompiler::UseSymbolicLinks() ? 'on' : '',
'return_button_label' => '',
+ 'target_env' => ITOP_DEFAULT_ENV,
];
$aHiddenInputs = [];
@@ -122,6 +122,7 @@ class DataFeatureRemovalController extends Controller
//it does not come from setup
// we get extensions from 1st screen uiblocks
$this->ReadExtensionsDiff();
+ $aHiddenInputs['force-uninstall'] = $this->bForcedUninstallation ? 'on' : '';
$aAddedExtensions = $this->aExtensionsToCheck['to_be_installed'];
$aHiddenInputs['added_extensions'] = $this->ConvertIntoSetupFormat($aAddedExtensions);
@@ -144,7 +145,7 @@ class DataFeatureRemovalController extends Controller
$bForceCompilation = Session::Get('bForceCompilation', false);
try {
- $this->Compile($aRemoveExtensionCodes, $bForceCompilation);
+ $this->Compile($aAddedExtensions, $aRemoveExtensionCodes, $bForceCompilation);
} catch (CoreException $e) {
$aParams['DataFeatureRemovalErrorMessage'] = $e->getHtmlDesc();
$this->DisplayPage($aParams, 'AnalysisResult');
@@ -158,10 +159,10 @@ class DataFeatureRemovalController extends Controller
if ("[]" === $aHiddenInputs['selected_modules']) {
//to make setup redirection work, we need to pass complex data structures to setup wizards (ie extension/module lists)
$oConfig = MetaModel::GetConfig();
- $aSelectedExtensions = DataFeatureRemoverExtensionService::GetInstance()->GetExtensionMap()->GetSelectedExtensions($oConfig, $aAddedExtensions, $aRemovedExtensions);
+ $aSelectedExtensions = DataFeatureRemoverExtensionService::GetInstance()->GetExtensionMap()->GetSelectedExtensions($oConfig, array_keys($aAddedExtensions), array_keys($aRemovedExtensions));
$aHiddenInputs['selected_extensions'] = $this->ConvertIntoSetupFormat($aSelectedExtensions);
- $oRunTimeEnvironment = $this->GetRuntimeEnvironment($aRemovedExtensions);
+ $oRunTimeEnvironment = $this->GetRuntimeEnvironment($aAddedExtensions, $aRemovedExtensions);
$aSearchDirs = [$oRunTimeEnvironment->GetBuildDir()];
$aSelectedModules = $oRunTimeEnvironment->GetModulesToLoadFromChoices($oConfig, $aSelectedExtensions, $aSearchDirs);
$aHiddenInputs['selected_modules'] = $this->ConvertIntoSetupFormat($aSelectedModules);
@@ -179,7 +180,6 @@ class DataFeatureRemovalController extends Controller
$aParams['aSetupParams'] = [
"_class" => "WizStepLandingBeforeAudit",
"operation" => "next",
- "_params[authent]" => SetupUtils::CreateSetupToken(),
];
foreach ($aHiddenInputs as $sInputName => $sInputValue) {
@@ -195,22 +195,32 @@ class DataFeatureRemovalController extends Controller
$aParams['bDeletionNeeded'] = ($aParams['iQueryCount'] > 0);
Session::Set('aDeletionExecutionSummary', serialize($this->aDeletionExecutionSummary));
+ if (!$aParams['bDeletionNeeded']) {
+ SetupUtils::CreateSetupToken();
+ }
+
$this->DisplayPage($aParams, 'AnalysisResult');
}
private function ConvertIntoSetupFormat(array $aData): string
{
- return json_encode($aData);
+ $aNewData = [];
+ foreach ($aData as $k => $sVal) {
+ $aNewData[] = sprintf('"%s":"%s"', $k, $sVal);
+ }
+
+ return "{".implode(',', $aNewData)."}";
}
/**
+* @param array $aAddedExtensions
* @param array $aRemovedExtensions
* @param bool $bForceCompilation
* @return void
* @throws \ConfigException
* @throws \CoreException
*/
- private function Compile(array $aRemovedExtensions, bool $bForceCompilation = true): void
+ private function Compile(array $aAddedExtensions, array $aRemovedExtensions, bool $bForceCompilation = true): void
{
$sSourceEnv = MetaModel::GetEnvironment();
$sBuildDir = APPROOT."/env-$sSourceEnv-build";
@@ -225,15 +235,15 @@ class DataFeatureRemovalController extends Controller
null,
['sSourceEnv' => $sSourceEnv, 'sBuildDir' => $sBuildDir, 'bIsDirEmpty' => $bIsDirEmpty, glob("$sBuildDir/*")]
);
- $this->GetRuntimeEnvironment($aRemovedExtensions)->CompileFrom($sSourceEnv);
+ $this->GetRuntimeEnvironment($aAddedExtensions, $aRemovedExtensions)->CompileFrom($sSourceEnv);
}
}
- private function GetRuntimeEnvironment(array $aRemovedExtensions): RunTimeEnvironment
+ private function GetRuntimeEnvironment(array $aAddedExtensions, array $aRemovedExtensions): RunTimeEnvironment
{
if (is_null($this->oRuntimeEnvironment)) {
$sSourceEnv = MetaModel::GetEnvironment();
- $this->oRuntimeEnvironment = new DryRemovalRuntimeEnvironment($sSourceEnv, $aRemovedExtensions);
+ $this->oRuntimeEnvironment = new DryRemovalRuntimeEnvironment($sSourceEnv, $aAddedExtensions, $aRemovedExtensions);
}
return $this->oRuntimeEnvironment;
@@ -426,7 +436,7 @@ class DataFeatureRemovalController extends Controller
$aExtensionData['extra_flags']['selected'] = false;
$sLabel = $aAvailableExtensions[$sCode]['label'];
$this->aExtensionsToCheck['to_be_removed'][$sCode] = $sLabel;
- if (!$aExtensionData['extra_flags']['uninstallable'] || $aExtensionData['extra_flags']['remote']) {
+ if (! $this->bForcedUninstallation && $aExtensionData['extra_flags']['uninstallable']) {
$this->bForcedUninstallation = true;
}
} elseif (!$aExtensionData['installed'] && $aSelectedExtensionsFromUI[$sCode] === 'on') {
diff --git a/datamodels/2.x/combodo-data-feature-removal/src/Service/DataFeatureRemoverExtensionService.php b/datamodels/2.x/combodo-data-feature-removal/src/Service/DataFeatureRemoverExtensionService.php
index e25c5a755a..3e3f207339 100644
--- a/datamodels/2.x/combodo-data-feature-removal/src/Service/DataFeatureRemoverExtensionService.php
+++ b/datamodels/2.x/combodo-data-feature-removal/src/Service/DataFeatureRemoverExtensionService.php
@@ -66,7 +66,7 @@ class DataFeatureRemoverExtensionService
public function GetExtensionMap(): iTopExtensionsMap
{
if (is_null($this->oMap)) {
- $this->oMap = new iTopExtensionsMap();
+ $this->oMap = iTopExtensionsMap::GetExtensionsMap();
$this->oMap->LoadInstalledExtensionsFromDatabase(MetaModel::GetConfig());
}
return $this->oMap;
diff --git a/datamodels/2.x/combodo-db-tools/dictionaries/zh_cn.dict.combodo-db-tools.php b/datamodels/2.x/combodo-db-tools/dictionaries/zh_cn.dict.combodo-db-tools.php
index 25efc74abe..4726e700fa 100644
--- a/datamodels/2.x/combodo-db-tools/dictionaries/zh_cn.dict.combodo-db-tools.php
+++ b/datamodels/2.x/combodo-db-tools/dictionaries/zh_cn.dict.combodo-db-tools.php
@@ -4,7 +4,7 @@
* Localized data
*
* @copyright Copyright (C) 2010-2024 Combodo SAS
- * @license https://opensource.org/licenses/AGPL-3.0
+ * @license http://opensource.org/licenses/AGPL-3.0
*
* This file is part of iTop.
*
@@ -21,14 +21,15 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
// Database inconsistencies
Dict::Add('ZH CN', 'Chinese', '简体中文', [
// Dictionary entries go here
- 'Menu:DBToolsMenu' => '数据库工具',
+ 'Menu:DBToolsMenu' => '数据库完整性',
'DBTools:Class' => '类型',
- 'DBTools:Title' => '数据库维护工具',
+ 'DBTools:Title' => '数据库完整性检查',
'DBTools:ErrorsFound' => '发现错误',
- 'DBTools:Indication' => '重要: 修复数据库错误后, 可能会出现新的不一致, 您必须重新运行一次分析.',
+ 'DBTools:Indication' => '重要提示: 修复数据库错误后, 可能会出现新的不一致, 您必须重新运行一次分析.',
'DBTools:Disclaimer' => '免责申明: 在应用修复之前, 应先备份数据库',
'DBTools:Error' => '错误',
'DBTools:Count' => '个数',
@@ -42,17 +43,20 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'DBTools:IntegrityCheck' => '完整性检查',
'DBTools:FetchCheck' => '提取检查 (耗时长)',
'DBTools:SelectAnalysisType' => '请选择分析类型',
+
'DBTools:Analyze' => '分析',
'DBTools:Details' => '显示详情',
'DBTools:ShowAll' => '显示所有错误',
+
'DBTools:Inconsistencies' => '数据库不一致',
'DBTools:DetailedErrorTitle' => '%2$s个错误在类型%1$s: %3$s',
'DBTools:DetailedErrorLimit' => '列表限制为%1$s错误',
+
'DBAnalyzer-Integrity-OrphanRecord' => '孤立记录位于 `%1$s`, 其应该有副本位于表 `%2$s`',
'DBAnalyzer-Integrity-InvalidExtKey' => '无效的外键%1$s (列: `%2$s.%3$s`)',
'DBAnalyzer-Integrity-MissingExtKey' => '外键丢失%1$s (列: `%2$s.%3$s`)',
'DBAnalyzer-Integrity-InvalidValue' => '无效的值%1$s (列: `%2$s.%3$s`)',
- 'DBAnalyzer-Integrity-UsersWithoutProfile' => '一些用户账号没有角色',
+ 'DBAnalyzer-Integrity-UsersWithoutProfile' => '有的账号没有角色',
'DBAnalyzer-Integrity-HKInvalid' => '损坏的层级链 `%1$s`',
'DBAnalyzer-Fetch-Count-Error' => '读取计数出错于 `%1$s`, %2$d个记录已读取 / %3$d已',
'DBAnalyzer-Integrity-FinalClass' => '字段 `%2$s`.`%1$s` 必须是相同的值, 而不是 `%3$s`.`%1$s`',
@@ -70,19 +74,24 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'DBTools:LostAttachments' => '附件缺失',
'DBTools:LostAttachments:Disclaimer' => '可以在此搜索数据库中丢失或错放的附件. 这不是数据恢复工具, 其无法恢复已删除的数据.',
+
'DBTools:LostAttachments:Button:Analyze' => '分析',
'DBTools:LostAttachments:Button:Restore' => '还原',
'DBTools:LostAttachments:Button:Restore:Confirm' => '此操作无法回退, 请确认是否继续还原.',
'DBTools:LostAttachments:Button:Busy' => '请稍候...',
+
'DBTools:LostAttachments:Step:Analyze' => '首先, 通过分析数据库来搜索丢失或误挪动的附件.',
+
'DBTools:LostAttachments:Step:AnalyzeResults' => '分析结果:',
'DBTools:LostAttachments:Step:AnalyzeResults:None' => '非常好! 所有附件都是正常的.',
'DBTools:LostAttachments:Step:AnalyzeResults:Some' => '某些附件 (%1$d) 看起来放错了位置. 请检查下面的列表并选择要挪动的文件.',
'DBTools:LostAttachments:Step:AnalyzeResults:Item:Filename' => '文件名',
'DBTools:LostAttachments:Step:AnalyzeResults:Item:CurrentLocation' => '当前位置',
'DBTools:LostAttachments:Step:AnalyzeResults:Item:TargetLocation' => '移动到...',
+
'DBTools:LostAttachments:Step:RestoreResults' => '还原结果:',
'DBTools:LostAttachments:Step:RestoreResults:Results' => '%1$d/%2$d的附件被还原.',
+
'DBTools:LostAttachments:StoredAsInlineImage' => '存储为内嵌图像',
'DBTools:LostAttachments:History' => '附件 "%1$s" 已使用数据库工具还原',
]);
diff --git a/datamodels/2.x/itop-attachments/dictionaries/zh_cn.dict.itop-attachments.php b/datamodels/2.x/itop-attachments/dictionaries/zh_cn.dict.itop-attachments.php
index 20bb894679..9368be4466 100644
--- a/datamodels/2.x/itop-attachments/dictionaries/zh_cn.dict.itop-attachments.php
+++ b/datamodels/2.x/itop-attachments/dictionaries/zh_cn.dict.itop-attachments.php
@@ -1,15 +1,23 @@
'附件 (%1$d)',
'Attachments:EmptyTabTitle' => '附件',
@@ -39,10 +47,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Attachment' => '附件',
- 'Class:Attachment+' => '',
+ 'Class:Attachment+' => '文件: 链接到单一对象的文本或图片. 它无法被修改,只能被删除. 附件无法在编辑界面之外创建.',
'Class:Attachment/Attribute:expire' => '过期',
'Class:Attachment/Attribute:expire+' => '',
- 'Class:Attachment/Attribute:temp_id' => '临时编号',
+ 'Class:Attachment/Attribute:temp_id' => '临时id',
'Class:Attachment/Attribute:temp_id+' => '',
'Class:Attachment/Attribute:item_class' => '项目类型',
'Class:Attachment/Attribute:item_class+' => '',
@@ -69,11 +77,11 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Attachment/Attribute:creation_date' => '创建日期',
- 'Class:Attachment/Attribute:creation_date+' => '~~',
- 'Class:Attachment/Attribute:user_id' => '用户编号',
- 'Class:Attachment/Attribute:user_id+' => '~~',
- 'Class:Attachment/Attribute:contact_id' => '联系人编号',
- 'Class:Attachment/Attribute:contact_id+' => '~~',
+ 'Class:Attachment/Attribute:creation_date+' => '',
+ 'Class:Attachment/Attribute:user_id' => '用户id',
+ 'Class:Attachment/Attribute:user_id+' => '',
+ 'Class:Attachment/Attribute:contact_id' => '联系人id',
+ 'Class:Attachment/Attribute:contact_id+' => '',
]);
//
@@ -81,15 +89,15 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:TriggerOnAttachmentDownload' => '触发器 (于对象附件下载时)',
- 'Class:TriggerOnAttachmentDownload+' => '触发器于指定类型 [子类型] 对象附件下载时',
- 'Class:TriggerOnAttachmentCreate' => 'Trigger (on object\'s attachment creation)~~',
- 'Class:TriggerOnAttachmentCreate+' => 'Trigger on object\'s attachment creation~~',
- 'Class:TriggerOnAttachmentCreate/Attribute:file_in_email' => 'Add file in email~~',
- 'Class:TriggerOnAttachmentCreate/Attribute:file_in_email+' => 'If checked, the file will be automatically attached to the email when an email action is triggered~~',
- 'Class:TriggerOnAttachmentDelete' => 'Trigger (on object\'s attachment deletion)~~',
- 'Class:TriggerOnAttachmentDelete+' => 'Trigger on object\'s attachment deletion~~',
- 'Class:TriggerOnAttachmentDelete/Attribute:file_in_email' => 'Add deleted file in email~~',
- 'Class:TriggerOnAttachmentDelete/Attribute:file_in_email+' => 'If checked, the deleted file will be automatically attached to the email when an email action is triggered~~',
- 'Class:TriggerOnObject:TriggerClassAttachment/ReadOnlyMessage' => 'Trigger on object is not allowed on class Attachment. Please use specific trigger~~',
+ 'Class:TriggerOnAttachmentDownload' => '触发器 (对象附件被下载时)',
+ 'Class:TriggerOnAttachmentDownload+' => '触发器基于指定类型 [或子类型] 对象附件被下载时',
+ 'Class:TriggerOnAttachmentCreate' => '触发器 (对象附件被创建时)',
+ 'Class:TriggerOnAttachmentCreate+' => '触发器 (对象附件被创建时)',
+ 'Class:TriggerOnAttachmentDelete' => '触发器 (对象附件被删除时)',
+ 'Class:TriggerOnAttachmentDelete+' => '触发器 (对象附件被删除时)',
+ 'Class:TriggerOnAttachmentCreate/Attribute:file_in_email' => '在邮件里添加文件',
+ 'Class:TriggerOnAttachmentCreate/Attribute:file_in_email+' => '如果勾选,文件将在触发邮件操作时自动附加到邮件中',
+ 'Class:TriggerOnAttachmentDelete/Attribute:file_in_email' => '在邮件里添加已删除的文件',
+ 'Class:TriggerOnAttachmentDelete/Attribute:file_in_email+' => '如果勾选,已删除的文件将在触发邮件操作时自动附加到邮件中',
+ 'Class:TriggerOnObject:TriggerClassAttachment/ReadOnlyMessage' => '此触发器不允许用于附件. 请使用特定的触发器',
]);
diff --git a/datamodels/2.x/itop-backup/dictionaries/zh_cn.dict.itop-backup.php b/datamodels/2.x/itop-backup/dictionaries/zh_cn.dict.itop-backup.php
index 8837151e60..3b982705b7 100644
--- a/datamodels/2.x/itop-backup/dictionaries/zh_cn.dict.itop-backup.php
+++ b/datamodels/2.x/itop-backup/dictionaries/zh_cn.dict.itop-backup.php
@@ -21,25 +21,28 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
+
'bkp-backup-running' => '备份正在进行, 请稍候...',
'bkp-restore-running' => '还原正在进行, 请稍等...',
- 'Menu:BackupStatus' => '定时备份',
- 'bkp-status-title' => '定时备份',
+
+ 'Menu:BackupStatus' => '备份',
+ 'bkp-status-title' => '备份',
'bkp-status-checks' => '设置与检查',
'bkp-mysqldump-ok' => '已找到 mysqldump : %1$s',
- 'bkp-mysqldump-notfound' => 'mysqldump找不到: %1$s - 请确认它安装在正确的路径, 或者调整'.ITOP_APPLICATION_SHORT.'配置文件的参数mysql_bindir.',
- 'bkp-mysqldump-issue' => 'mysqldump无法运行 (retcode=%1$d): 请确认它安装在正确的路径, 或者调整'.ITOP_APPLICATION_SHORT.'配置文件的参数mysql_bindir',
+ 'bkp-mysqldump-notfound' => 'mysqldump 找不到: %1$s - 请确认它安装在正确的路径, 或者调整'.ITOP_APPLICATION_SHORT.'配置文件的参数 mysql_bindir.',
+ 'bkp-mysqldump-issue' => 'mysqldump 无法运行 (retcode=%1$d): 请确认它安装在正确的路径, 或者调整'.ITOP_APPLICATION_SHORT.'配置文件的参数 mysql_bindir',
'bkp-missing-dir' => '目标目录%1$s找不到',
'bkp-free-disk-space' => '%1$s可用空间位于%2$s',
'bkp-dir-not-writeable' => '%1$s没有写入权限',
'bkp-wrong-format-spec' => '当前文件名格式错误 (%1$s). 默认格式应该是: %2$s',
'bkp-name-sample' => '备份文件将以数据库名, 日期和时间进行命名. 例如: %1$s',
'bkp-week-days' => '在每个%1$s的%2$s进行备份',
- 'bkp-retention' => '最多%1$d份备份文件在目标目录.',
+ 'bkp-retention' => '在目标目录中最多保留%1$d份备份文件.',
'bkp-next-to-delete' => '当下一次备份时将被删除 (参阅设置 "retention_count")',
'bkp-table-file' => '文件',
- 'bkp-table-file+' => '只有扩展名是.zip的文件才被认为是备份文件',
+ 'bkp-table-file+' => '只有扩展名是.zip的文件才被认为是有效的备份文件',
'bkp-table-size' => '大小',
'bkp-table-size+' => '',
'bkp-table-actions' => '操作',
@@ -47,7 +50,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'bkp-status-backups-auto' => '定时备份',
'bkp-status-backups-manual' => '手动备份',
'bkp-status-backups-none' => '尚未开始备份',
- 'bkp-next-backup' => '下一次备份将发生在%1$s (%2$s) 的%3$s',
+ 'bkp-next-backup' => '下一次备份即将发生在%1$s (%2$s) 的%3$s',
'bkp-next-backup-unknown' => '下一次备份尚未被计划.',
'bkp-button-backup-now' => '立即备份!',
'bkp-button-restore-now' => '还原!',
diff --git a/datamodels/2.x/itop-bridge-cmdb-services/dictionaries/zh_cn.dict.itop-bridge-cmdb-services.php b/datamodels/2.x/itop-bridge-cmdb-services/dictionaries/zh_cn.dict.itop-bridge-cmdb-services.php
index 7f04afd1a0..2d0935f517 100644
--- a/datamodels/2.x/itop-bridge-cmdb-services/dictionaries/zh_cn.dict.itop-bridge-cmdb-services.php
+++ b/datamodels/2.x/itop-bridge-cmdb-services/dictionaries/zh_cn.dict.itop-bridge-cmdb-services.php
@@ -17,10 +17,11 @@
// You should have received a copy of the GNU Affero General Public License
// along with iTop. If not, see
/**
- * @copyright Copyright (C) 2010-2024 Combodo SAS
- * @license https://opensource.org/licenses/AGPL-3.0
- * @author Benjamin Planque
+* @author Benjamin Planque
+* @copyright Copyright (C) 2010-2024 Combodo SAS
+* @license http://opensource.org/licenses/AGPL-3.0
*/
+
//////////////////////////////////////////////////////////////////////
// Note: The classes have been grouped by categories: bizmodel
//////////////////////////////////////////////////////////////////////
@@ -31,8 +32,9 @@
//
// Class: lnkFunctionalCIToProviderContract
//
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkFunctionalCIToProviderContract' => '关联功能配置项/供应商合同',
+ 'Class:lnkFunctionalCIToProviderContract' => '链接 功能配置项/供应商合同',
'Class:lnkFunctionalCIToProviderContract+' => '',
'Class:lnkFunctionalCIToProviderContract/Name' => '%1$s / %2$s',
'Class:lnkFunctionalCIToProviderContract/Attribute:providercontract_id' => '供应商合同',
@@ -50,9 +52,9 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkFunctionalCIToService' => '关联 功能配置项/服务',
- 'Class:lnkFunctionalCIToService+' => '',
- 'Class:lnkFunctionalCIToService/Name' => '%1$s / %2$s~~',
+ 'Class:lnkFunctionalCIToService' => '链接 功能配置项/服务',
+ 'Class:lnkFunctionalCIToService+' => 'This link models the functional CIs that are required to deliver a Service and whose malfunction would affect the quality of the Service.~~',
+ 'Class:lnkFunctionalCIToService/Name' => '%1$s / %2$s',
'Class:lnkFunctionalCIToService/Attribute:service_id' => '服务',
'Class:lnkFunctionalCIToService/Attribute:service_id+' => '',
'Class:lnkFunctionalCIToService/Attribute:service_name' => '服务名称',
@@ -80,7 +82,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Document/Attribute:contracts_list' => '合同',
- 'Class:Document/Attribute:contracts_list+' => '此文档关联的所有合同',
+ 'Class:Document/Attribute:contracts_list+' => '此文档相关的所有合同',
'Class:Document/Attribute:services_list' => '服务',
- 'Class:Document/Attribute:services_list+' => '此文档关联的所有服务',
+ 'Class:Document/Attribute:services_list+' => '此文档相关的所有服务',
]);
diff --git a/datamodels/2.x/itop-bridge-cmdb-ticket/dictionaries/zh_cn.dict.itop-bridge-cmdb-ticket.php b/datamodels/2.x/itop-bridge-cmdb-ticket/dictionaries/zh_cn.dict.itop-bridge-cmdb-ticket.php
index 5ec96a13f3..6f062cf60c 100644
--- a/datamodels/2.x/itop-bridge-cmdb-ticket/dictionaries/zh_cn.dict.itop-bridge-cmdb-ticket.php
+++ b/datamodels/2.x/itop-bridge-cmdb-ticket/dictionaries/zh_cn.dict.itop-bridge-cmdb-ticket.php
@@ -17,10 +17,11 @@
// You should have received a copy of the GNU Affero General Public License
// along with iTop. If not, see
/**
- * @copyright Copyright (C) 2010-2024 Combodo SAS
- * @license https://opensource.org/licenses/AGPL-3.0
- * @author Benjamin Planque
- */
+* @author Benjamin Planque
+* @copyright Copyright (C) 2010-2024 Combodo SAS
+* @license http://opensource.org/licenses/AGPL-3.0
+*/
+
//////////////////////////////////////////////////////////////////////
// Note: The classes have been grouped by categories: bizmodel
//////////////////////////////////////////////////////////////////////
@@ -28,19 +29,21 @@
// Classes in 'bizmodel'
//////////////////////////////////////////////////////////////////////
//
+
//
// Class: lnkFunctionalCIToTicket
//
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkFunctionalCIToTicket' => '关联 功能配置项/工单',
- 'Class:lnkFunctionalCIToTicket+' => '',
+ 'Class:lnkFunctionalCIToTicket' => '链接 功能配置项/工单',
+ 'Class:lnkFunctionalCIToTicket+' => 'This link models the functional CIs that are concerned by a Ticket (such as a User Request, an Incident, a Change, ...)~~',
'Class:lnkFunctionalCIToTicket/Name' => '%1$s / %2$s',
'Class:lnkFunctionalCIToTicket/Attribute:ticket_id' => '工单',
'Class:lnkFunctionalCIToTicket/Attribute:ticket_id+' => '',
'Class:lnkFunctionalCIToTicket/Attribute:ticket_ref' => '工单编号',
'Class:lnkFunctionalCIToTicket/Attribute:ticket_ref+' => '',
'Class:lnkFunctionalCIToTicket/Attribute:ticket_title' => '工单标题',
- 'Class:lnkFunctionalCIToTicket/Attribute:ticket_title+' => '~~',
+ 'Class:lnkFunctionalCIToTicket/Attribute:ticket_title+' => '',
'Class:lnkFunctionalCIToTicket/Attribute:functionalci_id' => '配置项',
'Class:lnkFunctionalCIToTicket/Attribute:functionalci_id+' => '',
'Class:lnkFunctionalCIToTicket/Attribute:functionalci_name' => '配置项名称',
@@ -50,7 +53,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:lnkFunctionalCIToTicket/Attribute:impact_code' => '影响',
'Class:lnkFunctionalCIToTicket/Attribute:impact_code/Value:manual' => '手动添加',
'Class:lnkFunctionalCIToTicket/Attribute:impact_code/Value:computed' => '自动添加',
- 'Class:lnkFunctionalCIToTicket/Attribute:impact_code/Value:not_impacted' => '不通知',
+ 'Class:lnkFunctionalCIToTicket/Attribute:impact_code/Value:not_impacted' => '未被影响',
]);
//
diff --git a/datamodels/2.x/itop-change-mgmt-itil/dictionaries/zh_cn.dict.itop-change-mgmt-itil.php b/datamodels/2.x/itop-change-mgmt-itil/dictionaries/zh_cn.dict.itop-change-mgmt-itil.php
index 4e1c7a2012..6e7283ba2e 100644
--- a/datamodels/2.x/itop-change-mgmt-itil/dictionaries/zh_cn.dict.itop-change-mgmt-itil.php
+++ b/datamodels/2.x/itop-change-mgmt-itil/dictionaries/zh_cn.dict.itop-change-mgmt-itil.php
@@ -21,6 +21,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:ChangeManagement' => '变更管理',
'Menu:Change:Overview' => '概况',
@@ -125,7 +126,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Change/Attribute:parent_name' => '变更编号',
'Class:Change/Attribute:parent_name+' => '',
'Class:Change/Attribute:related_request_list' => '相关需求',
- 'Class:Change/Attribute:related_request_list+' => '此变更相关的所有用户需求',
+ 'Class:Change/Attribute:related_request_list+' => '此变更相关的所有需求',
'Class:Change/Attribute:related_problems_list' => '相关问题',
'Class:Change/Attribute:related_problems_list+' => '此变更相关的所有问题',
'Class:Change/Attribute:related_incident_list' => '相关事件',
diff --git a/datamodels/2.x/itop-change-mgmt/dictionaries/zh_cn.dict.itop-change-mgmt.php b/datamodels/2.x/itop-change-mgmt/dictionaries/zh_cn.dict.itop-change-mgmt.php
index 7422b88832..894f6b51f2 100644
--- a/datamodels/2.x/itop-change-mgmt/dictionaries/zh_cn.dict.itop-change-mgmt.php
+++ b/datamodels/2.x/itop-change-mgmt/dictionaries/zh_cn.dict.itop-change-mgmt.php
@@ -109,7 +109,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Change/Attribute:fallback_plan' => '回滚计划',
'Class:Change/Attribute:fallback_plan+' => '',
'Class:Change/Attribute:related_request_list' => '相关需求',
- 'Class:Change/Attribute:related_request_list+' => '此变更相关的所有用户需求',
+ 'Class:Change/Attribute:related_request_list+' => '此变更相关的所有需求',
'Class:Change/Attribute:related_incident_list' => '相关事件',
'Class:Change/Attribute:related_incident_list+' => '此变更相关的所有事件',
'Class:Change/Attribute:related_problems_list' => '相关问题',
diff --git a/datamodels/2.x/itop-config-mgmt/dictionaries/zh_cn.dict.itop-config-mgmt.php b/datamodels/2.x/itop-config-mgmt/dictionaries/zh_cn.dict.itop-config-mgmt.php
index ab8fb2b4a9..df2908ba82 100644
--- a/datamodels/2.x/itop-config-mgmt/dictionaries/zh_cn.dict.itop-config-mgmt.php
+++ b/datamodels/2.x/itop-config-mgmt/dictionaries/zh_cn.dict.itop-config-mgmt.php
@@ -4,7 +4,7 @@
* Localized data
*
* @copyright Copyright (C) 2010-2024 Combodo SAS
- * @license https://opensource.org/licenses/AGPL-3.0
+ * @license http://opensource.org/licenses/AGPL-3.0
*
* This file is part of iTop.
*
@@ -21,23 +21,25 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
//////////////////////////////////////////////////////////////////////
// Relations
//////////////////////////////////////////////////////////////////////
//
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Relation:impacts/Description' => '被影响的元素',
- 'Relation:impacts/DownStream' => '影响...',
- 'Relation:impacts/DownStream+' => '被影响的元素',
- 'Relation:impacts/UpStream' => '依赖于...',
- 'Relation:impacts/UpStream+' => '此元素依赖的元素...',
+ 'Relation:impacts/Description' => '被影响的元素',
+ 'Relation:impacts/DownStream' => '影响...',
+ 'Relation:impacts/DownStream+' => '被影响的元素',
+ 'Relation:impacts/UpStream' => '依赖于...',
+ 'Relation:impacts/UpStream+' => '此元素依赖的元素...',
// Legacy entries
'Relation:depends on/Description' => '此元素依赖的元素...',
- 'Relation:depends on/DownStream' => '依赖于...',
- 'Relation:depends on/UpStream' => '影响...',
- 'Relation:impacts/LoadData' => '加载数据',
- 'Relation:impacts/NoFilteredData' => 'please select objects and load data~~',
- 'Relation:impacts/FilteredData' => 'Filtered data~~',
+ 'Relation:depends on/DownStream' => '依赖于...',
+ 'Relation:depends on/UpStream' => '影响...',
+ 'Relation:impacts/LoadData' => '加载数据',
+ 'Relation:impacts/NoFilteredData' => '请选择对象并加载数据',
+ 'Relation:impacts/FilteredData' => '已筛选的数据',
]);
// Dictionnay conventions
@@ -55,26 +57,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//////////////////////////////////////////////////////////////////////
// Classes in 'bizmodel'
//////////////////////////////////////////////////////////////////////
-//
-// Dictionnay conventions
-// Class:
-// Class:+
-// Class:/Attribute:
-// Class:/Attribute:+
-// Class:/Attribute:/Value:
-// Class:/Attribute:/Value:+
-// Class:/Stimulus:
-// Class:/Stimulus:+
-// Class:/UniquenessRule:
-// Class:/UniquenessRule:+
-
-//////////////////////////////////////////////////////////////////////
-// Note: The classes have been grouped by categories: bizmodel
-//////////////////////////////////////////////////////////////////////
-//////////////////////////////////////////////////////////////////////
-// Classes in 'bizmodel'
-//////////////////////////////////////////////////////////////////////
//
//
@@ -82,12 +65,12 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkContactToFunctionalCI' => '关联联系人/功能项',
- 'Class:lnkContactToFunctionalCI+' => '',
+ 'Class:lnkContactToFunctionalCI' => '链接 联系人/功能配置项',
+ 'Class:lnkContactToFunctionalCI+' => '管理联系人与功能配置项的链接. 它可以是一个团队的职责范围, 分配工单, 或者将特定设备(如PC或电话)分配给对应的人员, 以管理资产.',
'Class:lnkContactToFunctionalCI/Name' => '%1$s / %2$s',
- 'Class:lnkContactToFunctionalCI/Attribute:functionalci_id' => '功能项',
+ 'Class:lnkContactToFunctionalCI/Attribute:functionalci_id' => '功能配置项',
'Class:lnkContactToFunctionalCI/Attribute:functionalci_id+' => '',
- 'Class:lnkContactToFunctionalCI/Attribute:functionalci_name' => '功能项名称',
+ 'Class:lnkContactToFunctionalCI/Attribute:functionalci_name' => '功能配置项名称',
'Class:lnkContactToFunctionalCI/Attribute:functionalci_name+' => '',
'Class:lnkContactToFunctionalCI/Attribute:contact_id' => '联系人',
'Class:lnkContactToFunctionalCI/Attribute:contact_id+' => '',
@@ -101,7 +84,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:FunctionalCI' => '功能配置项',
- 'Class:FunctionalCI+' => '',
+ 'Class:FunctionalCI+' => '用于CMDB的抽象类, 用于分组大多数配置项类型.',
'Class:FunctionalCI/Attribute:name' => '名称',
'Class:FunctionalCI/Attribute:name+' => '',
'Class:FunctionalCI/Attribute:description' => '描述',
@@ -110,7 +93,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:FunctionalCI/Attribute:org_id+' => '',
'Class:FunctionalCI/Attribute:organization_name' => '组织名称',
'Class:FunctionalCI/Attribute:organization_name+' => '通用名',
- 'Class:FunctionalCI/Attribute:business_criticity' => '业务级别',
+ 'Class:FunctionalCI/Attribute:business_criticity' => '业务关键性',
'Class:FunctionalCI/Attribute:business_criticity+' => '',
'Class:FunctionalCI/Attribute:business_criticity/Value:high' => '高',
'Class:FunctionalCI/Attribute:business_criticity/Value:high+' => '高',
@@ -120,10 +103,12 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:FunctionalCI/Attribute:business_criticity/Value:medium+' => '中',
'Class:FunctionalCI/Attribute:move2production' => '投产日期',
'Class:FunctionalCI/Attribute:move2production+' => '',
+ 'Class:FunctionalCI/Attribute:groups_list' => '分组',
+ 'Class:FunctionalCI/Attribute:groups_list+' => '分组可用作标记, 用于记录环境、项目 (迁移、升级、安全) 等等…',
'Class:FunctionalCI/Attribute:contacts_list' => '联系人',
'Class:FunctionalCI/Attribute:contacts_list+' => '此配置项的所有联系人',
'Class:FunctionalCI/Attribute:documents_list' => '文档',
- 'Class:FunctionalCI/Attribute:documents_list+' => '此配置项关联的所有文档',
+ 'Class:FunctionalCI/Attribute:documents_list+' => '此配置项相关的所有文档',
'Class:FunctionalCI/Attribute:applicationsolution_list' => '应用方案',
'Class:FunctionalCI/Attribute:applicationsolution_list+' => '此配置项依赖的所有应用方案',
'Class:FunctionalCI/Attribute:softwares_list' => '软件',
@@ -140,7 +125,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:PhysicalDevice' => '物理设备',
- 'Class:PhysicalDevice+' => '',
+ 'Class:PhysicalDevice+' => '物理型配置项的抽象. 物理设备可以被定位. 它通常有品牌和型号.',
'Class:PhysicalDevice/ComplementaryName' => '%1$s - %2$s',
'Class:PhysicalDevice/Attribute:serialnumber' => '序列号',
'Class:PhysicalDevice/Attribute:serialnumber+' => '',
@@ -164,6 +149,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:PhysicalDevice/Attribute:brand_name+' => '',
'Class:PhysicalDevice/Attribute:model_id' => '型号',
'Class:PhysicalDevice/Attribute:model_id+' => '',
+ 'Class:PhysicalDevice/Attribute:model_end_of_support' => '型号过保日期',
+ 'Class:PhysicalDevice/Attribute:model_end_of_support+' => '当硬件型号不再被制造商支持时,如果此信息在型号上有所记录.',
'Class:PhysicalDevice/Attribute:model_name' => '型号名称',
'Class:PhysicalDevice/Attribute:model_name+' => '',
'Class:PhysicalDevice/Attribute:asset_number' => '资产编号',
@@ -180,7 +167,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Rack' => '机架',
- 'Class:Rack+' => '',
+ 'Class:Rack+' => '一种用于安装数据中心设备的开放式框架.',
'Class:Rack/ComplementaryName' => '%1$s - %2$s',
'Class:Rack/Attribute:nb_u' => '机架高度',
'Class:Rack/Attribute:nb_u+' => '',
@@ -207,7 +194,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Phone' => '电话',
- 'Class:Phone+' => '',
+ 'Class:Phone+' => '终端用户设备.带线的座机',
]);
//
@@ -216,7 +203,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:MobilePhone' => '手机',
- 'Class:MobilePhone+' => '',
+ 'Class:MobilePhone+' => '终端用户设备.无线电话',
'Class:MobilePhone/Attribute:imei' => 'IMEI',
'Class:MobilePhone/Attribute:imei+' => '',
'Class:MobilePhone/Attribute:hw_pin' => '硬件 PIN 码',
@@ -229,7 +216,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:IPPhone' => 'IP 电话',
- 'Class:IPPhone+' => '',
+ 'Class:IPPhone+' => '用于电话的物理设备,连接到网络',
]);
//
@@ -238,7 +225,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Tablet' => '平板',
- 'Class:Tablet+' => '',
+ 'Class:Tablet+' => '终端用户设备.例如 iPad, Galaxy Note/Tab Nexus, Kindle...',
]);
//
@@ -247,10 +234,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:ConnectableCI' => '可连接的配置项',
- 'Class:ConnectableCI+' => '物理配置项',
+ 'Class:ConnectableCI+' => '可联网的物理设备',
'Class:ConnectableCI/ComplementaryName' => '%1$s - %2$s',
'Class:ConnectableCI/Attribute:networkdevice_list' => '网络设备',
- 'Class:ConnectableCI/Attribute:networkdevice_list+' => '所有连接到这台设备的网络设备',
+ 'Class:ConnectableCI/Attribute:networkdevice_list+' => '连接到这台设备的所有网络设备',
'Class:ConnectableCI/Attribute:physicalinterface_list' => '网卡',
'Class:ConnectableCI/Attribute:physicalinterface_list+' => '所有物理网卡',
]);
@@ -261,7 +248,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:DatacenterDevice' => '数据中心设备',
- 'Class:DatacenterDevice+' => '',
+ 'Class:DatacenterDevice+' => '安装在数据中心的联网物理设备, 通常安装在机架或机柜中. 它包括物理机, 网络设备, 存储系统, SAN 交换机, 磁带库, NAS 设备, 等等.',
'Class:DatacenterDevice/ComplementaryName' => '%1$s - %2$s',
'Class:DatacenterDevice/Attribute:rack_id' => '机架',
'Class:DatacenterDevice/Attribute:rack_id+' => '',
@@ -283,10 +270,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:DatacenterDevice/Attribute:powerB_id+' => '',
'Class:DatacenterDevice/Attribute:powerB_name' => '备电源名称',
'Class:DatacenterDevice/Attribute:powerB_name+' => '',
- 'Class:DatacenterDevice/Attribute:fiberinterfacelist_list' => '光纤接口',
+ 'Class:DatacenterDevice/Attribute:fiberinterfacelist_list' => '光口',
'Class:DatacenterDevice/Attribute:fiberinterfacelist_list+' => '此设备的所有光纤接口',
'Class:DatacenterDevice/Attribute:san_list' => 'SAN',
- 'Class:DatacenterDevice/Attribute:san_list+' => '所有连接到这台设备的SAN交换机',
+ 'Class:DatacenterDevice/Attribute:san_list+' => '连接到这台设备的所有SAN交换机',
'Class:DatacenterDevice/Attribute:redundancy' => '冗余',
'Class:DatacenterDevice/Attribute:redundancy/count' => '此设备运行正常至少需要一路电源 (主或备)',
// Unused yet
@@ -300,7 +287,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:NetworkDevice' => '网络设备',
- 'Class:NetworkDevice+' => '',
+ 'Class:NetworkDevice+' => '任何类型的网络设备: 路由器, 交换机, 集线器, 负载均衡器, 防火墙…',
'Class:NetworkDevice/ComplementaryName' => '%1$s - %2$s',
'Class:NetworkDevice/Attribute:networkdevicetype_id' => '网络设备类型',
'Class:NetworkDevice/Attribute:networkdevicetype_id+' => '',
@@ -312,6 +299,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:NetworkDevice/Attribute:iosversion_id+' => '',
'Class:NetworkDevice/Attribute:iosversion_name' => 'IOS版本名称',
'Class:NetworkDevice/Attribute:iosversion_name+' => '',
+ 'Class:NetworkDevice/Attribute:ios_end_of_support' => 'IOS过保时间',
+ 'Class:NetworkDevice/Attribute:ios_end_of_support+' => '厂家不再为该IOS版本提供修复的时间.',
'Class:NetworkDevice/Attribute:ram' => '内存',
'Class:NetworkDevice/Attribute:ram+' => '',
]);
@@ -321,20 +310,22 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:Server' => '服务器',
- 'Class:Server+' => '',
+ 'Class:Server' => '物理机',
+ 'Class:Server+' => '用于管理集中式物理资源或服务的数据中心设备. 它通常安装了特定的 OS 版本并运行各类软件.',
'Class:Server/ComplementaryName' => '%1$s - %2$s',
- 'Class:Server/Attribute:osfamily_id' => '操作系统家族',
+ 'Class:Server/Attribute:osfamily_id' => 'OS 家族',
'Class:Server/Attribute:osfamily_id+' => '',
- 'Class:Server/Attribute:osfamily_name' => '操作系统家族名称',
+ 'Class:Server/Attribute:osfamily_name' => 'OS 家族名称',
'Class:Server/Attribute:osfamily_name+' => '',
- 'Class:Server/Attribute:osversion_id' => '操作系统版本',
+ 'Class:Server/Attribute:osversion_id' => 'OS 版本',
'Class:Server/Attribute:osversion_id+' => '',
- 'Class:Server/Attribute:osversion_name' => '操作系统版本名称',
+ 'Class:Server/Attribute:osversion_name' => 'OS 版本名称',
'Class:Server/Attribute:osversion_name+' => '',
- 'Class:Server/Attribute:oslicence_id' => '操作系统许可证',
+ 'Class:Server/Attribute:os_end_of_support' => 'OS 过保时间',
+ 'Class:Server/Attribute:os_end_of_support+' => '厂商不再为该操作系统版本提供补丁的时间.',
+ 'Class:Server/Attribute:oslicence_id' => 'OS 许可证',
'Class:Server/Attribute:oslicence_id+' => '',
- 'Class:Server/Attribute:oslicence_name' => '操作系统许可证名称',
+ 'Class:Server/Attribute:oslicence_name' => 'OS 许可证名称',
'Class:Server/Attribute:oslicence_name+' => '',
'Class:Server/Attribute:cpu' => 'CPU',
'Class:Server/Attribute:cpu+' => '',
@@ -350,7 +341,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:StorageSystem' => '存储系统',
- 'Class:StorageSystem+' => '',
+ 'Class:StorageSystem+' => '存储系统可以使用光纤或以太网连接. 存储系统以逻辑卷为单位进行管理.',
'Class:StorageSystem/ComplementaryName' => '%1$s - %2$s',
'Class:StorageSystem/Attribute:logicalvolume_list' => '逻辑卷',
'Class:StorageSystem/Attribute:logicalvolume_list+' => '此存储系统包含的所有逻辑卷',
@@ -362,7 +353,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SANSwitch' => 'SAN交换机',
- 'Class:SANSwitch+' => '',
+ 'Class:SANSwitch+' => 'SAN交换机是指兼容光纤通道协议的网络交换机, 通常用于存储网络. 它是一个数据中心设备.',
'Class:SANSwitch/ComplementaryName' => '%1$s - %2$s',
'Class:SANSwitch/Attribute:datacenterdevice_list' => '设备',
'Class:SANSwitch/Attribute:datacenterdevice_list+' => '连接到此SAN交换机的所有设备',
@@ -374,7 +365,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:TapeLibrary' => '磁带库',
- 'Class:TapeLibrary+' => '',
+ 'Class:TapeLibrary+' => '托管了多个磁带(含盒式磁带)的数据中心设备. 磁带库通常用于数据备份或归档.',
'Class:TapeLibrary/ComplementaryName' => '%1$s - %2$s',
'Class:TapeLibrary/Attribute:tapes_list' => '磁带',
'Class:TapeLibrary/Attribute:tapes_list+' => '此磁带库里的所有磁带',
@@ -386,7 +377,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:NAS' => 'NAS',
- 'Class:NAS+' => '',
+ 'Class:NAS+' => '数据中心里联网的大容量存储设备. 在 '.ITOP_APPLICATION_SHORT.' 中 NAS (Network-attached storage) 用于托管 NAS 文件系统.',
'Class:NAS/ComplementaryName' => '%1$s - %2$s',
'Class:NAS/Attribute:nasfilesystem_list' => '文件系统',
'Class:NAS/Attribute:nasfilesystem_list+' => '此NAS里的所有文件系统',
@@ -398,16 +389,18 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:PC' => 'PC',
- 'Class:PC+' => '',
+ 'Class:PC+' => '可连接的配置项. 个人计算机 (PC) 是一种物理设备,可以是台式机或笔记本电脑,安装了操作系统并设计用于运行软件实例.',
'Class:PC/ComplementaryName' => '%1$s - %2$s',
- 'Class:PC/Attribute:osfamily_id' => '操作系统家族',
+ 'Class:PC/Attribute:osfamily_id' => 'OS 家族',
'Class:PC/Attribute:osfamily_id+' => '',
- 'Class:PC/Attribute:osfamily_name' => '操作系统家族名称',
+ 'Class:PC/Attribute:osfamily_name' => 'OS 家族名称',
'Class:PC/Attribute:osfamily_name+' => '',
- 'Class:PC/Attribute:osversion_id' => '操作系统版本',
+ 'Class:PC/Attribute:osversion_id' => 'OS 版本',
'Class:PC/Attribute:osversion_id+' => '',
- 'Class:PC/Attribute:osversion_name' => '操作系统版本名称',
+ 'Class:PC/Attribute:osversion_name' => 'OS 版本名称',
'Class:PC/Attribute:osversion_name+' => '',
+ 'Class:PC/Attribute:os_end_of_support' => 'OS 过保时间',
+ 'Class:PC/Attribute:os_end_of_support+' => '厂商不再为该操作系统版本提供补丁的时间.',
'Class:PC/Attribute:cpu' => 'CPU',
'Class:PC/Attribute:cpu+' => '',
'Class:PC/Attribute:ram' => '内存',
@@ -426,7 +419,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Printer' => '打印机',
- 'Class:Printer+' => '',
+ 'Class:Printer+' => '可连接的配置项. 可以联网或连接到PC的物理设备.',
'Class:Printer/ComplementaryName' => '%1$s - %2$s',
]);
@@ -436,7 +429,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:PowerConnection' => '供电线路',
- 'Class:PowerConnection+' => '',
+ 'Class:PowerConnection+' => '用于电力供应的物理设备的抽象.',
'Class:PowerConnection/ComplementaryName' => '%1$s - %2$s',
]);
@@ -446,7 +439,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:PowerSource' => '电源',
- 'Class:PowerSource+' => '',
+ 'Class:PowerSource+' => '物理电源连接. 用于记录数据中心的任何类型的电源 (主电源入口, 断路器…) ,但不是 PDU.',
'Class:PowerSource/ComplementaryName' => '%1$s - %2$s',
'Class:PowerSource/Attribute:pdus_list' => 'PDU',
'Class:PowerSource/Attribute:pdus_list+' => '使用此电源的所有 PDU',
@@ -458,7 +451,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:PDU' => 'PDU',
- 'Class:PDU+' => '',
+ 'Class:PDU+' => '电力供应连接. PDU (Power Distribution Unit) 是一种配备了多个输出的电力分配设备,特别是为数据中心内的服务器机架和网络设备机架供电.',
'Class:PDU/ComplementaryName' => '%1$s - %2$s - %3$s - %4$s',
'Class:PDU/Attribute:rack_id' => '机架',
'Class:PDU/Attribute:rack_id+' => '',
@@ -476,7 +469,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Peripheral' => '配件',
- 'Class:Peripheral+' => '',
+ 'Class:Peripheral+' => '物理设备, 用于记录任何类型的计算机外设.
+例如: 外部硬盘, 扫描仪, 输入设备 (轨迹球, 条码扫描仪), 等等…',
'Class:Peripheral/ComplementaryName' => '%1$s - %2$s',
]);
@@ -486,7 +480,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Enclosure' => '机柜',
- 'Class:Enclosure+' => '',
+ 'Class:Enclosure+' => '一种安装在机架内的封闭式柜子, 用于托管IT设备,如刀片服务器、网络设备...',
'Class:Enclosure/ComplementaryName' => '%1$s - %2$s - %3$s',
'Class:Enclosure/Attribute:rack_id' => '机架',
'Class:Enclosure/Attribute:rack_id+' => '',
@@ -504,13 +498,13 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:ApplicationSolution' => '应用方案',
- 'Class:ApplicationSolution+' => '',
+ 'Class:ApplicationSolution+' => '应用方案描述了复杂应用是如何由多个基本组件之间组装(或依赖)的. 应用方案的主要信息是其关系列表.',
'Class:ApplicationSolution/Attribute:functionalcis_list' => '配置项',
'Class:ApplicationSolution/Attribute:functionalcis_list+' => '此应用方案包含的所有配置项',
'Class:ApplicationSolution/Attribute:businessprocess_list' => '业务流程',
- 'Class:ApplicationSolution/Attribute:businessprocess_list+' => '所有依赖此应用方案的业务流程',
- 'Class:ApplicationSolution/Attribute:logo' => 'Logo~~',
- 'Class:ApplicationSolution/Attribute:logo+' => 'Used as object icon when displayed within impact analysis graphs~~',
+ 'Class:ApplicationSolution/Attribute:businessprocess_list+' => '依赖此应用方案的所有业务流程',
+ 'Class:ApplicationSolution/Attribute:logo' => 'Logo',
+ 'Class:ApplicationSolution/Attribute:logo+' => '用于在显示影响分析图表时作为对象图标',
'Class:ApplicationSolution/Attribute:status' => '状态',
'Class:ApplicationSolution/Attribute:status+' => '',
'Class:ApplicationSolution/Attribute:status/Value:active' => '启用',
@@ -529,11 +523,11 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:BusinessProcess' => '业务流程',
- 'Class:BusinessProcess+' => '',
+ 'Class:BusinessProcess+' => '业务流程用于描述运营过程中的高级流程或重要应用. 它与应用方案非常类似, 但是为了描述更高层次的应用或整个组织的流程.',
'Class:BusinessProcess/Attribute:applicationsolutions_list' => '应用方案',
- 'Class:BusinessProcess/Attribute:applicationsolutions_list+' => '所有影响此业务流程的应用方案',
- 'Class:BusinessProcess/Attribute:logo' => 'Logo~~',
- 'Class:BusinessProcess/Attribute:logo+' => 'Used as object icon when displayed within impact analysis graphs~~',
+ 'Class:BusinessProcess/Attribute:applicationsolutions_list+' => '影响此业务流程的所有应用方案',
+ 'Class:BusinessProcess/Attribute:logo' => 'Logo',
+ 'Class:BusinessProcess/Attribute:logo+' => '用于在显示影响分析图表时作为对象图标',
'Class:BusinessProcess/Attribute:status' => '状态',
'Class:BusinessProcess/Attribute:status+' => '',
'Class:BusinessProcess/Attribute:status/Value:active' => '启用',
@@ -542,21 +536,63 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:BusinessProcess/Attribute:status/Value:inactive+' => '停用',
]);
+//
+// Class: Software
+//
+
+Dict::Add('ZH CN', 'Chinese', '简体中文', [
+ 'Class:Software' => '软件',
+ 'Class:Software+' => '软件是软件清单中的一个基本项目. 它有一个特定的版本. 在 '.ITOP_APPLICATION_SHORT.' 中, 软件分为: DB服务器、中间件、PC软件、Web服务器和其它软件.',
+ 'Class:Software/ComplementaryName' => '%1$s - %2$s',
+ 'Class:Software/Attribute:name' => '名称',
+ 'Class:Software/Attribute:name+' => '',
+ 'Class:Software/Attribute:vendor' => '厂商',
+ 'Class:Software/Attribute:vendor+' => '',
+ 'Class:Software/Attribute:version' => '版本',
+ 'Class:Software/Attribute:version+' => '',
+ 'Class:Software/Attribute:end_of_support' => '过保日期',
+ 'Class:Software/Attribute:end_of_support+' => '厂家提供的最后一个支持日期,此后不再提供此软件版本的补丁.',
+ 'Class:Software/Attribute:documents_list' => '文档',
+ 'Class:Software/Attribute:documents_list+' => '此软件相关的所有文档',
+ 'Class:Software/Attribute:logo' => 'Logo',
+ 'Class:Software/Attribute:logo+' => '用于在显示影响分析图表时作为所有使用了此软件的软件实例对象的图标',
+ 'Class:Software/Attribute:type' => '类型',
+ 'Class:Software/Attribute:type+' => '',
+ 'Class:Software/Attribute:type/Value:DBServer' => 'DB 服务器',
+ 'Class:Software/Attribute:type/Value:DBServer+' => 'DB 服务器',
+ 'Class:Software/Attribute:type/Value:Middleware' => '中间件',
+ 'Class:Software/Attribute:type/Value:Middleware+' => '中间件',
+ 'Class:Software/Attribute:type/Value:OtherSoftware' => '其它软件',
+ 'Class:Software/Attribute:type/Value:OtherSoftware+' => '其它软件',
+ 'Class:Software/Attribute:type/Value:PCSoftware' => 'PC 软件',
+ 'Class:Software/Attribute:type/Value:PCSoftware+' => 'PC 软件',
+ 'Class:Software/Attribute:type/Value:WebServer' => 'Web 服务器',
+ 'Class:Software/Attribute:type/Value:WebServer+' => 'Web 服务器',
+ 'Class:Software/Attribute:softwareinstance_list' => '软件实例',
+ 'Class:Software/Attribute:softwareinstance_list+' => '此软件的所有实例',
+ 'Class:Software/Attribute:softwarepatch_list' => '软件补丁',
+ 'Class:Software/Attribute:softwarepatch_list+' => '此软件的所有补丁',
+ 'Class:Software/Attribute:softwarelicence_list' => '软件许可证',
+ 'Class:Software/Attribute:softwarelicence_list+' => '此软件的所有许可证',
+]);
+
//
// Class: SoftwareInstance
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SoftwareInstance' => '软件实例',
- 'Class:SoftwareInstance+' => '',
+ 'Class:SoftwareInstance+' => '在设备(物理机, PC, 虚拟机)上部署软件的抽象. 在 '.ITOP_APPLICATION_SHORT.' 中, 软件实例分为: DB服务器, 中间件, PC软件, Web服务器和其它软件.',
'Class:SoftwareInstance/Attribute:system_id' => '系统',
- 'Class:SoftwareInstance/Attribute:system_id+' => '',
+ 'Class:SoftwareInstance/Attribute:system_id+' => '系统可以是物理机, 虚拟机, PC, ...',
'Class:SoftwareInstance/Attribute:system_name' => '系统名称',
'Class:SoftwareInstance/Attribute:system_name+' => '',
'Class:SoftwareInstance/Attribute:software_id' => '软件',
'Class:SoftwareInstance/Attribute:software_id+' => '',
'Class:SoftwareInstance/Attribute:software_name' => '软件名称',
'Class:SoftwareInstance/Attribute:software_name+' => '',
+ 'Class:SoftwareInstance/Attribute:software_end_of_support' => '软件过保时间',
+ 'Class:SoftwareInstance/Attribute:software_end_of_support+' => '厂商为此软件版本提供补丁的最后日期.',
'Class:SoftwareInstance/Attribute:softwarelicence_id' => '软件许可证',
'Class:SoftwareInstance/Attribute:softwarelicence_id+' => '',
'Class:SoftwareInstance/Attribute:softwarelicence_name' => '许可证名称',
@@ -577,7 +613,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Middleware' => '中间件',
- 'Class:Middleware+' => '',
+ 'Class:Middleware+' => '向其它软件提供服务的软件实例 (例如: Tomcat, JBoss, Talend, Microsoft BizTalk, IBM Websphere 或 Lotus Domino), 通常安装在特定系统(PC, 物理机或虚拟机)上.',
'Class:Middleware/Attribute:middlewareinstance_list' => '中间件实例',
'Class:Middleware/Attribute:middlewareinstance_list+' => '此中间件的所有实例',
]);
@@ -587,9 +623,9 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:DBServer' => '数据库服务器',
- 'Class:DBServer+' => '',
- 'Class:DBServer/Attribute:dbschema_list' => '数据库',
+ 'Class:DBServer' => 'DB 服务器',
+ 'Class:DBServer+' => '提供数据库服务的软件实例 (例如: MySQL 8.0, Oracle, SQL Server, DB2…), 通常安装在特定系统(PC, 物理机或虚拟机)上.',
+ 'Class:DBServer/Attribute:dbschema_list' => '数据库架构',
'Class:DBServer/Attribute:dbschema_list+' => '此数据库服务器上的所有数据库架构',
]);
@@ -598,8 +634,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:WebServer' => 'Web服务器',
- 'Class:WebServer+' => '',
+ 'Class:WebServer' => 'Web 服务器',
+ 'Class:WebServer+' => '提供网页服务的软件实例 (例如: Apache 2.4, Nginx 1.29.4, IIS 7.0), 通常安装在特定系统(PC, 物理机或虚拟机)上.',
'Class:WebServer/Attribute:webapp_list' => 'Web应用',
'Class:WebServer/Attribute:webapp_list+' => '此web服务器上的所有web应用',
]);
@@ -610,7 +646,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:PCSoftware' => 'PC 软件',
- 'Class:PCSoftware+' => '',
+ 'Class:PCSoftware+' => '安装在PC上的软件实例 (例如: MS Office, Adobe Photoshop 或 Filezilla).',
]);
//
@@ -619,7 +655,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:OtherSoftware' => '其它软件',
- 'Class:OtherSoftware+' => '',
+ 'Class:OtherSoftware+' => '不包含在清单之内的任何类型的软件实例: PC软件, 中间件, DB服务器或 Web服务器.',
]);
//
@@ -628,10 +664,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:MiddlewareInstance' => '中间件实例',
- 'Class:MiddlewareInstance+' => '',
+ 'Class:MiddlewareInstance+' => '由中间件提供服务的功能配置项.',
'Class:MiddlewareInstance/ComplementaryName' => '%1$s - %2$s',
- 'Class:MiddlewareInstance/Attribute:logo' => 'Logo~~',
- 'Class:MiddlewareInstance/Attribute:logo+' => 'Used as object icon when displayed within impact analysis graphs~~',
+ 'Class:MiddlewareInstance/Attribute:logo' => 'Logo',
+ 'Class:MiddlewareInstance/Attribute:logo+' => '用于在影响分析图表中显示为对象图标',
'Class:MiddlewareInstance/Attribute:middleware_id' => '中间件',
'Class:MiddlewareInstance/Attribute:middleware_id+' => '',
'Class:MiddlewareInstance/Attribute:middleware_name' => '名称',
@@ -643,10 +679,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:DatabaseSchema' => '数据库',
- 'Class:DatabaseSchema+' => '',
+ 'Class:DatabaseSchema' => '数据库架构',
+ 'Class:DatabaseSchema+' => 'DB 服务器上运行的逻辑数据库实例.',
'Class:DatabaseSchema/ComplementaryName' => '%1$s - %2$s',
- 'Class:DatabaseSchema/Attribute:dbserver_id' => '数据库服务器',
+ 'Class:DatabaseSchema/Attribute:dbserver_id' => 'DB 服务器',
'Class:DatabaseSchema/Attribute:dbserver_id+' => '',
'Class:DatabaseSchema/Attribute:dbserver_name' => '名称',
'Class:DatabaseSchema/Attribute:dbserver_name+' => '',
@@ -658,14 +694,14 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:WebApplication' => 'Web 应用',
- 'Class:WebApplication+' => '',
+ 'Class:WebApplication+' => '可使用网页浏览器访问的 web 应用实例, 它运行在特定的 Web 服务器实例之上. 例如, 您正在使用的这个iTop.',
'Class:WebApplication/ComplementaryName' => '%1$s - %2$s',
'Class:WebApplication/Attribute:webserver_id' => 'Web服务器',
'Class:WebApplication/Attribute:webserver_id+' => '',
'Class:WebApplication/Attribute:webserver_name' => '名称',
'Class:WebApplication/Attribute:webserver_name+' => '',
- 'Class:WebApplication/Attribute:logo' => 'Logo~~',
- 'Class:WebApplication/Attribute:logo+' => 'Used as object icon when displayed within impact analysis graphs~~',
+ 'Class:WebApplication/Attribute:logo' => 'Logo',
+ 'Class:WebApplication/Attribute:logo+' => '用于在影响分析图表中显示为对象图标',
'Class:WebApplication/Attribute:url' => 'URL',
'Class:WebApplication/Attribute:url+' => '',
]);
@@ -676,7 +712,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:VirtualDevice' => '虚拟设备',
- 'Class:VirtualDevice+' => '',
+ 'Class:VirtualDevice+' => '用于服务器虚拟化的抽象类 (宿主机和虚拟机).',
'Class:VirtualDevice/Attribute:status' => '状态',
'Class:VirtualDevice/Attribute:status+' => '',
'Class:VirtualDevice/Attribute:status/Value:implementation' => '生效',
@@ -697,7 +733,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:VirtualHost' => '宿主机',
- 'Class:VirtualHost+' => '',
+ 'Class:VirtualHost+' => '对虚拟设备(虚拟机监视器, 集群,...)的抽象, 用于托管虚拟机.',
'Class:VirtualHost/Attribute:virtualmachine_list' => '虚拟机',
'Class:VirtualHost/Attribute:virtualmachine_list+' => '此宿主机托管的所有虚拟机',
]);
@@ -707,8 +743,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:Hypervisor' => '虚拟机管理器',
- 'Class:Hypervisor+' => '',
+ 'Class:Hypervisor' => 'Hypervisor',
+ 'Class:Hypervisor+' => '虚拟化主机. 运行虚拟化软件(MS Hyper-V, VMWare ESX, Xen, 等.), 运行在物理服务器上并支持创建虚拟机.',
'Class:Hypervisor/Attribute:farm_id' => '集群',
'Class:Hypervisor/Attribute:farm_id+' => '',
'Class:Hypervisor/Attribute:farm_name' => '名称',
@@ -725,13 +761,13 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Farm' => '集群',
- 'Class:Farm+' => '',
- 'Class:Farm/Attribute:hypervisor_list' => '虚拟机管理器',
- 'Class:Farm/Attribute:hypervisor_list+' => '集群由哪些虚拟机管理器组成',
+ 'Class:Farm+' => '虚拟化的主机. 集群由一组虚拟化监视器组成, 它们通过共享存储资源为托管的虚拟机提供容错能力.',
+ 'Class:Farm/Attribute:hypervisor_list' => 'Hypervisor',
+ 'Class:Farm/Attribute:hypervisor_list+' => '集群由哪些 Hypervisor 组成',
'Class:Farm/Attribute:redundancy' => '高可用性',
- 'Class:Farm/Attribute:redundancy/disabled' => '所有虚拟机管理器正常, 集群才正常',
- 'Class:Farm/Attribute:redundancy/count' => '至少%1$s个虚拟机管理器是正常的, 集群才是正常的',
- 'Class:Farm/Attribute:redundancy/percent' => '至少%1$s %%的虚拟机管理器是正常的, 集群才正常',
+ 'Class:Farm/Attribute:redundancy/disabled' => '所有 Hypervisor 正常, 集群才正常',
+ 'Class:Farm/Attribute:redundancy/count' => '至少%1$s个 Hypervisor 是正常的, 集群才是正常的',
+ 'Class:Farm/Attribute:redundancy/percent' => '至少%1$s %%的 Hypervisor 是正常的, 集群才正常',
]);
//
@@ -740,21 +776,23 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:VirtualMachine' => '虚拟机',
- 'Class:VirtualMachine+' => '',
+ 'Class:VirtualMachine+' => '与物理机类似的虚拟设备,它既可以托管在 Hypervisor 上,也可以托管在集群上.',
'Class:VirtualMachine/ComplementaryName' => '%1$s - %2$s',
'Class:VirtualMachine/Attribute:virtualhost_id' => '宿主机',
'Class:VirtualMachine/Attribute:virtualhost_id+' => '',
'Class:VirtualMachine/Attribute:virtualhost_name' => '名称',
'Class:VirtualMachine/Attribute:virtualhost_name+' => '',
- 'Class:VirtualMachine/Attribute:osfamily_id' => '操作系统家族',
+ 'Class:VirtualMachine/Attribute:osfamily_id' => 'OS 家族',
'Class:VirtualMachine/Attribute:osfamily_id+' => '',
'Class:VirtualMachine/Attribute:osfamily_name' => '名称',
'Class:VirtualMachine/Attribute:osfamily_name+' => '',
- 'Class:VirtualMachine/Attribute:osversion_id' => '操作系统版本',
+ 'Class:VirtualMachine/Attribute:osversion_id' => 'OS 版本',
'Class:VirtualMachine/Attribute:osversion_id+' => '',
'Class:VirtualMachine/Attribute:osversion_name' => '名称',
'Class:VirtualMachine/Attribute:osversion_name+' => '',
- 'Class:VirtualMachine/Attribute:oslicence_id' => '操作系统许可证',
+ 'Class:VirtualMachine/Attribute:os_end_of_support' => 'OS 过保日期',
+ 'Class:VirtualMachine/Attribute:os_end_of_support+' => '厂商不再支持该操作系统版本时的日期.',
+ 'Class:VirtualMachine/Attribute:oslicence_id' => 'OS 许可证',
'Class:VirtualMachine/Attribute:oslicence_id+' => '',
'Class:VirtualMachine/Attribute:oslicence_name' => '名称',
'Class:VirtualMachine/Attribute:oslicence_name+' => '',
@@ -762,7 +800,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:VirtualMachine/Attribute:cpu+' => '',
'Class:VirtualMachine/Attribute:ram' => '内存',
'Class:VirtualMachine/Attribute:ram+' => '',
- 'Class:VirtualMachine/Attribute:managementip' => '管理IP',
+ 'Class:VirtualMachine/Attribute:managementip' => '管理 IP',
'Class:VirtualMachine/Attribute:managementip+' => '',
'Class:VirtualMachine/Attribute:logicalinterface_list' => '网卡',
'Class:VirtualMachine/Attribute:logicalinterface_list+' => '所有逻辑网卡',
@@ -774,7 +812,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:LogicalVolume' => '逻辑卷',
- 'Class:LogicalVolume+' => '',
+ 'Class:LogicalVolume+' => '存储系统里的基本存储单元. 它可以被多个服务器和虚拟设备访问.',
'Class:LogicalVolume/Attribute:name' => '名称',
'Class:LogicalVolume/Attribute:name+' => '',
'Class:LogicalVolume/Attribute:lun_id' => 'LUN ID',
@@ -800,8 +838,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkServerToVolume' => '关联服务器/逻辑卷',
- 'Class:lnkServerToVolume+' => '',
+ 'Class:lnkServerToVolume' => '链接 服务器/逻辑卷',
+ 'Class:lnkServerToVolume+' => '这是多对多的关系, 某台服务器使用了一个存储卷(存储系统中的一个存储单元). 其它服务器也可以使用相同的逻辑卷.',
'Class:lnkServerToVolume/Name' => '%1$s / %2$s',
'Class:lnkServerToVolume/Attribute:volume_id' => '逻辑卷',
'Class:lnkServerToVolume/Attribute:volume_id+' => '',
@@ -820,8 +858,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkVirtualDeviceToVolume' => '关联虚拟设备/逻辑卷',
- 'Class:lnkVirtualDeviceToVolume+' => '',
+ 'Class:lnkVirtualDeviceToVolume' => '链接 虚拟设备/逻辑卷',
+ 'Class:lnkVirtualDeviceToVolume+' => '这是多对多的关系, 某个虚拟设备使用了一个逻辑卷(存储系统中的一个存储单元). 其它虚拟设备也可以使用相同的逻辑卷.',
'Class:lnkVirtualDeviceToVolume/Name' => '%1$s / %2$s',
'Class:lnkVirtualDeviceToVolume/Attribute:volume_id' => '逻辑卷',
'Class:lnkVirtualDeviceToVolume/Attribute:volume_id+' => '',
@@ -840,8 +878,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkSanToDatacenterDevice' => '关联 SAN/数据中心设备',
- 'Class:lnkSanToDatacenterDevice+' => '',
+ 'Class:lnkSanToDatacenterDevice' => '链接 SAN交换机/数据中心设备',
+ 'Class:lnkSanToDatacenterDevice+' => '这是多对多的关系, SAN交换机与数据中心设备(服务器、网络设备等)之间存在的网络连接.',
'Class:lnkSanToDatacenterDevice/Name' => '%1$s / %2$s',
'Class:lnkSanToDatacenterDevice/Attribute:san_id' => 'SAN 交换机',
'Class:lnkSanToDatacenterDevice/Attribute:san_id+' => '',
@@ -863,7 +901,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Tape' => '磁带',
- 'Class:Tape+' => 'A Tape (or cartridge) within '.ITOP_APPLICATION_SHORT.' is a removable piece of storage part of a Tape Library~~',
+ 'Class:Tape+' => '磁带(或盒式磁带) 在 '.ITOP_APPLICATION_SHORT.' 中是磁带库的一部分,可移除的存储介质.',
'Class:Tape/Attribute:name' => '名称',
'Class:Tape/Attribute:name+' => '',
'Class:Tape/Attribute:description' => '描述',
@@ -882,7 +920,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:NASFileSystem' => 'NAS 文件系统',
- 'Class:NASFileSystem+' => '',
+ 'Class:NASFileSystem+' => '表示托管在特定 NAS (Network Attached Storage) 内的共享文件系统.',
'Class:NASFileSystem/Attribute:name' => '名称',
'Class:NASFileSystem/Attribute:name+' => '',
'Class:NASFileSystem/Attribute:description' => '描述',
@@ -897,55 +935,17 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:NASFileSystem/Attribute:nas_name+' => '',
]);
-//
-// Class: Software
-//
-
-Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:Software' => '软件',
- 'Class:Software+' => '',
- 'Class:Software/ComplementaryName' => '%1$s - %2$s',
- 'Class:Software/Attribute:name' => '名称',
- 'Class:Software/Attribute:name+' => '',
- 'Class:Software/Attribute:vendor' => '厂商',
- 'Class:Software/Attribute:vendor+' => '',
- 'Class:Software/Attribute:version' => '版本',
- 'Class:Software/Attribute:version+' => '',
- 'Class:Software/Attribute:documents_list' => '文档',
- 'Class:Software/Attribute:documents_list+' => '此软件的所有文档',
- 'Class:Software/Attribute:logo' => 'Logo~~',
- 'Class:Software/Attribute:logo+' => 'Used as icon for all Software Instance objects using this Software, when displayed within impact analysis graphs~~',
- 'Class:Software/Attribute:type' => '类型',
- 'Class:Software/Attribute:type+' => '',
- 'Class:Software/Attribute:type/Value:DBServer' => '数据库服务器',
- 'Class:Software/Attribute:type/Value:DBServer+' => '数据库服务器',
- 'Class:Software/Attribute:type/Value:Middleware' => '中间件',
- 'Class:Software/Attribute:type/Value:Middleware+' => '中间件',
- 'Class:Software/Attribute:type/Value:OtherSoftware' => '其它软件',
- 'Class:Software/Attribute:type/Value:OtherSoftware+' => '其它软件',
- 'Class:Software/Attribute:type/Value:PCSoftware' => 'PC软件',
- 'Class:Software/Attribute:type/Value:PCSoftware+' => 'PC软件',
- 'Class:Software/Attribute:type/Value:WebServer' => 'Web服务器',
- 'Class:Software/Attribute:type/Value:WebServer+' => 'Web服务器',
- 'Class:Software/Attribute:softwareinstance_list' => '软件实例',
- 'Class:Software/Attribute:softwareinstance_list+' => '此软件的所有实例',
- 'Class:Software/Attribute:softwarepatch_list' => '软件补丁',
- 'Class:Software/Attribute:softwarepatch_list+' => '此软件的所有补丁',
- 'Class:Software/Attribute:softwarelicence_list' => '软件许可证',
- 'Class:Software/Attribute:softwarelicence_list+' => '此软件的所有许可证',
-]);
-
//
// Class: Patch
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Patch' => '补丁',
- 'Class:Patch+' => '',
+ 'Class:Patch+' => '抽象类,用于对系统或软件提供的补丁、热修复、安全修复或软件服务包.',
'Class:Patch/Attribute:name' => '名称',
'Class:Patch/Attribute:name+' => '',
'Class:Patch/Attribute:documents_list' => '文档',
- 'Class:Patch/Attribute:documents_list+' => '此补丁关联的所有文档',
+ 'Class:Patch/Attribute:documents_list+' => '此补丁相关的所有文档',
'Class:Patch/Attribute:description' => '描述',
'Class:Patch/Attribute:description+' => '',
'Class:Patch/Attribute:finalclass' => '补丁类型',
@@ -957,13 +957,13 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:OSPatch' => '操作系统补丁',
- 'Class:OSPatch+' => '',
+ 'Class:OSPatch' => 'OS 补丁',
+ 'Class:OSPatch+' => '针对特定操作系统的补丁、热修复、安全修复或服务包.',
'Class:OSPatch/Attribute:functionalcis_list' => '设备',
'Class:OSPatch/Attribute:functionalcis_list+' => '已安装此补丁的所有系统',
- 'Class:OSPatch/Attribute:osversion_id' => '操作系统版本',
+ 'Class:OSPatch/Attribute:osversion_id' => 'OS 版本',
'Class:OSPatch/Attribute:osversion_id+' => '',
- 'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
+ 'Class:OSPatch/Attribute:osfamily_id' => 'OS 家族',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => '名称',
'Class:OSPatch/Attribute:osversion_name+' => '',
@@ -975,7 +975,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SoftwarePatch' => '软件补丁',
- 'Class:SoftwarePatch+' => '',
+ 'Class:SoftwarePatch+' => '针对特定软件的补丁、热修复、安全修复或服务包.',
'Class:SoftwarePatch/Attribute:software_id' => '软件',
'Class:SoftwarePatch/Attribute:software_id+' => '',
'Class:SoftwarePatch/Attribute:software_name' => '名称',
@@ -990,11 +990,11 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Licence' => '许可证',
- 'Class:Licence+' => '',
+ 'Class:Licence+' => '抽象类.针对特定操作系统版本或软件版本的许可证合同',
'Class:Licence/Attribute:name' => '名称',
'Class:Licence/Attribute:name+' => '',
'Class:Licence/Attribute:documents_list' => '文档',
- 'Class:Licence/Attribute:documents_list+' => '此许可证关联的所有文档',
+ 'Class:Licence/Attribute:documents_list+' => '此许可证相关的所有文档',
'Class:Licence/Attribute:org_id' => '组织',
'Class:Licence/Attribute:org_id+' => '',
'Class:Licence/Attribute:organization_name' => '组织名称',
@@ -1024,13 +1024,13 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:OSLicence' => '操作系统许可证',
- 'Class:OSLicence+' => '',
+ 'Class:OSLicence' => 'OS 许可证',
+ 'Class:OSLicence+' => '针对特定操作系统的许可证合同. 该许可证与操作系统相关联 (例如 Windows 2008 R2) 并可以与多个物理机或虚拟机关联.',
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s',
- 'Class:OSLicence/Attribute:osversion_id' => '操作系统版本',
+ 'Class:OSLicence/Attribute:osversion_id' => 'OS版本',
'Class:OSLicence/Attribute:osversion_id+' => '',
- 'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
- 'Class:OSLicence/Attribute:osfamily_id+' => '~~',
+ 'Class:OSLicence/Attribute:osfamily_id' => 'OS家族',
+ 'Class:OSLicence/Attribute:osfamily_id+' => '',
'Class:OSLicence/Attribute:osversion_name' => '名称',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => '虚拟机',
@@ -1045,7 +1045,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SoftwareLicence' => '软件许可证',
- 'Class:SoftwareLicence+' => '',
+ 'Class:SoftwareLicence+' => '针对特定软件的许可证合同. 该许可证与某个软件相关联 (例如 MS Office 2010) 并可以与该软件的多个实例关联.',
'Class:SoftwareLicence/ComplementaryName' => '%1$s - %2$s',
'Class:SoftwareLicence/Attribute:software_id' => '软件',
'Class:SoftwareLicence/Attribute:software_id+' => '',
@@ -1060,8 +1060,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkDocumentToLicence' => '关联文档/许可证',
- 'Class:lnkDocumentToLicence+' => '',
+ 'Class:lnkDocumentToLicence' => '链接 文档/许可证',
+ 'Class:lnkDocumentToLicence+' => 'Link used when a Document is applicable to a License.~~',
'Class:lnkDocumentToLicence/Name' => '%1$s / %2$s',
'Class:lnkDocumentToLicence/Attribute:licence_id' => '许可证',
'Class:lnkDocumentToLicence/Attribute:licence_id+' => '',
@@ -1078,14 +1078,18 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:OSVersion' => '操作系统版本',
- 'Class:OSVersion+' => '',
- 'Class:OSVersion/Attribute:osfamily_id' => '操作系统家族',
+ 'Class:OSVersion' => 'OS 版本',
+ 'Class:OSVersion+' => '分类. 计算机 (物理机, 虚拟机 或 PC) 的 "OS 版本" 对应的可能的值. OS 版本以 OS 家族为单位进行组织.',
+ 'Class:OSVersion/Attribute:osfamily_id' => 'OS 家族',
'Class:OSVersion/Attribute:osfamily_id+' => '',
'Class:OSVersion/Attribute:osfamily_name' => '名称',
'Class:OSVersion/Attribute:osfamily_name+' => '',
- 'Class:OSVersion/UniquenessRule:name_osfamily+' => 'Name must be unique in the OS family~~',
- 'Class:OSVersion/UniquenessRule:name_osfamily' => 'this OS version already exists within the OS family~~',
+ 'Class:OSVersion/Attribute:end_of_support' => '过保日期',
+ 'Class:OSVersion/Attribute:end_of_support+' => 'The date after which the editor ceases to provide patches for this OS version.~~',
+ 'Class:OSVersion/Attribute:ospatches_list' => 'OS 补丁',
+ 'Class:OSVersion/Attribute:ospatches_list+' => 'All the OS patches for this OS version~~',
+ 'Class:OSVersion/UniquenessRule:name_osfamily+' => 'OS 家族的名称必须唯一',
+ 'Class:OSVersion/UniquenessRule:name_osfamily' => '此 OS 版本已在 OS 家族中存在',
]);
//
@@ -1093,10 +1097,12 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:OSFamily' => '操作系统家族',
- 'Class:OSFamily+' => '',
- 'Class:OSFamily/UniquenessRule:name+' => 'Name must be unique~~',
- 'Class:OSFamily/UniquenessRule:name' => 'this OS family already exists~~',
+ 'Class:OSFamily' => 'OS 家族',
+ 'Class:OSFamily+' => '分类. 物理机、虚拟机、PC 的 "OS 家族" 属性可能的值列表.',
+ 'Class:OSFamily/Attribute:osversions_list' => 'OS 版本',
+ 'Class:OSFamily/Attribute:osversions_list+' => '此 OS 家族的所有 OS 版本',
+ 'Class:OSFamily/UniquenessRule:name+' => '名称必须唯一',
+ 'Class:OSFamily/UniquenessRule:name' => '此 OS 家族已存在',
]);
//
@@ -1105,9 +1111,13 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Brand' => '品牌',
- 'Class:Brand+' => '',
+ 'Class:Brand+' => '分类. 物理设备 "品牌" 的可能的值列表.',
+ 'Class:Brand/Attribute:iosversions_list' => 'IOS 版本',
+ 'Class:Brand/Attribute:iosversions_list+' => '此品牌的所有 IOS 版本',
'Class:Brand/Attribute:logo' => 'Logo',
'Class:Brand/Attribute:logo+' => '',
+ 'Class:Brand/Attribute:models_list' => '型号',
+ 'Class:Brand/Attribute:models_list+' => '此品牌的所有型号',
'Class:Brand/Attribute:physicaldevices_list' => '物理设备',
'Class:Brand/Attribute:physicaldevices_list+' => '此品牌的所有物理设备',
'Class:Brand/UniquenessRule:name+' => '名称必须唯一',
@@ -1119,8 +1129,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:Model' => '型号',
- 'Class:Model+' => '',
+ 'Class:Model' => '设备型号',
+ 'Class:Model+' => '分类. 物理设备型号属性可能的值列表. 每个型号只属于一个品牌,通常适用于一种单一类别的物理设备.',
'Class:Model/ComplementaryName' => '%1$s - %2$s',
'Class:Model/Attribute:brand_id' => '品牌',
'Class:Model/Attribute:brand_id+' => '',
@@ -1130,14 +1140,16 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Model/Attribute:picture+' => '',
'Class:Model/Attribute:type' => '设备类型',
'Class:Model/Attribute:type+' => '',
+ 'Class:Model/Attribute:end_of_support' => '过保日期',
+ 'Class:Model/Attribute:end_of_support+' => '厂商提供补丁和支持的最后时间.',
'Class:Model/Attribute:type/Value:PowerSource' => '电源',
'Class:Model/Attribute:type/Value:PowerSource+' => '电源',
'Class:Model/Attribute:type/Value:DiskArray' => '磁盘阵列',
'Class:Model/Attribute:type/Value:DiskArray+' => '磁盘阵列',
'Class:Model/Attribute:type/Value:Enclosure' => '机柜',
'Class:Model/Attribute:type/Value:Enclosure+' => '机柜',
- 'Class:Model/Attribute:type/Value:IPPhone' => 'IP电话',
- 'Class:Model/Attribute:type/Value:IPPhone+' => 'IP电话',
+ 'Class:Model/Attribute:type/Value:IPPhone' => 'IP 电话',
+ 'Class:Model/Attribute:type/Value:IPPhone+' => 'IP 电话',
'Class:Model/Attribute:type/Value:MobilePhone' => '手机',
'Class:Model/Attribute:type/Value:MobilePhone+' => '手机',
'Class:Model/Attribute:type/Value:NAS' => 'NAS',
@@ -1154,10 +1166,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Model/Attribute:type/Value:Printer+' => '打印机',
'Class:Model/Attribute:type/Value:Rack' => '机架',
'Class:Model/Attribute:type/Value:Rack+' => '机架',
- 'Class:Model/Attribute:type/Value:SANSwitch' => 'SAN交换机',
- 'Class:Model/Attribute:type/Value:SANSwitch+' => 'SAN交换机',
- 'Class:Model/Attribute:type/Value:Server' => '服务器',
- 'Class:Model/Attribute:type/Value:Server+' => '服务器',
+ 'Class:Model/Attribute:type/Value:SANSwitch' => 'SAN 交换机',
+ 'Class:Model/Attribute:type/Value:SANSwitch+' => '光纤交换机',
+ 'Class:Model/Attribute:type/Value:Server' => '物理机',
+ 'Class:Model/Attribute:type/Value:Server+' => '物理机',
'Class:Model/Attribute:type/Value:StorageSystem' => '存储系统',
'Class:Model/Attribute:type/Value:StorageSystem+' => '存储系统',
'Class:Model/Attribute:type/Value:Tablet' => '平板',
@@ -1178,9 +1190,9 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:NetworkDeviceType' => '网络设备类型',
- 'Class:NetworkDeviceType+' => '',
- 'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
- 'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
+ 'Class:NetworkDeviceType+' => '分类. 网络设备 "类型" 的可能的值 (例如:路由器、交换机、防火墙等).',
+ 'Class:NetworkDeviceType/Attribute:logo' => 'Logo',
+ 'Class:NetworkDeviceType/Attribute:logo+' => '用于此类型网络设备的图标,当在控制台中显示时 (详情、摘要卡片和影响分析图表)',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => '网络设备',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => '此类型的所有网络设备',
]);
@@ -1191,13 +1203,17 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:IOSVersion' => 'IOS 版本',
- 'Class:IOSVersion+' => '',
+ 'Class:IOSVersion+' => '分类. 网络设备操作系统的版本可能的值 (IOS 来自 Cisco 的 Internetwork Operating System).',
'Class:IOSVersion/Attribute:brand_id' => '品牌',
'Class:IOSVersion/Attribute:brand_id+' => '',
'Class:IOSVersion/Attribute:brand_name' => '名称',
'Class:IOSVersion/Attribute:brand_name+' => '',
- 'Class:IOSVersion/UniquenessRule:name_brand+' => 'Name must be unique in the brand~~',
- 'Class:IOSVersion/UniquenessRule:name_brand' => 'this IOS version already exists for this brand~~',
+ 'Class:IOSVersion/Attribute:end_of_support' => '过保日期',
+ 'Class:IOSVersion/Attribute:end_of_support+' => '厂商提供补丁的最后时间.',
+ 'Class:IOSVersion/Attribute:networkdevices_list' => '网络设备',
+ 'Class:IOSVersion/Attribute:networkdevices_list+' => '运行此 IOS 版本的所有网络设备',
+ 'Class:IOSVersion/UniquenessRule:name_brand+' => '名称在品牌中必须唯一',
+ 'Class:IOSVersion/UniquenessRule:name_brand' => '此 IOS 版本已存在于此品牌',
]);
//
@@ -1205,8 +1221,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkDocumentToPatch' => '关联文档/补丁',
- 'Class:lnkDocumentToPatch+' => '',
+ 'Class:lnkDocumentToPatch' => '链接 文档/补丁',
+ 'Class:lnkDocumentToPatch+' => 'Link used when a Document is applicable to a Patch.~~',
'Class:lnkDocumentToPatch/Name' => '%1$s / %2$s',
'Class:lnkDocumentToPatch/Attribute:patch_id' => '补丁',
'Class:lnkDocumentToPatch/Attribute:patch_id+' => '',
@@ -1223,8 +1239,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkSoftwareInstanceToSoftwarePatch' => ' 关联软件实例/软件补丁',
- 'Class:lnkSoftwareInstanceToSoftwarePatch+' => '',
+ 'Class:lnkSoftwareInstanceToSoftwarePatch' => '链接 软件实例/软件补丁',
+ 'Class:lnkSoftwareInstanceToSoftwarePatch+' => 'This link indicates that a software patch has been applied to a software instance.~~',
'Class:lnkSoftwareInstanceToSoftwarePatch/Name' => '%1$s / %2$s',
'Class:lnkSoftwareInstanceToSoftwarePatch/Attribute:softwarepatch_id' => '软件补丁',
'Class:lnkSoftwareInstanceToSoftwarePatch/Attribute:softwarepatch_id+' => '',
@@ -1241,16 +1257,16 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkFunctionalCIToOSPatch' => '关联功能项/操作系统补丁',
- 'Class:lnkFunctionalCIToOSPatch+' => '',
+ 'Class:lnkFunctionalCIToOSPatch' => '链接 功能配置项/OS 补丁',
+ 'Class:lnkFunctionalCIToOSPatch+' => 'Models the deployment of an OS Patch on a device.~~',
'Class:lnkFunctionalCIToOSPatch/Name' => '%1$s / %2$s',
- 'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_id' => '操作系统补丁',
+ 'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_id' => 'OS 补丁',
'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_id+' => '',
- 'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_name' => '操作系统补丁名称',
+ 'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_name' => 'OS 补丁名称',
'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_name+' => '',
- 'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_id' => '功能项',
+ 'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_id' => '功能配置项',
'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_id+' => '',
- 'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_name' => '功能项名称',
+ 'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_name' => '功能配置项名称',
'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_name+' => '',
]);
@@ -1259,8 +1275,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkDocumentToSoftware' => '关联文档/软件',
- 'Class:lnkDocumentToSoftware+' => '',
+ 'Class:lnkDocumentToSoftware' => '链接 文档/软件',
+ 'Class:lnkDocumentToSoftware+' => 'Link used when a Document is applicable to Software.~~',
'Class:lnkDocumentToSoftware/Name' => '%1$s / %2$s',
'Class:lnkDocumentToSoftware/Attribute:software_id' => '软件',
'Class:lnkDocumentToSoftware/Attribute:software_id+' => '',
@@ -1278,7 +1294,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Subnet' => '子网',
- 'Class:Subnet+' => '',
+ 'Class:Subnet+' => 'IP 网段, 由 IP 地址和掩码定义',
'Class:Subnet/Name' => '%1$s/%2$s',
'Class:Subnet/ComplementaryName' => '%1$s - %2$s',
'Class:Subnet/Attribute:description' => '描述',
@@ -1303,8 +1319,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:VLAN' => 'VLAN',
- 'Class:VLAN+' => '',
- 'Class:VLAN/Attribute:vlan_tag' => 'VLAN 标记',
+ 'Class:VLAN+' => 'VLAN 即虚拟局域网,用于以逻辑方式对局域网内的网络、子网和物理接口进行分组.',
+ 'Class:VLAN/Attribute:vlan_tag' => 'VLAN 标签',
'Class:VLAN/Attribute:vlan_tag+' => '',
'Class:VLAN/Attribute:description' => '描述',
'Class:VLAN/Attribute:description+' => '',
@@ -1323,8 +1339,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkSubnetToVLAN' => '关联子网/VLAN',
- 'Class:lnkSubnetToVLAN+' => '',
+ 'Class:lnkSubnetToVLAN' => '链接 子网/VLAN',
+ 'Class:lnkSubnetToVLAN+' => '这是多对多的关系, 某个 VLAN 包含一个子网. 其它 VLAN 也可以包含相同的子网. 并且一个 VLAN 可以跨越多个子网.',
'Class:lnkSubnetToVLAN/Name' => '%1$s / %2$s',
'Class:lnkSubnetToVLAN/Attribute:subnet_id' => '子网',
'Class:lnkSubnetToVLAN/Attribute:subnet_id+' => '',
@@ -1334,7 +1350,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:lnkSubnetToVLAN/Attribute:subnet_name+' => '',
'Class:lnkSubnetToVLAN/Attribute:vlan_id' => 'VLAN',
'Class:lnkSubnetToVLAN/Attribute:vlan_id+' => '',
- 'Class:lnkSubnetToVLAN/Attribute:vlan_tag' => 'VLAN 标记',
+ 'Class:lnkSubnetToVLAN/Attribute:vlan_tag' => 'VLAN 标签',
'Class:lnkSubnetToVLAN/Attribute:vlan_tag+' => '',
]);
@@ -1344,7 +1360,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:NetworkInterface' => '网卡',
- 'Class:NetworkInterface+' => '',
+ 'Class:NetworkInterface+' => '对所有网络接口的抽象.',
'Class:NetworkInterface/Attribute:name' => '名称',
'Class:NetworkInterface/Attribute:name+' => '',
'Class:NetworkInterface/Attribute:finalclass' => '网卡类型',
@@ -1357,9 +1373,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:IPInterface' => 'IP 接口',
- 'Class:IPInterface+' => '',
+ 'Class:IPInterface+' => '抽象类. 一种具有 IP 地址的网络接口类型',
'Class:IPInterface/Attribute:ipaddress' => 'IP 地址',
'Class:IPInterface/Attribute:ipaddress+' => '',
+
'Class:IPInterface/Attribute:macaddress' => 'MAC地址',
'Class:IPInterface/Attribute:macaddress+' => '',
'Class:IPInterface/Attribute:comment' => '备注',
@@ -1378,12 +1395,16 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:PhysicalInterface' => '物理网卡',
- 'Class:PhysicalInterface+' => '',
+ 'Class:PhysicalInterface+' => '基于物理网络接口的IP接口类型 (例如,以太网卡).',
'Class:PhysicalInterface/Name' => '%2$s %1$s',
'Class:PhysicalInterface/Attribute:connectableci_id' => '设备',
'Class:PhysicalInterface/Attribute:connectableci_id+' => '',
'Class:PhysicalInterface/Attribute:connectableci_name' => '设备名称',
'Class:PhysicalInterface/Attribute:connectableci_name+' => '',
+ 'Class:PhysicalInterface/Attribute:org_id' => '组织',
+ 'Class:PhysicalInterface/Attribute:org_id+' => '',
+ 'Class:PhysicalInterface/Attribute:location_id' => '位置',
+ 'Class:PhysicalInterface/Attribute:location_id+' => '',
'Class:PhysicalInterface/Attribute:vlans_list' => 'VLAN',
'Class:PhysicalInterface/Attribute:vlans_list+' => '',
]);
@@ -1393,8 +1414,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkPhysicalInterfaceToVLAN' => '关联物理网卡/VLAN',
- 'Class:lnkPhysicalInterfaceToVLAN+' => '',
+ 'Class:lnkPhysicalInterfaceToVLAN' => '链接 物理网卡/VLAN',
+ 'Class:lnkPhysicalInterfaceToVLAN+' => 'This link indicates when a network interface is part of a VLAN (虚拟局域网).',
'Class:lnkPhysicalInterfaceToVLAN/Name' => '%1$s %2$s / %3$s',
'Class:lnkPhysicalInterfaceToVLAN/Attribute:physicalinterface_id' => '物理网卡',
'Class:lnkPhysicalInterfaceToVLAN/Attribute:physicalinterface_id+' => '',
@@ -1406,7 +1427,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:lnkPhysicalInterfaceToVLAN/Attribute:physicalinterface_device_name+' => '',
'Class:lnkPhysicalInterfaceToVLAN/Attribute:vlan_id' => 'VLAN',
'Class:lnkPhysicalInterfaceToVLAN/Attribute:vlan_id+' => '',
- 'Class:lnkPhysicalInterfaceToVLAN/Attribute:vlan_tag' => 'VLAN 标记',
+ 'Class:lnkPhysicalInterfaceToVLAN/Attribute:vlan_tag' => 'VLAN 标签',
'Class:lnkPhysicalInterfaceToVLAN/Attribute:vlan_tag+' => '',
]);
@@ -1416,7 +1437,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:LogicalInterface' => '逻辑网卡',
- 'Class:LogicalInterface+' => '',
+ 'Class:LogicalInterface+' => '不与物理网卡直接对应的IP接口,其关联是动态的,通常用于虚拟机.',
'Class:LogicalInterface/Attribute:virtualmachine_id' => '虚拟机',
'Class:LogicalInterface/Attribute:virtualmachine_id+' => '',
'Class:LogicalInterface/Attribute:virtualmachine_name' => '虚拟机名称',
@@ -1428,8 +1449,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:FiberChannelInterface' => '光纤接口',
- 'Class:FiberChannelInterface+' => '',
+ 'Class:FiberChannelInterface' => '光口',
+ 'Class:FiberChannelInterface+' => '主要用于存储系统的一种高速网络接口.',
'Class:FiberChannelInterface/Attribute:speed' => '速率',
'Class:FiberChannelInterface/Attribute:speed+' => '',
'Class:FiberChannelInterface/Attribute:topology' => '拓扑',
@@ -1447,8 +1468,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkConnectableCIToNetworkDevice' => '关联可连接项/网络设备',
- 'Class:lnkConnectableCIToNetworkDevice+' => '',
+ 'Class:lnkConnectableCIToNetworkDevice' => '链接 可连接项/网络设备',
+ 'Class:lnkConnectableCIToNetworkDevice+' => 'Defines on which network equipment a device is connected.~~',
'Class:lnkConnectableCIToNetworkDevice/Name' => '%1$s / %2$s',
'Class:lnkConnectableCIToNetworkDevice/Attribute:networkdevice_id' => '网络设备',
'Class:lnkConnectableCIToNetworkDevice/Attribute:networkdevice_id+' => '',
@@ -1475,16 +1496,16 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkApplicationSolutionToFunctionalCI' => '关联应用方案/功能项',
- 'Class:lnkApplicationSolutionToFunctionalCI+' => '',
+ 'Class:lnkApplicationSolutionToFunctionalCI' => '链接 应用方案/功能配置项',
+ 'Class:lnkApplicationSolutionToFunctionalCI+' => 'Models the membership of a device to an Application Solution. The meaning of this relationship varies depending on the types of Application Solution.~~',
'Class:lnkApplicationSolutionToFunctionalCI/Name' => '%1$s / %2$s',
'Class:lnkApplicationSolutionToFunctionalCI/Attribute:applicationsolution_id' => '应用方案',
'Class:lnkApplicationSolutionToFunctionalCI/Attribute:applicationsolution_id+' => '',
'Class:lnkApplicationSolutionToFunctionalCI/Attribute:applicationsolution_name' => '应用方案名称',
'Class:lnkApplicationSolutionToFunctionalCI/Attribute:applicationsolution_name+' => '',
- 'Class:lnkApplicationSolutionToFunctionalCI/Attribute:functionalci_id' => '功能项',
+ 'Class:lnkApplicationSolutionToFunctionalCI/Attribute:functionalci_id' => '功能配置项',
'Class:lnkApplicationSolutionToFunctionalCI/Attribute:functionalci_id+' => '',
- 'Class:lnkApplicationSolutionToFunctionalCI/Attribute:functionalci_name' => '功能项名称',
+ 'Class:lnkApplicationSolutionToFunctionalCI/Attribute:functionalci_name' => '功能配置项名称',
'Class:lnkApplicationSolutionToFunctionalCI/Attribute:functionalci_name+' => '',
]);
@@ -1493,8 +1514,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkApplicationSolutionToBusinessProcess' => '关联应用方案/业务流程',
- 'Class:lnkApplicationSolutionToBusinessProcess+' => '',
+ 'Class:lnkApplicationSolutionToBusinessProcess' => '链接 应用方案/业务流程',
+ 'Class:lnkApplicationSolutionToBusinessProcess+' => 'Models the relationship between an Application Solution and a Business Process.~~',
'Class:lnkApplicationSolutionToBusinessProcess/Name' => '%1$s / %2$s',
'Class:lnkApplicationSolutionToBusinessProcess/Attribute:businessprocess_id' => '业务流程',
'Class:lnkApplicationSolutionToBusinessProcess/Attribute:businessprocess_id+' => '',
@@ -1512,7 +1533,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Group' => '配置组',
- 'Class:Group+' => '',
+ 'Class:Group+' => '配置组旨在为任何项目定义明确的配置项集合. 与应用方案不同,配置组不会受到其组件的影响,也不会影响它的组件. 例如,在进行操作系统迁移时,配置组可以方便地收集"待迁移的服务器". 随着迁移的进行,迁移完成的服务器将从配置组中移除.',
'Class:Group/ComplementaryName' => '%1$s - %2$s',
'Class:Group/Attribute:name' => '名称',
'Class:Group/Attribute:name+' => '',
@@ -1537,7 +1558,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Group/Attribute:parent_name' => '名称',
'Class:Group/Attribute:parent_name+' => '',
'Class:Group/Attribute:ci_list' => '关联的配置项',
- 'Class:Group/Attribute:ci_list+' => '此组关联的所有配置项',
+ 'Class:Group/Attribute:ci_list+' => '此配置组相关的所有配置项',
'Class:Group/Attribute:parent_id_friendlyname' => '上级配置组',
'Class:Group/Attribute:parent_id_friendlyname+' => '',
]);
@@ -1547,8 +1568,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkGroupToCI' => '关联配置组/配置项',
- 'Class:lnkGroupToCI+' => '',
+ 'Class:lnkGroupToCI' => '链接 配置组/配置项',
+ 'Class:lnkGroupToCI+' => 'This link indicates when a Functional CI is part of a Group.~~',
'Class:lnkGroupToCI/Name' => '%1$s / %2$s',
'Class:lnkGroupToCI/Attribute:group_id' => '组',
'Class:lnkGroupToCI/Attribute:group_id+' => '',
@@ -1562,20 +1583,38 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:lnkGroupToCI/Attribute:reason+' => '',
]);
+//
+// Class: lnkDocumentToFunctionalCI
+//
+
+Dict::Add('ZH CN', 'Chinese', '简体中文', [
+ 'Class:lnkDocumentToFunctionalCI' => '链接 文档/功能配置项',
+ 'Class:lnkDocumentToFunctionalCI+' => 'Link used when a Document is applicable to a Functional CI.~~',
+ 'Class:lnkDocumentToFunctionalCI/Name' => '%1$s / %2$s',
+ 'Class:lnkDocumentToFunctionalCI/Attribute:functionalci_id' => '功能配置项',
+ 'Class:lnkDocumentToFunctionalCI/Attribute:functionalci_id+' => '',
+ 'Class:lnkDocumentToFunctionalCI/Attribute:functionalci_name' => '功能配置项名称',
+ 'Class:lnkDocumentToFunctionalCI/Attribute:functionalci_name+' => '',
+ 'Class:lnkDocumentToFunctionalCI/Attribute:document_id' => '文档',
+ 'Class:lnkDocumentToFunctionalCI/Attribute:document_id+' => '',
+ 'Class:lnkDocumentToFunctionalCI/Attribute:document_name' => '文档名称',
+ 'Class:lnkDocumentToFunctionalCI/Attribute:document_name+' => '',
+]);
+
// Add translation for Fieldsets
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'ConfigMgmt:baseinfo' => 'General~~',
- 'ConfigMgmt:moreinfo' => 'CI specifics~~',
- 'Storage:moreinfo' => 'Storage specifics~~',
- 'ConfigMgmt:otherinfo' => 'Description~~',
- 'ConfigMgmt:dates' => 'Dates~~',
- 'Software:moreinfo' => 'Software specifics~~',
- 'Phone:moreinfo' => 'Phone specifics~~',
+ 'ConfigMgmt:baseinfo' => '概况',
+ 'ConfigMgmt:moreinfo' => '配置项详情',
+ 'ConfigMgmt:otherinfo' => '描述',
+ 'ConfigMgmt:dates' => '日期',
+ 'Storage:moreinfo' => '存储详情',
+ 'Software:moreinfo' => '软件详情',
+ 'Phone:moreinfo' => '电话详情',
'Server:baseinfo' => '基本信息',
+ 'Server:moreinfo' => '设备详情',
'Server:Date' => '日期',
- 'Server:moreinfo' => '更多信息',
- 'Server:otherinfo' => '其它信息',
+ 'Server:otherinfo' => '描述',
'Server:power' => '电力供应',
'Class:Subnet/Tab:IPUsage' => 'IP 使用率',
'Class:Subnet/Tab:IPUsage+' => '子网中哪些 IP 在使用或可用~',
@@ -1586,24 +1625,6 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Document:PreviewTab' => '预览',
]);
-//
-// Class: lnkDocumentToFunctionalCI
-//
-
-Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkDocumentToFunctionalCI' => '关联文档/功能项',
- 'Class:lnkDocumentToFunctionalCI+' => '',
- 'Class:lnkDocumentToFunctionalCI/Name' => '%1$s / %2$s',
- 'Class:lnkDocumentToFunctionalCI/Attribute:functionalci_id' => '功能项',
- 'Class:lnkDocumentToFunctionalCI/Attribute:functionalci_id+' => '',
- 'Class:lnkDocumentToFunctionalCI/Attribute:functionalci_name' => '功能项名称',
- 'Class:lnkDocumentToFunctionalCI/Attribute:functionalci_name+' => '',
- 'Class:lnkDocumentToFunctionalCI/Attribute:document_id' => '文档',
- 'Class:lnkDocumentToFunctionalCI/Attribute:document_id+' => '',
- 'Class:lnkDocumentToFunctionalCI/Attribute:document_name' => '文档名称',
- 'Class:lnkDocumentToFunctionalCI/Attribute:document_name+' => '',
-]);
-
//
// Application Menu
//
@@ -1649,19 +1670,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:ConfigManagement:Misc' => '杂项',
'Menu:Group' => '配置组',
'Menu:Group+' => '配置组',
- 'Menu:OSVersion' => 'OS版本',
+ 'Menu:OSVersion' => 'OS 版本',
'Menu:OSVersion+' => '',
'Menu:Software' => '软件清单',
'Menu:Software+' => '软件清单',
]);
-
-//
-// Class: PhysicalInterface
-//
-
-Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:PhysicalInterface/Attribute:org_id' => 'Organization~~',
- 'Class:PhysicalInterface/Attribute:org_id+' => '~~',
- 'Class:PhysicalInterface/Attribute:location_id' => 'Location~~',
- 'Class:PhysicalInterface/Attribute:location_id+' => '~~',
-]);
diff --git a/datamodels/2.x/itop-config/dictionaries/zh_cn.dict.itop-config.php b/datamodels/2.x/itop-config/dictionaries/zh_cn.dict.itop-config.php
index ec3308126a..8650e7cb2c 100644
--- a/datamodels/2.x/itop-config/dictionaries/zh_cn.dict.itop-config.php
+++ b/datamodels/2.x/itop-config/dictionaries/zh_cn.dict.itop-config.php
@@ -21,9 +21,10 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Menu:ConfigFileEditor' => 'Plain text editor~~',
- 'Menu:ConfigEditor' => '编辑配置文件',
+
+ 'Menu:ConfigFileEditor' => '纯文本编辑器',
'itop-config/Operation:Edit/Title' => '配置文件编辑器',
'config-edit-intro' => '编辑配置文件时请务必格外小心.',
'config-apply' => '应用',
@@ -34,7 +35,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'config-no-change' => '没有变化: 配置文件将保持不变.',
'config-reverted' => '配置文件已恢复.',
'config-parse-error' => '第%2$d行: %1$s.
配置文件尚未更新.',
- 'config-current-line' => '正在编辑第%1$s行',
+ 'config-current-line' => '正在编辑第 %1$s 行',
'config-saved-warning-db-password' => '保存成功, 但因为数据库密码中包含不支持的字符, 配置文件备份不会成功.',
'config-error-transaction' => '错误: 无效的事务编号. 配置没有被更新.',
'config-error-file-changed' => '错误: 配置文件在您打开以后已被更改, 无法保存. 请刷新并再次保存.',
diff --git a/datamodels/2.x/itop-container-mgmt/dictionaries/zh_cn.dict.itop-container-mgmt.php b/datamodels/2.x/itop-container-mgmt/dictionaries/zh_cn.dict.itop-container-mgmt.php
new file mode 100644
index 0000000000..6293a6f002
--- /dev/null
+++ b/datamodels/2.x/itop-container-mgmt/dictionaries/zh_cn.dict.itop-container-mgmt.php
@@ -0,0 +1,173 @@
+ '基本信息',
+ 'Container:moreinfo' => '容器详情',
+ 'Container:otherinfo' => '日期和描述',
+]);
+
+//
+// Class Container Image
+//
+
+Dict::Add('ZH CN', 'Chinese', '简体中文', [
+ 'Class:ContainerImage/Name' => '%1$s %2$s',
+ 'Class:ContainerImage/ComplementaryName' => '%1$s - %2$s',
+ 'Class:ContainerImage' => '容器镜像',
+ 'Class:ContainerImage+' => '准备作为容器启动的软件镜像',
+ 'Class:ContainerImage/Attribute:name' => '名称',
+ 'Class:ContainerImage/Attribute:name+' => '',
+ 'Class:ContainerImage/Attribute:version' => '版本',
+ 'Class:ContainerImage/Attribute:version+' => '',
+ 'Class:ContainerImage/Attribute:description' => '描述',
+ 'Class:ContainerImage/Attribute:description+' => '',
+ 'Class:ContainerImage/Attribute:publisher' => '发布者',
+ 'Class:ContainerImage/Attribute:publisher+' => '镜像的发布者. 例如: php, nginx, ...',
+ 'Class:ContainerImage/Attribute:image' => '镜像',
+ 'Class:ContainerImage/Attribute:image+' => '在对应的托管平台上检索镜像的详细信息',
+ 'Class:ContainerImage/Attribute:type_id' => '类型',
+ 'Class:ContainerImage/Attribute:type_id+' => 'Type d\image~~',
+ 'Class:ContainerImage/Attribute:software_id' => '软件',
+ 'Class:ContainerImage/Attribute:software_id+' => '',
+ 'Class:ContainerImage/Attribute:containerapplications_list' => '容器化应用',
+ 'Class:ContainerImage/Attribute:containerapplications_list+' => '此镜像所对应的应用程序',
+]);
+
+//
+// Class Container Application
+//
+
+Dict::Add('ZH CN', 'Chinese', '简体中文', [
+ 'Class:ContainerApplication/Name' => '%1$s',
+ 'Class:ContainerApplication/ComplementaryName' => '%1$s',
+ 'Class:ContainerApplication' => '容器化应用程序',
+ 'Class:ContainerApplication+' => '部署在容器平台上的应用程序',
+ 'Class:ContainerApplication/Attribute:descriptor' => 'Deployment file',
+ 'Class:ContainerApplication/Attribute:descriptor+' => 'File describing how to deploy the application on the container platform (e.g., Docker Compose, Helm Chart, etc.)',
+ 'Class:ContainerApplication/Attribute:containervirtualhost_id' => 'Container Host',
+ 'Class:ContainerApplication/Attribute:containervirtualhost_id+' => 'Container Platform on which the application is running',
+ 'Class:ContainerApplication/Attribute:logo' => 'Logo',
+ 'Class:ContainerApplication/Attribute:logo+' => 'Used as object icon when this ContainerApplication is displayed within impact analysis graphs',
+ 'Class:ContainerApplication/Attribute:containertype_id' => '容器类型',
+ 'Class:ContainerApplication/Attribute:containertype_id+' => '容器化使用的技术',
+ 'Class:ContainerApplication/Attribute:containerimages_list' => '容器镜像',
+ 'Class:ContainerApplication/Attribute:containerimages_list+' => 'Software images used to build the containerized application',
+
+]);
+
+//
+// Class: lnkContainerApplicationToImage
+//
+
+Dict::Add('ZH CN', 'Chinese', '简体中文', [
+ 'Class:lnkContainerApplicationToImage' => '链接 容器应用/容器镜像',
+ 'Class:lnkContainerApplicationToImage+' => '',
+ 'Class:lnkContainerApplicationToImage/Name' => '%1$s / %2$s',
+ 'Class:lnkContainerApplicationToImage/Name+' => '',
+ 'Class:lnkContainerApplicationToImage/Attribute:containerapplication_id' => '容器化应用程序',
+ 'Class:lnkContainerApplicationToImage/Attribute:containerapplication_id+' => '使用此镜像的应用程序',
+ 'Class:lnkContainerApplicationToImage/Attribute:containerimage_id' => '容器镜像',
+ 'Class:lnkContainerApplicationToImage/Attribute:containerimage_id+' => '用于构建容器化应用程序的软件镜像',
+]);
+
+//
+// Class Container Virtual Host
+//
+
+Dict::Add('ZH CN', 'Chinese', '简体中文', [
+ 'Class:ContainerVirtualHost/Name' => '%1$s',
+ 'Class:ContainerVirtualHost/ComplementaryName' => '',
+ 'Class:ContainerVirtualHost' => '容器平台',
+ 'Class:ContainerVirtualHost+' => 'Platform on which applications run as containers',
+ 'Class:ContainerVirtualHost/Attribute:containertype_id' => '容器类型',
+ 'Class:ContainerVirtualHost/Attribute:containertype_id+' => '用于交付容器的技术',
+ 'Class:ContainerVirtualHost/Attribute:status' => '状态',
+ 'Class:ContainerVirtualHost/Attribute:status+' => '容器平台的状态',
+ 'Class:ContainerVirtualHost/Attribute:containerapplications_list' => '应用程序',
+ 'Class:ContainerVirtualHost/Attribute:containerapplications_list+' => '在此容器环境中运行的应用程序',
+]);
+
+//
+// Class Container Host
+//
+
+Dict::Add('ZH CN', 'Chinese', '简体中文', [
+ 'Class:ContainerHost/Name' => '%1$s',
+ 'Class:ContainerHost/ComplementaryName' => '%1$s-%2$s',
+ 'Class:ContainerHost' => '容器宿主机',
+ 'Class:ContainerHost+' => '托管容器的宿主机. 它是容器平台的基本元素',
+ 'Class:ContainerHost/Attribute:containercluster_id' => '容器集群',
+ 'Class:ContainerHost/Attribute:containercluster_id+' => '',
+ 'Class:ContainerHost/Attribute:role' => '角色',
+ 'Class:ContainerHost/Attribute:role+' => '主机在集群中的角色:主节点或工作节点. 独立运行时不在集群中.',
+ 'Class:ContainerHost/Attribute:system_id' => '系统',
+ 'Class:ContainerHost/Attribute:system_id+' => '系统可以是物理机, 虚拟机, 云平台, ...',
+ 'Class:ContainerHost/Attribute:role/Value:master' => '主节点',
+ 'Class:ContainerHost/Attribute:role/Value:worker' => '工作节点',
+ 'Class:ContainerHost/Attribute:role/Value:standalone' => '独立运行',
+]);
+
+//
+// Class Container Cluster
+//
+
+Dict::Add('ZH CN', 'Chinese', '简体中文', [
+ 'Class:ContainerCluster/Name' => '%1$s',
+ 'Class:ContainerCluster/ComplementaryName' => '',
+ 'Class:ContainerCluster' => '容器集群',
+ 'Class:ContainerCluster+' => '由一组容器宿主机组成的容器平台',
+ 'Class:ContainerCluster/Attribute:redundancy' => '冗余配置',
+ 'Class:ContainerCluster/Attribute:redundancy/disabled' => '当所有主机都在运行时, 集群才是正常的',
+ 'Class:ContainerCluster/Attribute:redundancy/count' => '当至少 %1$s 个主机在运行时, 集群才是正常的',
+ 'Class:ContainerCluster/Attribute:redundancy/percent' => '当至少 %1$s %% 的在主机运行时,集群才是正常的',
+ 'Class:ContainerCluster/Attribute:containerhosts_list' => '容器宿主机',
+ 'Class:ContainerCluster/Attribute:containerhosts_list+' => '此集群的主机',
+]);
+
+//
+// Class Container Type
+//
+
+Dict::Add('ZH CN', 'Chinese', '简体中文', [
+ 'Class:ContainerType/Name' => '%1$s',
+ 'Class:ContainerType/ComplementaryName' => '',
+ 'Class:ContainerType' => '容器类型',
+ 'Class:ContainerType+' => '用于交付容器的技术',
+]);
+
+//
+// Class Container Type
+//
+
+Dict::Add('ZH CN', 'Chinese', '简体中文', [
+ 'Class:ContainerImageType/Name' => '%1$s',
+ 'Class:ContainerImageType/ComplementaryName' => '',
+ 'Class:ContainerImageType' => '容器镜像类型',
+ 'Class:ContainerImageType+' => '容器镜像的分类',
+]);
+
+//
+// Class Cloud, Server and Virtual Machine
+//
+
+Dict::Add('ZH CN', 'Chinese', '简体中文', [
+ 'Class:Cloud/Attribute:containerhosts_list' => '容器宿主机',
+ 'Class:Cloud/Attribute:containerhosts_list+' => '运行在此云平台上的容器宿主机列表',
+ 'Class:Server/Attribute:containerhosts_list' => '容器宿主机',
+ 'Class:Server/Attribute:containerhosts_list+' => '运行在此物理机上的容器宿主机列表',
+ 'Class:VirtualMachine/Attribute:containerhosts_list' => '容器宿主机',
+ 'Class:VirtualMachine/Attribute:containerhosts_list+' => '运行在此虚拟机上的容器宿主机列表',
+ 'Class:Software/Attribute:containerimages_list' => '容器镜像',
+ 'Class:Software/Attribute:containerimages_list+' => '运行此软件的容器镜像列表',
+]);
diff --git a/datamodels/2.x/itop-core-update/dictionaries/zh_cn.dict.itop-core-update.php b/datamodels/2.x/itop-core-update/dictionaries/zh_cn.dict.itop-core-update.php
index 433c7f610a..b5dd0aca59 100644
--- a/datamodels/2.x/itop-core-update/dictionaries/zh_cn.dict.itop-core-update.php
+++ b/datamodels/2.x/itop-core-update/dictionaries/zh_cn.dict.itop-core-update.php
@@ -26,12 +26,14 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'itop-core-update:UI:SelectUpdateFile' => '应用升级',
'itop-core-update:UI:ConfirmUpdate' => ' 升级',
'itop-core-update:UI:UpdateCoreFiles' => '应用升级',
- 'iTopUpdate:UI:MaintenanceModeActive' => '此应用当前维护中, 不允许任何用户访问. 必须运行安装或恢复归档来使其处于正常模式.',
+ 'iTopUpdate:UI:MaintenanceModeActive' => '此应用当前维护中, 不允许任何用户访问. 必须运行安装向导或恢复归档来使其处于正常模式.',
'itop-core-update:UI:UpdateDone' => '应用升级',
+
'itop-core-update/Operation:SelectUpdateFile/Title' => '应用升级',
'itop-core-update/Operation:ConfirmUpdate/Title' => '请确认升级应用',
'itop-core-update/Operation:UpdateCoreFiles/Title' => '应用正在升级',
'itop-core-update/Operation:UpdateDone/Title' => '应用升级完毕',
+
'iTopUpdate:UI:SelectUpdateFile' => '请选择要上传的升级文件',
'iTopUpdate:UI:CheckUpdate' => '校验升级文件',
'iTopUpdate:UI:ConfirmInstallFile' => '即将安装 %1$s',
@@ -50,6 +52,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'iTopUpdate:UI:UploadArchive' => '请选择要上传的软件包',
'iTopUpdate:UI:ServerFile' => '服务器上的软件包路径已存在',
'iTopUpdate:UI:WarningReadOnlyDuringUpdate' => '升级期间, 应用会变成只读状态.',
+
'iTopUpdate:UI:Status' => '状态',
'iTopUpdate:UI:Action' => '升级',
'iTopUpdate:UI:Setup' => ITOP_APPLICATION_SHORT.'安装',
@@ -61,8 +64,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'iTopUpdate:UI:ItopDiskSpace' => ITOP_APPLICATION_SHORT.'的磁盘空间',
'iTopUpdate:UI:DBDiskSpace' => '数据库的磁盘空间',
'iTopUpdate:UI:FileUploadMaxSize' => '文件上传大小上限',
- 'iTopUpdate:UI:PostMaxSize' => 'PHP ini值post_max_size: %1$s',
- 'iTopUpdate:UI:UploadMaxFileSize' => 'PHP ini 值 upload_max_filesize: %1$s',
+
+ 'iTopUpdate:UI:PostMaxSize' => 'PHP ini 的值 post_max_size: %1$s',
+ 'iTopUpdate:UI:UploadMaxFileSize' => 'PHP ini 的值 upload_max_filesize: %1$s',
+
'iTopUpdate:UI:CanCoreUpdate:Loading' => '正在检查文件',
'iTopUpdate:UI:CanCoreUpdate:Error' => '文件检查失败 (%1$s)',
'iTopUpdate:UI:CanCoreUpdate:ErrorFileNotExist' => '文件检查失败 (%1$s 文件不存在)',
@@ -70,11 +75,12 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'iTopUpdate:UI:CanCoreUpdate:Yes' => '应用可以升级',
'iTopUpdate:UI:CanCoreUpdate:No' => '应用无法升级: %1$s',
'iTopUpdate:UI:CanCoreUpdate:Warning' => '警告: 应用升级可能失败: %1$s',
- 'iTopUpdate:UI:CannotUpdateUseSetup' => '检测到一些文件被修改, 无法进行局部升级.请按照指南一步步操作以手动升级系统. 您必须使用安装已升级应用.',
+ 'iTopUpdate:UI:CannotUpdateUseSetup' => '检测到一些文件被修改, 无法进行局部升级.请按照流程一步步操作以手动升级系统. 您必须使用安装向导来升级应用.',
'iTopUpdate:UI:CheckInProgress' => '完整性检查中, 请稍候',
- 'iTopUpdate:UI:SetupLaunch' => '启动'.ITOP_APPLICATION_SHORT.'安装',
- 'iTopUpdate:UI:SetupLaunchConfirm' => '将启动'.ITOP_APPLICATION_SHORT.'安装, 确定吗?',
- 'iTopUpdate:UI:FastSetupLaunch' => 'Fast Setup~~',
+
+ 'iTopUpdate:UI:SetupLaunch' => '启动'.ITOP_APPLICATION_SHORT.'安装向导',
+ 'iTopUpdate:UI:SetupLaunchConfirm' => '即将启动'.ITOP_APPLICATION_SHORT.'安装向导, 请确定?',
+ 'iTopUpdate:UI:FastSetupLaunch' => '快速安装',
// Setup Messages
'iTopUpdate:UI:SetupMessage:Ready' => '准备开始',
@@ -101,6 +107,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'iTopUpdate:Error:InvalidToken' => '无效的 token',
'iTopUpdate:Error:UpdateFailed' => '升级失败',
'iTopUpdate:Error:FileUploadMaxSizeTooSmall' => '上传上限太小. 请调整 PHP 配置.',
+
'iTopUpdate:UI:RestoreArchive' => '您可以从归档文件 \'%1$s\' 还原应用程序',
'iTopUpdate:UI:RestoreBackup' => '您可以从 \'%1$s\' 还原数据库',
'iTopUpdate:UI:UpdateDone' => '升级成功',
diff --git a/datamodels/2.x/itop-core-update/src/Controller/AjaxController.php b/datamodels/2.x/itop-core-update/src/Controller/AjaxController.php
index 777858e368..7a100ed28a 100644
--- a/datamodels/2.x/itop-core-update/src/Controller/AjaxController.php
+++ b/datamodels/2.x/itop-core-update/src/Controller/AjaxController.php
@@ -14,13 +14,11 @@ use Combodo\iTop\CoreUpdate\Service\CoreUpdater;
use Combodo\iTop\DBTools\Service\DBToolsUtils;
use Combodo\iTop\FilesInformation\Service\FileNotExistException;
use Combodo\iTop\FilesInformation\Service\FilesInformation;
-use Config;
use ContextTag;
use Dict;
use Exception;
use IssueLog;
use MetaModel;
-use RunTimeEnvironment;
use SecurityException;
use SetupUtils;
use utils;
@@ -232,29 +230,6 @@ class AjaxController extends Controller
$this->DisplayJSONPage($aParams, $iResponseCode);
}
- public function OperationRebuildToolkitEnvironment()
- {
- $sTransactionId = utils::GetNewTransactionId();
- $aParams = [];
- $aParams['sTransactionId'] = $sTransactionId;
- $aParams['bStatus'] = true;
-
- $iResponseCode = 200;
- try {
- $aParams['sAjaxURL'] = utils::GetAbsoluteUrlAppRoot().'/pages/UI.php';
- $oConfig = new Config(APPCONF.ITOP_DEFAULT_ENV.'/'.ITOP_CONFIG_FILE);
- $oEnvironment = new RunTimeEnvironment(ITOP_DEFAULT_ENV);
- $oEnvironment->WriteConfigFileSafe($oConfig);
- $oEnvironment->CompileFrom(ITOP_DEFAULT_ENV);
- } catch (Exception $e) {
- IssueLog::Error('RebuildToolkitEnvironment: '.$e->getMessage());
- $aParams['sError'] = $e->getMessage();
- $iResponseCode = 500;
- $aParams['bStatus'] = false;
- }
- $this->DisplayJSONPage($aParams, $iResponseCode);
- }
-
/**
* @throws \SecurityException if CSRF token invalid
*
diff --git a/datamodels/2.x/itop-core-update/src/Service/CoreUpdater.php b/datamodels/2.x/itop-core-update/src/Service/CoreUpdater.php
index 31b56e074b..116da96a56 100644
--- a/datamodels/2.x/itop-core-update/src/Service/CoreUpdater.php
+++ b/datamodels/2.x/itop-core-update/src/Service/CoreUpdater.php
@@ -163,7 +163,7 @@ final class CoreUpdater
$oRuntimeEnv->LoadData($aAvailableModules, false /* no sample data*/);
$oRuntimeEnv->CallInstallerHandlers($aAvailableModules, 'AfterDataLoad');
$sDataModelVersion = $oRuntimeEnv->GetCurrentDataModelVersion();
- $oExtensionsMap = new iTopExtensionsMap();
+ $oExtensionsMap = iTopExtensionsMap::GetExtensionsMap();
// Default choices = as before
$oExtensionsMap->LoadChoicesFromDatabase($oConfig);
foreach ($oExtensionsMap->GetAllExtensions() as $oExtension) {
diff --git a/datamodels/2.x/itop-core-update/templates/SelectUpdateFile.html.twig b/datamodels/2.x/itop-core-update/templates/SelectUpdateFile.html.twig
index 389641e683..f7aa9a9d14 100644
--- a/datamodels/2.x/itop-core-update/templates/SelectUpdateFile.html.twig
+++ b/datamodels/2.x/itop-core-update/templates/SelectUpdateFile.html.twig
@@ -90,13 +90,6 @@
{% UIForm Standard {'sId':'launch-setup-form', Action:sLaunchSetupUrl} %}
{% UIButton ForDestructiveAction {'sLabel':'iTopUpdate:UI:SetupLaunch'|dict_s, 'sName':'launch-setup', 'sValue':'launch-setup', 'bIsSubmit':true, 'sId':'launch-setup'} %}
{% EndUIForm %}
- {% UIAlert ForInformation {sId:'fast-setup-alert', AddCSSClass:'ibo-is-hidden'} %}
- {% UIContentBlock Standard {sId:'fast-setup-content', aContainerClasses:['ibo-fast-setup-content']} %}
- {{ 'iTopUpdate:UI:SetupMessage:Compile'|dict_s }}
- {% EndUIContentBlock %}
- {% EndUIAlert %}
- {% UIButton ForDestructiveAction {sLabel:'iTopUpdate:UI:FastSetupLaunch'|dict_s, sName:'launch-fast-setup', sValue:'launch-fast-setup', sId:'launch-fast-setup'} %}
- {% UISpinner Standard {sId:'fast-setup-wait', IsHidden:true} %}
{% EndUIFieldSet %}
{% endif %}
diff --git a/datamodels/2.x/itop-core-update/templates/SelectUpdateFile.ready.js.twig b/datamodels/2.x/itop-core-update/templates/SelectUpdateFile.ready.js.twig
index b1e3111fb4..e9d1e3df17 100644
--- a/datamodels/2.x/itop-core-update/templates/SelectUpdateFile.ready.js.twig
+++ b/datamodels/2.x/itop-core-update/templates/SelectUpdateFile.ready.js.twig
@@ -116,51 +116,4 @@ $("#launch-setup-form").on("submit", function () {
return window.confirm("{{ 'iTopUpdate:UI:SetupLaunchConfirm'|dict_s }}");
});
-$("#launch-fast-setup").on("click", function(e) {
- var oMessage = $("#fast-setup-alert");
- var oContent = $("#fast-setup-content");
- oMessage.removeClass("ibo-is-hidden");
- oMessage.removeClass("ibo-is-failure");
- oMessage.removeClass("ibo-is-success");
- oMessage.addClass("ibo-is-information");
- oContent.html("{{ 'iTopUpdate:UI:SetupMessage:Compile'|dict_s }}");
-
- let fast_setup_wait = $("#fast-setup-wait");
- fast_setup_wait.removeClass("ibo-is-hidden");
- $(this).prop("disabled", true);
-
- $.ajax({
- method: "POST",
- url: "{{ sAjaxURL|raw }}",
- data: {
- route: "core_update_ajax.rebuild_toolkit_environment"
- },
- dataType: "json",
- complete: function(jqXHR, textStatus) {
- $("#fast-setup-wait").addClass("ibo-is-hidden");
- $("#launch-fast-setup").prop("disabled", false);
- fast_setup_wait.addClass("ibo-is-hidden");
- },
- success: function (data) {
- oMessage.removeClass("ibo-is-information");
-
- if (data.bStatus) {
- oMessage.removeClass("ibo-is-failure");
- oMessage.addClass("ibo-is-success");
- oContent.html("{{ 'iTopUpdate:UI:SetupMessage:UpdateDone'|dict_s }}");
- } else {
- oMessage.removeClass("ibo-is-success");
- oMessage.addClass("ibo-is-failure");
- oContent.html(data.sError);
- }
- },
- error: function(jqXHR, textStatus, errorThrown) {
- oMessage.removeClass("ibo-is-information");
- oMessage.removeClass("ibo-is-success");
- oMessage.addClass("ibo-is-failure");
- oContent.html(textStatus + ' ' + errorThrown);
- }
- });
-
-});
diff --git a/datamodels/2.x/itop-faq-light/dictionaries/zh_cn.dict.itop-faq-light.php b/datamodels/2.x/itop-faq-light/dictionaries/zh_cn.dict.itop-faq-light.php
index 22f187e0fe..a29112a002 100644
--- a/datamodels/2.x/itop-faq-light/dictionaries/zh_cn.dict.itop-faq-light.php
+++ b/datamodels/2.x/itop-faq-light/dictionaries/zh_cn.dict.itop-faq-light.php
@@ -4,7 +4,7 @@
* Localized data
*
* @copyright Copyright (C) 2010-2024 Combodo SAS
- * @license https://opensource.org/licenses/AGPL-3.0
+ * @license http://opensource.org/licenses/AGPL-3.0
*
* This file is part of iTop.
*
@@ -21,6 +21,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
// Dictionnay conventions
// Class:
// Class:+
@@ -30,10 +31,12 @@
// Class:/Attribute:/Value:+
// Class:/Stimulus:
// Class:/Stimulus:+
+
//////////////////////////////////////////////////////////////////////
// Classes in 'bizmodel'
//////////////////////////////////////////////////////////////////////
//
+
// Dictionnay conventions
// Class:
// Class:+
@@ -43,9 +46,11 @@
// Class:/Attribute:/Value:+
// Class:/Stimulus:
// Class:/Stimulus:+
+
//
// Class: FAQ
//
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:FAQ' => 'FAQ',
'Class:FAQ+' => '常见问题',
diff --git a/datamodels/2.x/itop-flow-map/dictionaries/zh_cn.dict.itop-flow-map.php b/datamodels/2.x/itop-flow-map/dictionaries/zh_cn.dict.itop-flow-map.php
new file mode 100644
index 0000000000..863ceef69b
--- /dev/null
+++ b/datamodels/2.x/itop-flow-map/dictionaries/zh_cn.dict.itop-flow-map.php
@@ -0,0 +1,91 @@
+ 'DataFlows between CIs~~',
+ 'Relation:dataflows/DownStream' => 'Outbound flows...',
+ 'Relation:dataflows/DownStream+' => 'Outbound flows map from',
+ 'Relation:dataflows/UpStream' => 'Inbound flows...',
+ 'Relation:dataflows/UpStream+' => 'Inbound flows map to',
+
+ 'Class:FunctionalCI/Attribute:dataflows' => '数据流',
+ 'Class:FunctionalCI/Attribute:dataflows+' => '该对象作为源或目标的数据流',
+ 'FunctionalCI:DataFlow:Title' => '数据流',
+ 'FunctionalCI:DataFlow:Inbound' => '入站数据流',
+ 'FunctionalCI:DataFlow:Outbound' => '出站数据流',
+
+ 'DataFlow:moreinfo' => '数据流详情',
+
+ 'Class:DataFlow' => '数据流',
+ 'Class:DataFlow+' => 'For application flow for example~~',
+ 'Class:DataFlow/Name' => '%1$s',
+ 'Class:DataFlow/Attribute:name' => '名称',
+ 'Class:DataFlow/Attribute:name+' => '已传输的数据',
+ 'Class:DataFlow/Attribute:source_id' => '数据源',
+ 'Class:DataFlow/Attribute:source_id+' => '数据流的源头配置项',
+ 'Class:DataFlow/Attribute:source_impact' => '数据源影响?',
+ 'Class:DataFlow/Attribute:source_impact+' => '数据源是否影响数据流?',
+ 'Class:DataFlow/Attribute:source_impact/Value:yes' => '是',
+ 'Class:DataFlow/Attribute:source_impact/Value:yes+' => '如果数据源失效,数据流将受到影响',
+ 'Class:DataFlow/Attribute:source_impact/Value:no' => '否',
+ 'Class:DataFlow/Attribute:source_impact/Value:no+' => '如果数据源失效,数据流不受影响',
+ 'Class:DataFlow/Attribute:destination_id' => '目标',
+ 'Class:DataFlow/Attribute:destination_id+' => '数据流的目标配置项',
+ 'Class:DataFlow/Attribute:destination_impact' => '目标影响',
+ 'Class:DataFlow/Attribute:destination_impact+' => '目标是否受数据流影响?',
+ 'Class:DataFlow/Attribute:destination_impact/Value:yes' => '是',
+ 'Class:DataFlow/Attribute:destination_impact/Value:yes+' => '如果数据流停止,目标将受到影响',
+ 'Class:DataFlow/Attribute:destination_impact/Value:no' => '否',
+ 'Class:DataFlow/Attribute:destination_impact/Value:no+' => '如果数据流停止,目标不受影响',
+ 'Class:DataFlow/Attribute:dataflowtype_id' => '数据流类型',
+ 'Class:DataFlow/Attribute:dataflowtype_id+' => '数据流的分类',
+ 'Class:DataFlow/Attribute:status' => '状态',
+ 'Class:DataFlow/Attribute:status+' => '',
+ 'Class:DataFlow/Attribute:status/Value:active' => '启用',
+ 'Class:DataFlow/Attribute:status/Value:inactive' => '停用',
+ 'Class:DataFlow/Attribute:execution_frequency' => '执行频率',
+ 'Class:DataFlow/Attribute:execution_frequency+' => '数据流执行的频率',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:realtime' => '实时',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:realtime+' => '',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:ondemand' => '按需',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:ondemand+' => '即时执行,不按计划进行',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:hourly' => '每小时',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:hourly+' => '',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:daily' => '每天',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:daily+' => '',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:weekly' => '每周',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:weekly+' => '',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:monthly' => '每月',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:monthly+' => '',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:yearly' => '每年',
+ 'Class:DataFlow/Attribute:execution_frequency/Value:yearly+' => '',
+ 'Class:DataFlow/Attribute:documents_list+' => '例如: 技术规范, 操作手册等.',
+ 'Class:DataFlow/Attribute:contacts_list+' => '例如: 数据流所有者, 技术支持等.',
+ 'Class:DataFlow/Error:CheckSource' => 'The source of a data flow cannot be a data flow itself. Choose another source CI than %1$s~~',
+ 'Class:DataFlow/Error:CheckDestination' => 'The destination of a data flow cannot be a data flow itself. Choose another destination CI than %1$s~~',
+
+ 'Class:DataFlowType' => '数据流类型',
+ 'Class:DataFlowType+' => '数据流的分类',
+
+/*
+ 'Class:DataFlow/Attribute:source_id_friendlyname' => 'source_id_friendlyname',
+ 'Class:DataFlow/Attribute:source_id_friendlyname+' => 'Full name',
+ 'Class:DataFlow/Attribute:source_id_finalclass_recall' => 'source_id->CI sub-class',
+ 'Class:DataFlow/Attribute:source_id_finalclass_recall+' => 'Name of the final class',
+ 'Class:DataFlow/Attribute:source_id_obsolescence_flag' => 'source_id->Obsolete',
+ 'Class:DataFlow/Attribute:source_id_obsolescence_flag+' => 'Computed dynamically on other attributes',
+ 'Class:DataFlow/Attribute:destination_id_friendlyname' => 'destination_id_friendlyname',
+ 'Class:DataFlow/Attribute:destination_id_friendlyname+' => 'Full name',
+ 'Class:DataFlow/Attribute:destination_id_finalclass_recall' => 'destination_id->CI sub-class',
+ 'Class:DataFlow/Attribute:destination_id_finalclass_recall+' => 'Name of the final class',
+ 'Class:DataFlow/Attribute:destination_id_obsolescence_flag' => 'destination_id->Obsolete',
+ 'Class:DataFlow/Attribute:destination_id_obsolescence_flag+' => 'Computed dynamically on other attributes',
+*/
+]);
diff --git a/datamodels/2.x/itop-hub-connector/dictionaries/zh_cn.dict.itop-hub-connector.php b/datamodels/2.x/itop-hub-connector/dictionaries/zh_cn.dict.itop-hub-connector.php
index 0f3c4866e2..eb0b3e17bc 100644
--- a/datamodels/2.x/itop-hub-connector/dictionaries/zh_cn.dict.itop-hub-connector.php
+++ b/datamodels/2.x/itop-hub-connector/dictionaries/zh_cn.dict.itop-hub-connector.php
@@ -21,6 +21,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
// Dictionary entries go here
'Menu:iTopHub' => 'iTop Hub',
@@ -39,6 +40,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'iTopHub:AutoSubmit' => '不再询问. 下次自动进入iTop Hub.',
'UI:About:RemoteExtensionSource' => 'iTop Hub',
'iTopHub:Explanation' => '点击这个按钮您将被引导至iTop Hub.',
+
'iTopHub:BackupFreeDiskSpaceIn' => '%1$s 可用磁盘空间位于 %2$s.',
'iTopHub:FailedToCheckFreeDiskSpace' => '检查可用磁盘空间失败.',
'iTopHub:BackupOk' => '备份成功.',
@@ -48,6 +50,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'iTopHub:CompiledOK' => '编译成功.',
'iTopHub:ConfigurationSafelyReverted' => '安装时发生错误!
系统配置将不会改变.',
'iTopHub:FailAuthent' => '认证失败.',
+
'iTopHub:InstalledExtensions' => '本机已安装的扩展',
'iTopHub:ExtensionCategory:Manual' => '手动安装的扩展',
'iTopHub:ExtensionCategory:Manual+' => '下列已安装的扩展是手动将文件放置到 %1$s 目录的:',
@@ -57,6 +60,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'iTopHub:NoExtensionInThisCategory+' => '浏览 iTop Hub, 去寻找符合您喜欢的扩展吧.',
'iTopHub:ExtensionNotInstalled' => '未安装',
'iTopHub:GetMoreExtensions' => '从 iTop Hub 获取扩展...',
+
'iTopHub:LandingWelcome' => '恭喜! 下列来自 iTop Hub 的扩展已被下载并安装到本机.',
'iTopHub:GoBackToITopBtn' => '返回'.ITOP_APPLICATION_SHORT,
'iTopHub:Uncompressing' => '扩展解压中...',
@@ -65,6 +69,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'iTopHub:DBBackupSentence' => '在升级之前,备份数据库和'.ITOP_APPLICATION_SHORT.'配置文件',
'iTopHub:DeployBtn' => '安装!',
'iTopHub:DatabaseBackupProgress' => '实例备份...',
+
'iTopHub:InstallationEffect:Install' => '版本: %1$s 将被安装.',
'iTopHub:InstallationEffect:NoChange' => '版本: %1$s 已安装. 保持不变.',
'iTopHub:InstallationEffect:Upgrade' => '将从版本 %1$s 升级到版本 %2$s.',
@@ -74,6 +79,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'iTopHub:InstallationEffect:MissingDependencies' => '扩展无法安装, 因为未知的依赖.',
'iTopHub:InstallationEffect:MissingDependencies_Details' => '此扩展依赖模块: %1$s',
'iTopHub:InstallationProgress:InstallationSuccessful' => '安装成功!',
+
'iTopHub:InstallationStatus:Installed_Version' => '%1$s 版本: %2$s.',
'iTopHub:InstallationStatus:Installed' => '已安装',
'iTopHub:InstallationStatus:Version_NotInstalled' => '版本 %1$s 未被 安装.',
diff --git a/datamodels/2.x/itop-hub-connector/land.php b/datamodels/2.x/itop-hub-connector/land.php
index b3553af0af..ed3cd0d0d1 100644
--- a/datamodels/2.x/itop-hub-connector/land.php
+++ b/datamodels/2.x/itop-hub-connector/land.php
@@ -20,7 +20,7 @@ function DisplayStatus(WebPage $oPage)
if (is_dir($sPath)) {
$aExtraDirs[] = $sPath; // Also read the extra downloaded-modules directory
}
- $oExtensionsMap = new iTopExtensionsMap(ITOP_DEFAULT_ENV, $aExtraDirs);
+ $oExtensionsMap = iTopExtensionsMap::GetExtensionsMap(ITOP_DEFAULT_ENV);
$oExtensionsMap->LoadChoicesFromDatabase(MetaModel::GetConfig());
foreach ($oExtensionsMap->GetAllExtensions() as $oExtension) {
@@ -154,7 +154,7 @@ function DoInstall(WebPage $oPage)
if (is_dir($sPath)) {
$aExtraDirs[] = $sPath; // Also read the extra downloaded-modules directory
}
- $oExtensionsMap = new iTopExtensionsMap(ITOP_DEFAULT_ENV, $aExtraDirs);
+ $oExtensionsMap = iTopExtensionsMap::GetExtensionsMap(ITOP_DEFAULT_ENV);
$oExtensionsMap->LoadChoicesFromDatabase(MetaModel::GetConfig());
foreach ($oExtensionsMap->GetAllExtensions() as $oExtension) {
diff --git a/datamodels/2.x/itop-hub-connector/launch.php b/datamodels/2.x/itop-hub-connector/launch.php
index 1f3e520840..5318b2c7a9 100644
--- a/datamodels/2.x/itop-hub-connector/launch.php
+++ b/datamodels/2.x/itop-hub-connector/launch.php
@@ -193,7 +193,7 @@ function collect_configuration()
}
// iTop Installation Options, i.e. "Extensions"
- $oExtensionMap = new iTopExtensionsMap();
+ $oExtensionMap = iTopExtensionsMap::GetExtensionsMap();
$oExtensionMap->LoadChoicesFromDatabase($oConfig);
$aConfiguration['itop_extensions'] = [];
foreach ($oExtensionMap->GetChoices() as $oExtension) {
diff --git a/datamodels/2.x/itop-hub-connector/myextensions.php b/datamodels/2.x/itop-hub-connector/myextensions.php
index 6da581a462..f3398f172b 100644
--- a/datamodels/2.x/itop-hub-connector/myextensions.php
+++ b/datamodels/2.x/itop-hub-connector/myextensions.php
@@ -41,7 +41,7 @@ function GetExtensionInfoComponent(iTopExtension $oExtension): UIBlock
}
try {
- $oExtensionsMap = new iTopExtensionsMap();
+ $oExtensionsMap = iTopExtensionsMap::GetExtensionsMap();
$oExtensionsMap->LoadChoicesFromDatabase(MetaModel::GetConfig());
$oPage->AddUiBlock(TitleUIBlockFactory::MakeForPage(Dict::S('iTopHub:InstalledExtensions')));
diff --git a/datamodels/2.x/itop-hub-connector/src/Controller/HubController.php b/datamodels/2.x/itop-hub-connector/src/Controller/HubController.php
index fdbe2fbc8c..c091f1e094 100644
--- a/datamodels/2.x/itop-hub-connector/src/Controller/HubController.php
+++ b/datamodels/2.x/itop-hub-connector/src/Controller/HubController.php
@@ -208,7 +208,7 @@ class HubController
// Record the installation so that the "about box" knows about the installed modules
$sDataModelVersion = $oRuntimeEnv->GetCurrentDataModelVersion();
- $oExtensionsMap = new iTopExtensionsMap();
+ $oExtensionsMap = iTopExtensionsMap::GetExtensionsMap();
// Default choices = as before
$oExtensionsMap->LoadChoicesFromDatabase($oConfig);
diff --git a/datamodels/2.x/itop-incident-mgmt-itil/datamodel.itop-incident-mgmt-itil.xml b/datamodels/2.x/itop-incident-mgmt-itil/datamodel.itop-incident-mgmt-itil.xml
index 3be94a74b2..663ba74ff9 100755
--- a/datamodels/2.x/itop-incident-mgmt-itil/datamodel.itop-incident-mgmt-itil.xml
+++ b/datamodels/2.x/itop-incident-mgmt-itil/datamodel.itop-incident-mgmt-itil.xml
@@ -460,6 +460,18 @@
parent_incident_id
ref
+
+ id AND status NOT IN ('rejected','resolved','closed')]]>
+
+ parent_request_id
+ UserRequest
+ true
+ DEL_MANUAL
+
+
+ parent_request_id
+ ref
+
parent_problem_id
Problem
@@ -987,6 +999,9 @@
+
+
+
@@ -1301,90 +1316,20 @@
LifecycleAction
Get('public_log');
- $sLogPublic = $oLog->GetModifiedEntry('html');
- if ($sLogPublic != '')
- {
- $sOQL = "SELECT UserRequest WHERE parent_incident_id=:ticket";
- $oChildRequestSet = new DBObjectSet(DBObjectSearch::FromOQL($sOQL),
- array(),
- array(
- 'ticket' => $this->GetKey(),
- )
- );
- while($oRequest = $oChildRequestSet->Fetch())
- {
- $oRequest->set('public_log',$sLogPublic);
- $oRequest->DBUpdate();
- }
-
- }
- $oLog = $this->Get('private_log');
- $sLogPrivate = $oLog->GetModifiedEntry('html');
- if ($sLogPrivate != '')
- {
- $sOQL = "SELECT UserRequest WHERE parent_incident_id=:ticket";
- $oChildRequestSet = new DBObjectSet(DBObjectSearch::FromOQL($sOQL),
- array(),
- array(
- 'ticket' => $this->GetKey(),
- )
- );
- while($oRequest = $oChildRequestSet->Fetch())
- {
- $oRequest->set('private_log',$sLogPrivate);
- $oRequest->DBUpdate();
- }
- }
- return true;
-
+ if (MetaModel::IsValidClass('UserRequest')) {
+ return $this->UpdateChildTicketLog('UserRequest', 'parent_incident_id', ['public_log' => 'public_log', 'private_log' => 'private_log'] );
+ }
+ return true;
}]]>
+
false
public
LifecycleAction
Get('public_log');
- $sLogPublic = $oLog->GetModifiedEntry('html');
- if ($sLogPublic != '')
- {
- $sOQL = "SELECT Incident WHERE parent_incident_id=:ticket";
- $oChildIncidentSet = new DBObjectSet(DBObjectSearch::FromOQL($sOQL),
- array(),
- array(
- 'ticket' => $this->GetKey(),
- )
- );
- while($oIncident = $oChildIncidentSet->Fetch())
- {
- $oIncident->set('public_log',$sLogPublic);
- $oIncident->DBUpdate();
- }
-
- }
- $oLog = $this->Get('private_log');
- $sLogPrivate = $oLog->GetModifiedEntry('html');
- if ($sLogPrivate != '')
- {
- $sOQL = "SELECT Incident WHERE parent_incident_id=:ticket";
- $oChildIncidentSet = new DBObjectSet(DBObjectSearch::FromOQL($sOQL),
- array(),
- array(
- 'ticket' => $this->GetKey(),
- )
- );
- while($oIncident = $oChildIncidentSet->Fetch())
- {
- $oIncident->set('private_log',$sLogPrivate);
- $oIncident->DBUpdate();
- }
- }
- return true;
-
+ return $this->UpdateChildTicketLog('Incident', 'parent_incident_id', ['public_log' => 'public_log', 'private_log' => 'private_log']);
}]]>
@@ -1558,6 +1503,9 @@
-
10
+ -
+ 15
+
-
20
diff --git a/datamodels/2.x/itop-incident-mgmt-itil/dictionaries/en.dict.itop-incident-mgmt-itil.php b/datamodels/2.x/itop-incident-mgmt-itil/dictionaries/en.dict.itop-incident-mgmt-itil.php
index 2966031a09..a5383abb92 100644
--- a/datamodels/2.x/itop-incident-mgmt-itil/dictionaries/en.dict.itop-incident-mgmt-itil.php
+++ b/datamodels/2.x/itop-incident-mgmt-itil/dictionaries/en.dict.itop-incident-mgmt-itil.php
@@ -44,6 +44,8 @@ Dict::Add('EN US', 'English', 'English', [
'UI-IncidentManagementOverview-OpenIncidentByStatus' => 'Open incidents by status',
'UI-IncidentManagementOverview-OpenIncidentByAgent' => 'Open incidents by agent',
'UI-IncidentManagementOverview-OpenIncidentByCustomer' => 'Open incidents by customer',
+ 'Class:Incident/Method:UpdateChildTicketWith:public_log' => 'Public log entry from parent Incident %2$s:
',
+ 'Class:Incident/Method:UpdateChildTicketWith:private_log' => 'Private log entry from parent Incident [[Incident:%1$s]]:
',
]);
// Dictionnay conventions
@@ -193,6 +195,10 @@ Dict::Add('EN US', 'English', 'English', [
'Class:Incident/Attribute:parent_incident_id+' => '',
'Class:Incident/Attribute:parent_incident_ref' => 'Parent incident ref',
'Class:Incident/Attribute:parent_incident_ref+' => '',
+ 'Class:Incident/Attribute:parent_request_id' => 'Parent request',
+ 'Class:Incident/Attribute:parent_request_id+' => '',
+ 'Class:Incident/Attribute:parent_request_ref' => 'Parent request ref',
+ 'Class:Incident/Attribute:parent_request_ref+' => '',
'Class:Incident/Attribute:parent_change_id' => 'Parent change',
'Class:Incident/Attribute:parent_change_id+' => '',
'Class:Incident/Attribute:parent_change_ref' => 'Parent change ref',
diff --git a/datamodels/2.x/itop-incident-mgmt-itil/dictionaries/fr.dict.itop-incident-mgmt-itil.php b/datamodels/2.x/itop-incident-mgmt-itil/dictionaries/fr.dict.itop-incident-mgmt-itil.php
index c7672c7027..7b329d4a2b 100644
--- a/datamodels/2.x/itop-incident-mgmt-itil/dictionaries/fr.dict.itop-incident-mgmt-itil.php
+++ b/datamodels/2.x/itop-incident-mgmt-itil/dictionaries/fr.dict.itop-incident-mgmt-itil.php
@@ -179,15 +179,19 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:Incident/Attribute:pending_reason+' => '',
'Class:Incident/Attribute:parent_incident_id' => 'Incident parent',
'Class:Incident/Attribute:parent_incident_id+' => '',
- 'Class:Incident/Attribute:parent_incident_ref' => 'Référence incident parent',
+ 'Class:Incident/Attribute:parent_incident_ref' => 'Réf. incident parent',
'Class:Incident/Attribute:parent_incident_ref+' => '',
+ 'Class:Incident/Attribute:parent_request_id' => 'Demande parente',
+ 'Class:Incident/Attribute:parent_request_id+' => '',
+ 'Class:Incident/Attribute:parent_request_ref' => 'Réf. demande parente',
+ 'Class:Incident/Attribute:parent_request_ref+' => '',
'Class:Incident/Attribute:parent_change_id' => 'Changement parent',
'Class:Incident/Attribute:parent_change_id+' => '',
- 'Class:Incident/Attribute:parent_change_ref' => 'Ref Changement parent',
+ 'Class:Incident/Attribute:parent_change_ref' => 'Réf. changement parent',
'Class:Incident/Attribute:parent_change_ref+' => '',
'Class:Incident/Attribute:parent_problem_id' => 'Problème lié',
'Class:Incident/Attribute:parent_problem_id+' => '',
- 'Class:Incident/Attribute:parent_problem_ref' => 'Référence problème lié',
+ 'Class:Incident/Attribute:parent_problem_ref' => 'Réf. problème lié',
'Class:Incident/Attribute:parent_problem_ref+' => '',
'Class:Incident/Attribute:related_request_list' => 'Requêtes filles',
'Class:Incident/Attribute:related_request_list+' => '',
diff --git a/datamodels/2.x/itop-incident-mgmt-itil/dictionaries/zh_cn.dict.itop-incident-mgmt-itil.php b/datamodels/2.x/itop-incident-mgmt-itil/dictionaries/zh_cn.dict.itop-incident-mgmt-itil.php
index 3fb0d9b570..bea50accd1 100644
--- a/datamodels/2.x/itop-incident-mgmt-itil/dictionaries/zh_cn.dict.itop-incident-mgmt-itil.php
+++ b/datamodels/2.x/itop-incident-mgmt-itil/dictionaries/zh_cn.dict.itop-incident-mgmt-itil.php
@@ -21,6 +21,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:IncidentManagement' => '事件管理',
'Menu:IncidentManagement+' => '事件管理',
@@ -130,7 +131,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Incident/Attribute:servicesubcategory_id+' => '',
'Class:Incident/Attribute:servicesubcategory_name' => '子服务名称',
'Class:Incident/Attribute:servicesubcategory_name+' => '',
- 'Class:Incident/Attribute:escalation_flag' => '是否升级',
+ 'Class:Incident/Attribute:escalation_flag' => '升级标识',
'Class:Incident/Attribute:escalation_flag+' => '',
'Class:Incident/Attribute:escalation_flag/Value:no' => '否',
'Class:Incident/Attribute:escalation_flag/Value:no+' => '否',
@@ -150,10 +151,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Incident/Attribute:tto+' => '响应时间',
'Class:Incident/Attribute:ttr' => 'TTR',
'Class:Incident/Attribute:ttr+' => '解决时限',
- 'Class:Incident/Attribute:tto_time_spent' => 'TTO time spent~~',
- 'Class:Incident/Attribute:tto_time_spent+' => '~~',
- 'Class:Incident/Attribute:ttr_time_spent' => 'TTR time spent~~',
- 'Class:Incident/Attribute:ttr_time_spent+' => '~~',
+ 'Class:Incident/Attribute:tto_time_spent' => 'TTO 耗时',
+ 'Class:Incident/Attribute:tto_time_spent+' => 'TTO 耗时',
+ 'Class:Incident/Attribute:ttr_time_spent' => 'TTR 耗时',
+ 'Class:Incident/Attribute:ttr_time_spent+' => 'TTR 耗时',
'Class:Incident/Attribute:tto_escalation_deadline' => 'TTO截止日期',
'Class:Incident/Attribute:tto_escalation_deadline+' => '',
'Class:Incident/Attribute:sla_tto_passed' => 'SLA TTO合格',
@@ -169,7 +170,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Incident/Attribute:time_spent' => '耗时',
'Class:Incident/Attribute:time_spent+' => '',
'Class:Incident/Attribute:resolution_code' => '解决方式',
- 'Class:Incident/Attribute:resolution_code+' => '',
+ 'Class:Incident/Attribute:resolution_code+' => '为解决这个事件而做了什么?',
'Class:Incident/Attribute:resolution_code/Value:assistance' => '外部支持',
'Class:Incident/Attribute:resolution_code/Value:assistance+' => '外部支持',
'Class:Incident/Attribute:resolution_code/Value:bug fixed' => '缺陷修复',
@@ -204,7 +205,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Incident/Attribute:related_request_list+' => '此事件相关的所有需求',
'Class:Incident/Attribute:child_incidents_list' => '子事件',
'Class:Incident/Attribute:child_incidents_list+' => '此事件相关的所有衍生事件',
- 'Class:Incident/Attribute:public_log' => '评论',
+ 'Class:Incident/Attribute:public_log' => '公共日志',
'Class:Incident/Attribute:public_log+' => '',
'Class:Incident/Attribute:user_satisfaction' => '用户满意度',
'Class:Incident/Attribute:user_satisfaction+' => '',
@@ -218,7 +219,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Incident/Attribute:user_satisfaction/Value:4+' => '非常不满意',
'Class:Incident/Attribute:user_comment' => '用户评论',
'Class:Incident/Attribute:user_comment+' => '',
- 'Class:Incident/Attribute:parent_incident_id_friendlyname' => '父级事件名称',
+ 'Class:Incident/Attribute:parent_incident_id_friendlyname' => '父级事件昵称',
'Class:Incident/Attribute:parent_incident_id_friendlyname+' => '',
'Class:Incident/Stimulus:ev_assign' => '分配',
'Class:Incident/Stimulus:ev_assign+' => '',
@@ -239,6 +240,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Incident/Stimulus:ev_reopen' => '重新打开',
'Class:Incident/Stimulus:ev_reopen+' => '',
'Class:Incident/Error:CannotAssignParentIncidentIdToSelf' => '无法分配父级事件给自己',
+
'Class:Incident/Method:ResolveChildTickets' => '解决子工单',
'Class:Incident/Method:ResolveChildTickets+' => '递归解决子工单 (自动解决), 并调整相关字段与父级工单保持一致: 服务, 团队, 办理人, 解决方案',
'Tickets:Related:OpenIncidents' => '打开的事件',
diff --git a/datamodels/2.x/itop-knownerror-mgmt/dictionaries/zh_cn.dict.itop-knownerror-mgmt.php b/datamodels/2.x/itop-knownerror-mgmt/dictionaries/zh_cn.dict.itop-knownerror-mgmt.php
index 514b8f71fc..794567b434 100644
--- a/datamodels/2.x/itop-knownerror-mgmt/dictionaries/zh_cn.dict.itop-knownerror-mgmt.php
+++ b/datamodels/2.x/itop-knownerror-mgmt/dictionaries/zh_cn.dict.itop-knownerror-mgmt.php
@@ -21,6 +21,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
// Dictionnay conventions
// Class:
// Class:+
@@ -30,10 +31,12 @@
// Class:/Attribute:/Value:+
// Class:/Stimulus:
// Class:/Stimulus:+
+
//////////////////////////////////////////////////////////////////////
// Classes in 'bizmodel'
//////////////////////////////////////////////////////////////////////
//
+
// Dictionnay conventions
// Class:
// Class:+
@@ -43,9 +46,11 @@
// Class:/Attribute:/Value:+
// Class:/Stimulus:
// Class:/Stimulus:+
+
//
// Class: KnownError
//
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:KnownError' => '已知错误',
'Class:KnownError+' => '记录一个已知错误',
@@ -96,8 +101,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkErrorToFunctionalCI' => '关联已知问题/功能配置项',
- 'Class:lnkErrorToFunctionalCI+' => '已知问题和功能配置项之间的关联',
+ 'Class:lnkErrorToFunctionalCI' => '链接 已知问题/功能配置项',
+ 'Class:lnkErrorToFunctionalCI+' => '已知问题和功能配置项之间的链接',
'Class:lnkErrorToFunctionalCI/Name' => '%1$s / %2$s',
'Class:lnkErrorToFunctionalCI/Attribute:functionalci_id' => '配置项',
'Class:lnkErrorToFunctionalCI/Attribute:functionalci_id+' => '',
@@ -116,8 +121,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkDocumentToError' => '关联文档/已知问题',
- 'Class:lnkDocumentToError+' => '文档和已知问题之间的关联',
+ 'Class:lnkDocumentToError' => '链接 文档/已知问题',
+ 'Class:lnkDocumentToError+' => '文档和已知问题之间的链接',
'Class:lnkDocumentToError/Name' => '%1$s / %2$s',
'Class:lnkDocumentToError/Attribute:document_id' => '文档',
'Class:lnkDocumentToError/Attribute:document_id+' => '',
@@ -127,7 +132,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:lnkDocumentToError/Attribute:error_id+' => '',
'Class:lnkDocumentToError/Attribute:error_name' => '已知问题名称',
'Class:lnkDocumentToError/Attribute:error_name+' => '',
- 'Class:lnkDocumentToError/Attribute:link_type' => '关联类型',
+ 'Class:lnkDocumentToError/Attribute:link_type' => '链接类型',
'Class:lnkDocumentToError/Attribute:link_type+' => '',
]);
diff --git a/datamodels/2.x/itop-oauth-client/dictionaries/zh_cn.dict.itop-oauth-client.php b/datamodels/2.x/itop-oauth-client/dictionaries/zh_cn.dict.itop-oauth-client.php
index 048ad3b9e8..ae7cdd07c5 100644
--- a/datamodels/2.x/itop-oauth-client/dictionaries/zh_cn.dict.itop-oauth-client.php
+++ b/datamodels/2.x/itop-oauth-client/dictionaries/zh_cn.dict.itop-oauth-client.php
@@ -6,13 +6,16 @@
* @copyright Copyright (C) 2010-2024 Combodo SAS
* @license https://opensource.org/licenses/AGPL-3.0
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:CreateMailbox' => '创建邮箱...',
'Menu:OAuthClient' => 'OAuth Mail Access~~',
'Menu:OAuthClient+' => '',
'Menu:GenerateTokens' => '生成访问令牌...',
'Menu:RegenerateTokens' => '重新生成访问令牌...',
+
'itop-oauth-client/Operation:CreateMailBox/Title' => '邮箱创建',
+
'itop-oauth-client:UsedForSMTP' => '此OAuth客户端用户SMTP',
'itop-oauth-client:TestSMTP' => '发送测试邮件',
'itop-oauth-client:MissingOAuthClient' => '没有Oauth客户端给用户%1$s',
@@ -21,7 +24,9 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'itop-oauth-client:Message:TokenCreated' => '访问令牌已生成',
'itop-oauth-client:Message:TokenRecreated' => '访问令牌已重新生成',
'itop-oauth-client:Message:TokenError' => '由于服务错误没有生成访问令牌',
+
'OAuthClient:Name/UseForSMTPMustBeUnique' => '此组合登录 (%1$s) 和使用于SMTP (%2$s) 已经在OAuth客户端使用',
+
'OAuthClient:baseinfo' => '基本信息',
'OAuthClient:scope' => '范围',
]);
@@ -59,7 +64,6 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
This url must be copied in the OAuth2 configuration of the provider
Erase the field to recalculate default value
EOF
-
,
'Class:OAuthClient/Attribute:mailbox_list' => '邮箱列表',
'Class:OAuthClient/Attribute:mailbox_list+' => '~~',
diff --git a/datamodels/2.x/itop-portal-base/dictionaries/zh_cn.dict.itop-portal-base.php b/datamodels/2.x/itop-portal-base/dictionaries/zh_cn.dict.itop-portal-base.php
index 87b44e1b46..ec00c5bec1 100644
--- a/datamodels/2.x/itop-portal-base/dictionaries/zh_cn.dict.itop-portal-base.php
+++ b/datamodels/2.x/itop-portal-base/dictionaries/zh_cn.dict.itop-portal-base.php
@@ -1,8 +1,7 @@
'%1$s 用户门户',
@@ -84,7 +84,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Brick:Portal:UserProfile:Password:ConfirmPassword' => '确认密码',
'Brick:Portal:UserProfile:Password:CantChangeContactAdministrator' => '要修改密码, 请联系管理员',
'Brick:Portal:UserProfile:Password:CantChangeForUnknownReason' => '无法修改密码, 请联系管理员',
- 'Brick:Portal:UserProfile:PersonalInformations:Title' => '人员信息',
+ 'Brick:Portal:UserProfile:PersonalInformations:Title' => '个体信息',
'Brick:Portal:UserProfile:Photo:Title' => '头像',
]);
diff --git a/datamodels/2.x/itop-portal/dictionaries/zh_cn.dict.itop-portal.php b/datamodels/2.x/itop-portal/dictionaries/zh_cn.dict.itop-portal.php
index dd0993287f..f9ec027e4e 100644
--- a/datamodels/2.x/itop-portal/dictionaries/zh_cn.dict.itop-portal.php
+++ b/datamodels/2.x/itop-portal/dictionaries/zh_cn.dict.itop-portal.php
@@ -21,6 +21,7 @@
* @license https://opensource.org/licenses/AGPL-3.0
* @author Benjamin Planque
*/
+
//////////////////////////////////////////////////////////////////////
// Note: The classes have been grouped by categories: bizmodel
//////////////////////////////////////////////////////////////////////
@@ -28,6 +29,7 @@
// Classes in 'bizmodel'
//////////////////////////////////////////////////////////////////////
//
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'portal:itop-portal' => '标准门户', // This is the portal name that will be displayed in portal dispatcher (eg. URL in menus)
'Page:DefaultTitle' => '%1$s - 用户门户',
diff --git a/datamodels/2.x/itop-problem-mgmt/dictionaries/zh_cn.dict.itop-problem-mgmt.php b/datamodels/2.x/itop-problem-mgmt/dictionaries/zh_cn.dict.itop-problem-mgmt.php
index 1cf347a8b0..44c288b791 100644
--- a/datamodels/2.x/itop-problem-mgmt/dictionaries/zh_cn.dict.itop-problem-mgmt.php
+++ b/datamodels/2.x/itop-problem-mgmt/dictionaries/zh_cn.dict.itop-problem-mgmt.php
@@ -21,6 +21,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
// Dictionnay conventions
// Class:
// Class:+
@@ -30,10 +31,12 @@
// Class:/Attribute:/Value:+
// Class:/Stimulus:
// Class:/Stimulus:+
+
//////////////////////////////////////////////////////////////////////
// Classes in 'bizmodel'
//////////////////////////////////////////////////////////////////////
//
+
// Dictionnay conventions
// Class:
// Class:+
@@ -43,6 +46,7 @@
// Class:/Attribute:/Value:+
// Class:/Stimulus:
// Class:/Stimulus:+
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:ProblemManagement' => '问题管理',
'Menu:ProblemManagement+' => '问题管理',
diff --git a/datamodels/2.x/itop-request-mgmt-itil/datamodel.itop-request-mgmt-itil.xml b/datamodels/2.x/itop-request-mgmt-itil/datamodel.itop-request-mgmt-itil.xml
index 766272cbec..9169fe93eb 100755
--- a/datamodels/2.x/itop-request-mgmt-itil/datamodel.itop-request-mgmt-itil.xml
+++ b/datamodels/2.x/itop-request-mgmt-itil/datamodel.itop-request-mgmt-itil.xml
@@ -1451,44 +1451,17 @@
public
LifecycleAction
UpdateChildTicketLog('UserRequest', 'parent_request_id', ['public_log' => 'public_log', 'private_log' => 'private_log' ]);
+}]]>
+
+
+ false
+ public
+ LifecycleAction
+ Get('public_log');
- $sLogPublic = $oLog->GetModifiedEntry('html');
- if ($sLogPublic != '')
- {
- $sOQL = "SELECT UserRequest WHERE parent_request_id=:ticket";
- $oChildRequestSet = new DBObjectSet(DBObjectSearch::FromOQL($sOQL),
- array(),
- array(
- 'ticket' => $this->GetKey(),
- )
- );
- while($oRequest = $oChildRequestSet->Fetch())
- {
- $oRequest->set('public_log',$sLogPublic);
- $oRequest->DBUpdate();
- }
-
- }
- $oLog = $this->Get('private_log');
- $sLogPrivate = $oLog->GetModifiedEntry('html');
- if ($sLogPrivate != '')
- {
- $sOQL = "SELECT UserRequest WHERE parent_request_id=:ticket";
- $oChildRequestSet = new DBObjectSet(DBObjectSearch::FromOQL($sOQL),
- array(),
- array(
- 'ticket' => $this->GetKey(),
- )
- );
- while($oRequest = $oChildRequestSet->Fetch())
- {
- $oRequest->set('private_log',$sLogPrivate);
- $oRequest->DBUpdate();
- }
- }
- return true;
-
+ return $this->UpdateChildTicketLog('Incident', 'parent_request_id', ['public_log' => 'public_log', 'private_log' => 'private_log']);
}]]>
@@ -1526,6 +1499,7 @@
parent::OnUpdate();
$this->Set('last_update', time());
$this->UpdateChildRequestLog();
+ $this->UpdateChildIncidentLog();
}]]>
diff --git a/datamodels/2.x/itop-request-mgmt-itil/dictionaries/en.dict.itop-request-mgmt-itil.php b/datamodels/2.x/itop-request-mgmt-itil/dictionaries/en.dict.itop-request-mgmt-itil.php
index a2d2fe1861..4c7c504fd0 100644
--- a/datamodels/2.x/itop-request-mgmt-itil/dictionaries/en.dict.itop-request-mgmt-itil.php
+++ b/datamodels/2.x/itop-request-mgmt-itil/dictionaries/en.dict.itop-request-mgmt-itil.php
@@ -37,6 +37,8 @@ Dict::Add('EN US', 'English', 'English', [
'UI-RequestManagementOverview-OpenRequestByCustomer' => 'Open requests by customer',
'Class:UserRequest:KnownErrorList' => 'Known Errors',
'Class:UserRequest:KnownErrorList+' => 'Known Errors related to Functional CI linked to the current ticket',
+ 'Class:UserRequest/Method:UpdateChildTicketWith:public_log' => 'Public log automatic copy from parent User Request %2$s:
',
+ 'Class:UserRequest/Method:UpdateChildTicketWith:private_log' => 'Private log automatic copy from parent User Request [[UserRequest:%1$s]]:
',
]);
// Dictionnay conventions
diff --git a/datamodels/2.x/itop-request-mgmt-itil/dictionaries/fr.dict.itop-request-mgmt-itil.php b/datamodels/2.x/itop-request-mgmt-itil/dictionaries/fr.dict.itop-request-mgmt-itil.php
index b61397a8fd..ec07842c85 100644
--- a/datamodels/2.x/itop-request-mgmt-itil/dictionaries/fr.dict.itop-request-mgmt-itil.php
+++ b/datamodels/2.x/itop-request-mgmt-itil/dictionaries/fr.dict.itop-request-mgmt-itil.php
@@ -42,6 +42,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'UI-RequestManagementOverview-OpenRequestByCustomer' => 'Requêtes ouvertes par client',
'Class:UserRequest:KnownErrorList' => 'Erreurs connues',
'Class:UserRequest:KnownErrorList+' => 'Erreurs connues liées à des éléments de configuration impactés par ce ticket',
+ 'Class:UserRequest/Method:UpdateChildTicketWith:public_log' => 'Copie automatique du log public de la demande parente %2$s:
',
+ 'Class:UserRequest/Method:UpdateChildTicketWith:private_log' => 'Copie automatique du log privé de la demande parente [[UserRequest:%1$s]]:
',
]);
// Dictionnay conventions
diff --git a/datamodels/2.x/itop-request-mgmt-itil/dictionaries/zh_cn.dict.itop-request-mgmt-itil.php b/datamodels/2.x/itop-request-mgmt-itil/dictionaries/zh_cn.dict.itop-request-mgmt-itil.php
index 406e9f02a4..f9207e8019 100644
--- a/datamodels/2.x/itop-request-mgmt-itil/dictionaries/zh_cn.dict.itop-request-mgmt-itil.php
+++ b/datamodels/2.x/itop-request-mgmt-itil/dictionaries/zh_cn.dict.itop-request-mgmt-itil.php
@@ -4,6 +4,7 @@
* @copyright Copyright (C) 2010-2024 Combodo SAS
* @license http://opensource.org/licenses/AGPL-3.0
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:RequestManagement' => '服务台',
'Menu:RequestManagement+' => '',
@@ -13,10 +14,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:UserRequest:Provider+' => '',
'Menu:UserRequest:Overview' => '概况',
'Menu:UserRequest:Overview+' => '',
- 'Menu:NewUserRequest' => '新建用户需求',
- 'Menu:NewUserRequest+' => '新建用户需求工单',
- 'Menu:SearchUserRequests' => '搜索用户需求',
- 'Menu:SearchUserRequests+' => '搜索用户需求',
+ 'Menu:NewUserRequest' => '新建需求',
+ 'Menu:NewUserRequest+' => '新建需求工单',
+ 'Menu:SearchUserRequests' => '搜索需求',
+ 'Menu:SearchUserRequests+' => '搜索需求',
'Menu:UserRequest:Shortcuts' => '快捷方式',
'Menu:UserRequest:Shortcuts+' => '',
'Menu:UserRequest:MyRequests' => '分配给我的需求',
@@ -53,7 +54,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:UserRequest' => '用户需求',
+ 'Class:UserRequest' => '需求',
'Class:UserRequest+' => '',
'Class:UserRequest/Attribute:status' => '状态',
'Class:UserRequest/Attribute:status+' => '',
@@ -135,7 +136,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:UserRequest/Attribute:servicesubcategory_id+' => '',
'Class:UserRequest/Attribute:servicesubcategory_name' => '子服务名称',
'Class:UserRequest/Attribute:servicesubcategory_name+' => '',
- 'Class:UserRequest/Attribute:escalation_flag' => '升级标签',
+ 'Class:UserRequest/Attribute:escalation_flag' => '升级标识',
'Class:UserRequest/Attribute:escalation_flag+' => '',
'Class:UserRequest/Attribute:escalation_flag/Value:no' => '否',
'Class:UserRequest/Attribute:escalation_flag/Value:no+' => '否',
@@ -211,7 +212,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:UserRequest/Attribute:parent_incident_ref+' => '~~',
'Class:UserRequest/Attribute:related_request_list' => '子需求',
'Class:UserRequest/Attribute:related_request_list+' => '此父级需求相关的所有衍生需求',
- 'Class:UserRequest/Attribute:public_log' => '评论',
+ 'Class:UserRequest/Attribute:public_log' => '公共日志',
'Class:UserRequest/Attribute:public_log+' => '',
'Class:UserRequest/Attribute:user_satisfaction' => '用户满意度',
'Class:UserRequest/Attribute:user_satisfaction+' => '',
@@ -225,7 +226,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:UserRequest/Attribute:user_satisfaction/Value:4+' => '非常不满意',
'Class:UserRequest/Attribute:user_comment' => '用户评论',
'Class:UserRequest/Attribute:user_comment+' => '',
- 'Class:UserRequest/Attribute:parent_request_id_friendlyname' => 'parent_request_id_friendlyname',
+ 'Class:UserRequest/Attribute:parent_request_id_friendlyname' => '父级需求昵称',
'Class:UserRequest/Attribute:parent_request_id_friendlyname+' => '',
'Class:UserRequest/Stimulus:ev_assign' => '分配',
'Class:UserRequest/Stimulus:ev_assign+' => '',
@@ -252,12 +253,13 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:UserRequest/Stimulus:ev_wait_for_approval' => '等待批准',
'Class:UserRequest/Stimulus:ev_wait_for_approval+' => '',
'Class:UserRequest/Error:CannotAssignParentRequestIdToSelf' => '无法分配父级需求给自己',
+
'Class:UserRequest/Method:ResolveChildTickets' => '解决子工单',
'Class:UserRequest/Method:ResolveChildTickets+' => '递归解决子工单 (自动解决), 并调整相关字段与父级工单保持一致: 服务, 团队, 办理人, 解决方案信息',
]);
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Organization:Overview:UserRequests' => '此组织的所有用户需求',
+ 'Organization:Overview:UserRequests' => '此组织的所有需求',
'Organization:Overview:MyUserRequests' => '我在此组织发起的需求',
'Organization:Overview:Tickets' => '此组织内的所有工单',
]);
diff --git a/datamodels/2.x/itop-request-mgmt/datamodel.itop-request-mgmt.xml b/datamodels/2.x/itop-request-mgmt/datamodel.itop-request-mgmt.xml
index db1edcb30d..97025b5810 100755
--- a/datamodels/2.x/itop-request-mgmt/datamodel.itop-request-mgmt.xml
+++ b/datamodels/2.x/itop-request-mgmt/datamodel.itop-request-mgmt.xml
@@ -1486,44 +1486,8 @@
public
LifecycleAction
Get('public_log');
- $sLogPublic = $oLog->GetModifiedEntry('html');
- if ($sLogPublic != '')
- {
- $sOQL = "SELECT UserRequest WHERE parent_request_id=:ticket";
- $oChildRequestSet = new DBObjectSet(DBObjectSearch::FromOQL($sOQL),
- array(),
- array(
- 'ticket' => $this->GetKey(),
- )
- );
- while($oRequest = $oChildRequestSet->Fetch())
- {
- $oRequest->set('public_log',$sLogPublic);
- $oRequest->DBUpdate();
- }
-
- }
- $oLog = $this->Get('private_log');
- $sLogPrivate = $oLog->GetModifiedEntry('html');
- if ($sLogPrivate != '')
- {
- $sOQL = "SELECT UserRequest WHERE parent_request_id=:ticket";
- $oChildRequestSet = new DBObjectSet(DBObjectSearch::FromOQL($sOQL),
- array(),
- array(
- 'ticket' => $this->GetKey(),
- )
- );
- while($oRequest = $oChildRequestSet->Fetch())
- {
- $oRequest->set('private_log',$sLogPrivate);
- $oRequest->DBUpdate();
- }
- }
- return true;
-
+{
+ return $this->UpdateChildTicketLog('UserRequest', 'parent_request_id', ['public_log' => 'public_log', 'private_log' => 'private_log'] );
}]]>
diff --git a/datamodels/2.x/itop-request-mgmt/dictionaries/en.dict.itop-request-mgmt.php b/datamodels/2.x/itop-request-mgmt/dictionaries/en.dict.itop-request-mgmt.php
index 1aeaac0830..5e8f40bacb 100644
--- a/datamodels/2.x/itop-request-mgmt/dictionaries/en.dict.itop-request-mgmt.php
+++ b/datamodels/2.x/itop-request-mgmt/dictionaries/en.dict.itop-request-mgmt.php
@@ -41,6 +41,8 @@ Dict::Add('EN US', 'English', 'English', [
'Menu:UserRequest:MyWorkOrders+' => 'All work orders assigned to me',
'Class:Problem:KnownProblemList' => 'Known problems',
'Tickets:Related:OpenIncidents' => 'Open incidents',
+ 'Class:UserRequest/Method:UpdateChildTicketWith:public_log' => 'Public log automatic copy from parent User Request %2$s:
',
+ 'Class:UserRequest/Method:UpdateChildTicketWith:private_log' => 'Private log automatic copy from parent User Request [[UserRequest:%1$s]]:
',
]);
// Dictionnay conventions
diff --git a/datamodels/2.x/itop-request-mgmt/dictionaries/fr.dict.itop-request-mgmt.php b/datamodels/2.x/itop-request-mgmt/dictionaries/fr.dict.itop-request-mgmt.php
index 802d264f02..5e9bc7a2ef 100644
--- a/datamodels/2.x/itop-request-mgmt/dictionaries/fr.dict.itop-request-mgmt.php
+++ b/datamodels/2.x/itop-request-mgmt/dictionaries/fr.dict.itop-request-mgmt.php
@@ -42,6 +42,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'UI-RequestManagementOverview-OpenRequestByCustomer' => 'Requêtes ouvertes par organisation',
'Class:UserRequest:KnownErrorList' => 'Erreurs connues',
'Class:UserRequest:KnownErrorList+' => 'Erreurs connues liées à des éléments de configuration impactés par ce ticket',
+ 'Class:UserRequest/Method:UpdateChildTicketWith:public_log' => 'Copie automatique du log public de la demande parente %2$s:
',
+ 'Class:UserRequest/Method:UpdateChildTicketWith:private_log' => 'Copie automatique du log privé de la demande parente [[UserRequest:%1$s]]:
',
'Menu:UserRequest:MyWorkOrders' => 'Tâches qui me sont assignées',
'Menu:UserRequest:MyWorkOrders+' => '',
'Class:Problem:KnownProblemList' => 'Problèmes connus',
diff --git a/datamodels/2.x/itop-request-mgmt/dictionaries/zh_cn.dict.itop-request-mgmt.php b/datamodels/2.x/itop-request-mgmt/dictionaries/zh_cn.dict.itop-request-mgmt.php
index 6d09fa082d..c086bbc094 100644
--- a/datamodels/2.x/itop-request-mgmt/dictionaries/zh_cn.dict.itop-request-mgmt.php
+++ b/datamodels/2.x/itop-request-mgmt/dictionaries/zh_cn.dict.itop-request-mgmt.php
@@ -4,6 +4,7 @@
* @copyright Copyright (C) 2010-2024 Combodo SAS
* @license http://opensource.org/licenses/AGPL-3.0
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:RequestManagement' => '服务台',
'Menu:RequestManagement+' => '',
@@ -13,10 +14,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:UserRequest:Provider+' => '',
'Menu:UserRequest:Overview' => '概况',
'Menu:UserRequest:Overview+' => '',
- 'Menu:NewUserRequest' => '新建用户需求',
- 'Menu:NewUserRequest+' => '新建用户需求工单',
- 'Menu:SearchUserRequests' => '搜索用户需求',
- 'Menu:SearchUserRequests+' => '搜索用户需求',
+ 'Menu:NewUserRequest' => '新建需求',
+ 'Menu:NewUserRequest+' => '新建需求工单',
+ 'Menu:SearchUserRequests' => '搜索需求',
+ 'Menu:SearchUserRequests+' => '搜索需求',
'Menu:UserRequest:Shortcuts' => '快捷方式',
'Menu:UserRequest:Shortcuts+' => '',
'Menu:UserRequest:MyRequests' => '分配给我的需求',
@@ -57,7 +58,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:UserRequest' => '用户需求',
+ 'Class:UserRequest' => '需求',
'Class:UserRequest+' => '',
'Class:UserRequest/Attribute:status' => '状态',
'Class:UserRequest/Attribute:status+' => '',
@@ -141,7 +142,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:UserRequest/Attribute:servicesubcategory_id+' => '',
'Class:UserRequest/Attribute:servicesubcategory_name' => '子服务名称',
'Class:UserRequest/Attribute:servicesubcategory_name+' => '',
- 'Class:UserRequest/Attribute:escalation_flag' => '是否升级',
+ 'Class:UserRequest/Attribute:escalation_flag' => '升级标识',
'Class:UserRequest/Attribute:escalation_flag+' => '',
'Class:UserRequest/Attribute:escalation_flag/Value:no' => '否',
'Class:UserRequest/Attribute:escalation_flag/Value:no+' => '否',
@@ -151,7 +152,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:UserRequest/Attribute:escalation_reason+' => '',
'Class:UserRequest/Attribute:assignment_date' => '分配日期',
'Class:UserRequest/Attribute:assignment_date+' => '',
- 'Class:UserRequest/Attribute:resolution_date' => '开始时间',
+ 'Class:UserRequest/Attribute:resolution_date' => '解决日期',
'Class:UserRequest/Attribute:resolution_date+' => '',
'Class:UserRequest/Attribute:last_pending_date' => '最近待定日期',
'Class:UserRequest/Attribute:last_pending_date+' => '',
@@ -161,9 +162,9 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:UserRequest/Attribute:tto+' => '响应时间',
'Class:UserRequest/Attribute:ttr' => 'TTR',
'Class:UserRequest/Attribute:ttr+' => '解决时限',
- 'Class:UserRequest/Attribute:tto_time_spent' => 'TTO time spent~~',
+ 'Class:UserRequest/Attribute:tto_time_spent' => 'TTO 耗时',
'Class:UserRequest/Attribute:tto_time_spent+' => '~~',
- 'Class:UserRequest/Attribute:ttr_time_spent' => 'TTR time spent~~',
+ 'Class:UserRequest/Attribute:ttr_time_spent' => 'TTR 耗时',
'Class:UserRequest/Attribute:ttr_time_spent+' => '~~',
'Class:UserRequest/Attribute:tto_escalation_deadline' => 'TTO截止日期',
'Class:UserRequest/Attribute:tto_escalation_deadline+' => '',
@@ -213,7 +214,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:UserRequest/Attribute:parent_change_ref+' => '',
'Class:UserRequest/Attribute:related_request_list' => '衍生事件',
'Class:UserRequest/Attribute:related_request_list+' => '此事件相关的所有子事件',
- 'Class:UserRequest/Attribute:public_log' => '评论',
+ 'Class:UserRequest/Attribute:public_log' => '公共日志',
'Class:UserRequest/Attribute:public_log+' => '',
'Class:UserRequest/Attribute:user_satisfaction' => '用户满意度',
'Class:UserRequest/Attribute:user_satisfaction+' => '',
@@ -227,7 +228,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:UserRequest/Attribute:user_satisfaction/Value:4+' => '',
'Class:UserRequest/Attribute:user_comment' => '用户留言',
'Class:UserRequest/Attribute:user_comment+' => '',
- 'Class:UserRequest/Attribute:parent_request_id_friendlyname' => 'parent_request_id_friendlyname',
+ 'Class:UserRequest/Attribute:parent_request_id_friendlyname' => '父级需求昵称',
'Class:UserRequest/Attribute:parent_request_id_friendlyname+' => '',
'Class:UserRequest/Stimulus:ev_assign' => '分配',
'Class:UserRequest/Stimulus:ev_assign+' => '',
@@ -271,20 +272,21 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Portal:UserRequest:MoreInfo' => '更多详细信息',
'Portal:Details-Service-Element' => '服务元素',
'Portal:NoClosedTicket' => '没有关闭的需求',
- 'Portal:NoService' => '',
+ 'Portal:NoService' => '没有可用的服务',
'Portal:ListOpenProblems' => '处理中的问题',
'Portal:ShowProblem' => '问题',
'Portal:ShowFaqs' => 'FAQ',
'Portal:NoOpenProblem' => '没有打开的问题',
'Portal:SelectLanguage' => '更改您的语言',
'Portal:LanguageChangedTo_Lang' => '语言更改为',
- 'Portal:ChooseYourFavoriteLanguage' => '选择您喜欢的语言',
+ 'Portal:ChooseYourFavoriteLanguage' => '请选择您喜欢的语言',
+
'Class:UserRequest/Method:ResolveChildTickets' => '解决子工单',
'Class:UserRequest/Method:ResolveChildTickets+' => '递归解决子工单 (自动解决), 并调整相关字段与父级工单保持一致: 服务, 团队, 办理人, 解决方案',
]);
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Organization:Overview:UserRequests' => '来自此组织的用户需求',
- 'Organization:Overview:MyUserRequests' => '我在此组织的用户需求',
+ 'Organization:Overview:UserRequests' => '来自此组织的需求',
+ 'Organization:Overview:MyUserRequests' => '我在此组织的需求',
'Organization:Overview:Tickets' => '来自此组织的工单',
]);
diff --git a/datamodels/2.x/itop-service-mgmt-provider/dictionaries/zh_cn.dict.itop-service-mgmt-provider.php b/datamodels/2.x/itop-service-mgmt-provider/dictionaries/zh_cn.dict.itop-service-mgmt-provider.php
index d4461e97e2..323a48498a 100644
--- a/datamodels/2.x/itop-service-mgmt-provider/dictionaries/zh_cn.dict.itop-service-mgmt-provider.php
+++ b/datamodels/2.x/itop-service-mgmt-provider/dictionaries/zh_cn.dict.itop-service-mgmt-provider.php
@@ -21,6 +21,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
// Dictionnay conventions
// Class:
// Class:+
@@ -30,6 +31,7 @@
// Class:/Attribute:/Value:+
// Class:/Stimulus:
// Class:/Stimulus:+
+
//
// Menu, fieldsets, UI, messages translations
//
@@ -41,6 +43,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI-ServiceManagementMenu-ContractsBySrvLevel' => '合同 (按服务等级)',
'UI-ServiceManagementMenu-ContractsByStatus' => '合同 (按状态)',
'UI-ServiceManagementMenu-ContractsEndingIn30Days' => '近30天内截止的合同',
+
'Menu:ProviderContract' => '供应商合同',
'Menu:ProviderContract+' => '供应商合同',
'Menu:CustomerContract' => '客户合同',
@@ -55,18 +58,18 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:SLT+' => '服务等级目标',
'Menu:DeliveryModel' => '交付模式',
'Menu:DeliveryModel+' => '交付模式',
- 'Menu:ServiceFamily' => '服务系列',
- 'Menu:ServiceFamily+' => '服务系列',
- 'Menu:ServiceCatalog' => 'Service catalog~~',
- 'Menu:ServiceCatalog+' => 'Define the service elements of your offering~~',
- 'UI-ServiceCatalogMenu-Title' => 'Service catalog~~',
- 'UI-ServiceCatalogMenu-NotInPortal' => 'Not displayed in User Portal~~',
- 'UI-ServiceCatalogMenu-OnlyProductionInPortal' => 'Only Service and Subcategory on production are visible in User Portal~~',
- 'UI-ServiceCatalogMenu-UnusedService' => 'Services not used by any Customers~~',
- 'UI-ServiceCatalogMenu-ServiceWithoutFamilyNotInPortal' => 'Services without Service Family are not visible in User Portal~~',
- 'UI-ServiceCatalogMenu-SLTBySLA' => 'Count SLTs on each SLA~~',
- 'UI-ServiceCatalogMenu-ContractByService' => 'Count Contracts using a Service~~',
- 'UI-ServiceCatalogMenu-ContractBySLA' => 'Count Contracts using an SLA~~',
+ 'Menu:ServiceFamily' => '服务家族',
+ 'Menu:ServiceFamily+' => '服务家族',
+ 'Menu:ServiceCatalog' => '服务清单',
+ 'Menu:ServiceCatalog+' => '定义所有提供的服务',
+ 'UI-ServiceCatalogMenu-Title' => '服务清单',
+ 'UI-ServiceCatalogMenu-NotInPortal' => '在用户门户中不可见',
+ 'UI-ServiceCatalogMenu-OnlyProductionInPortal' => '只有生产状态的服务和子服务才会在用户门户中可见',
+ 'UI-ServiceCatalogMenu-UnusedService' => '未被任何客户使用的服务',
+ 'UI-ServiceCatalogMenu-ServiceWithoutFamilyNotInPortal' => '没有服务家族的服务在用户门户中不可见',
+ 'UI-ServiceCatalogMenu-SLTBySLA' => '统计 SLA/SLT',
+ 'UI-ServiceCatalogMenu-ContractByService' => '统计 服务/合同',
+ 'UI-ServiceCatalogMenu-ContractBySLA' => '统计 SLA/合同',
'Contract:baseinfo' => '常规信息',
'Contract:moreinfo' => '合同信息',
@@ -90,7 +93,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:ContractType' => '合同类型',
- 'Class:ContractType+' => '',
+ 'Class:ContractType+' => '用于对客户和供应商合同进行分类.',
]);
//
@@ -99,7 +102,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Contract' => '合同',
- 'Class:Contract+' => '',
+ 'Class:Contract+' => '用于处理不同合同类型的抽象类.',
'Class:Contract/Attribute:name' => '名称',
'Class:Contract/Attribute:name+' => '',
'Class:Contract/Attribute:org_id' => '组织',
@@ -138,8 +141,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Contract/Attribute:provider_name+' => '',
'Class:Contract/Attribute:status' => '状态',
'Class:Contract/Attribute:status+' => '',
- 'Class:Contract/Attribute:status/Value:implementation' => '启用',
- 'Class:Contract/Attribute:status/Value:implementation+' => '启用',
+ 'Class:Contract/Attribute:status/Value:implementation' => '生效',
+ 'Class:Contract/Attribute:status/Value:implementation+' => '生效',
'Class:Contract/Attribute:status/Value:obsolete' => '废弃',
'Class:Contract/Attribute:status/Value:obsolete+' => '废弃',
'Class:Contract/Attribute:status/Value:production' => '正式',
@@ -154,7 +157,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:CustomerContract' => '客户合同',
- 'Class:CustomerContract+' => '',
+ 'Class:CustomerContract+' => 'Agreement between a client and a provider for the delivery of services with an optional level of commitment (SLA, Coverage Window).~~',
'Class:CustomerContract/Attribute:services_list' => '服务',
'Class:CustomerContract/Attribute:services_list+' => '此合同包含的所有服务',
'Class:CustomerContract/Attribute:functionalcis_list' => '配置项',
@@ -169,7 +172,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:ProviderContract' => '供应商合同',
- 'Class:ProviderContract+' => '',
+ 'Class:ProviderContract+' => 'Agreement between an external provider and an internal organization.~~',
'Class:ProviderContract/Attribute:functionalcis_list' => '配置项',
'Class:ProviderContract/Attribute:functionalcis_list+' => '此合同包含的所有配置项',
'Class:ProviderContract/Attribute:sla' => 'SLA',
@@ -183,8 +186,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkContactToContract' => '关联联系人/合同',
- 'Class:lnkContactToContract+' => '',
+ 'Class:lnkContactToContract' => '链接 联系人/合同',
+ 'Class:lnkContactToContract+' => 'Manages key contacts on each Customer or Provider Contract.~~',
'Class:lnkContactToContract/Name' => '%1$s / %2$s',
'Class:lnkContactToContract/Attribute:contract_id' => '合同',
'Class:lnkContactToContract/Attribute:contract_id+' => '',
@@ -201,8 +204,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkContractToDocument' => '关联合同/文档',
- 'Class:lnkContractToDocument+' => '',
+ 'Class:lnkContractToDocument' => '链接 合同/文档',
+ 'Class:lnkContractToDocument+' => 'Link used when a Document is applicable to a Contract.~~',
'Class:lnkContractToDocument/Name' => '%1$s / %2$s',
'Class:lnkContractToDocument/Attribute:contract_id' => '合同',
'Class:lnkContractToDocument/Attribute:contract_id+' => '',
@@ -220,7 +223,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:lnkFunctionalCIToProviderContract' => '关联功能配置项/供应商合同',
- 'Class:lnkFunctionalCIToProviderContract+' => '',
+ 'Class:lnkFunctionalCIToProviderContract+' => 'This link models the Functional CIs that are supported by an external company through a Provider Contract.~~',
'Class:lnkFunctionalCIToProviderContract/Name' => '%1$s / %2$s',
'Class:lnkFunctionalCIToProviderContract/Attribute:providercontract_id' => '供应商合同',
'Class:lnkFunctionalCIToProviderContract/Attribute:providercontract_id+' => '',
@@ -237,8 +240,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:ServiceFamily' => '服务系列',
- 'Class:ServiceFamily+' => '',
+ 'Class:ServiceFamily' => '服务家族',
+ 'Class:ServiceFamily+' => '服务架构的最高层级.在用户门户中对外提供服务时需要.',
'Class:ServiceFamily/Attribute:name' => '名称',
'Class:ServiceFamily/Attribute:name+' => '',
'Class:ServiceFamily/Attribute:icon' => '图标',
@@ -253,7 +256,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Service' => '服务',
- 'Class:Service+' => '',
+ 'Class:Service+' => '服务由组织提供,并通过客户合同订阅. 它必须包含至少一个子服务.',
'Class:Service/ComplementaryName' => '%1$s - %2$s',
'Class:Service/Attribute:name' => '名称',
'Class:Service/Attribute:name+' => '',
@@ -263,18 +266,18 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Service/Attribute:organization_name+' => '',
'Class:Service/Attribute:description' => '描述',
'Class:Service/Attribute:description+' => '',
- 'Class:Service/Attribute:servicefamily_id' => '服务系列',
+ 'Class:Service/Attribute:servicefamily_id' => '服务家族',
'Class:Service/Attribute:servicefamily_id+' => 'Required for this service to be visible on User Portal~~',
- 'Class:Service/Attribute:servicefamily_name' => '服务系列名称',
+ 'Class:Service/Attribute:servicefamily_name' => '服务家族名称',
'Class:Service/Attribute:servicefamily_name+' => '',
'Class:Service/Attribute:documents_list' => '文档',
'Class:Service/Attribute:documents_list+' => '此服务相关的所有文档',
'Class:Service/Attribute:contacts_list' => '联系人',
'Class:Service/Attribute:contacts_list+' => '此服务相关的所有联系人',
'Class:Service/Attribute:status' => '状态',
- 'Class:Service/Attribute:status+' => 'By default only Service in production are visible by Portal users~~',
- 'Class:Service/Attribute:status/Value:implementation' => '启用',
- 'Class:Service/Attribute:status/Value:implementation+' => '启用',
+ 'Class:Service/Attribute:status+' => '默认情况下,只有生产状态的服务才会在用户门户中可见',
+ 'Class:Service/Attribute:status/Value:implementation' => '生效',
+ 'Class:Service/Attribute:status/Value:implementation+' => '生效',
'Class:Service/Attribute:status/Value:obsolete' => '废弃',
'Class:Service/Attribute:status/Value:obsolete+' => '',
'Class:Service/Attribute:status/Value:production' => '生产',
@@ -292,8 +295,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkDocumentToService' => '关联文档/服务',
- 'Class:lnkDocumentToService+' => '',
+ 'Class:lnkDocumentToService' => '链接 文档/服务',
+ 'Class:lnkDocumentToService+' => 'Link used when a Document is applicable to a Service.~~',
'Class:lnkDocumentToService/Name' => '%1$s / %2$s',
'Class:lnkDocumentToService/Attribute:service_id' => '服务',
'Class:lnkDocumentToService/Attribute:service_id+' => '',
@@ -310,8 +313,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkContactToService' => '关联联系人/服务',
- 'Class:lnkContactToService+' => '',
+ 'Class:lnkContactToService' => '链接 联系人/服务',
+ 'Class:lnkContactToService+' => 'Ideal for defining the Team to which Tickets created on the related Service will be assigned (automatically or manually).~~',
'Class:lnkContactToService/Name' => '%1$s / %2$s',
'Class:lnkContactToService/Attribute:service_id' => '服务',
'Class:lnkContactToService/Attribute:service_id+' => '',
@@ -329,7 +332,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:ServiceSubcategory' => '子服务',
- 'Class:ServiceSubcategory+' => '',
+ 'Class:ServiceSubcategory+' => '服务架构的最低层级. 用户需求通常与某个子服务相关联.',
'Class:ServiceSubcategory/ComplementaryName' => '%1$s - %2$s',
'Class:ServiceSubcategory/Attribute:name' => '名称',
'Class:ServiceSubcategory/Attribute:name+' => '',
@@ -341,8 +344,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:ServiceSubcategory/Attribute:service_name+' => '',
'Class:ServiceSubcategory/Attribute:status' => '状态',
'Class:ServiceSubcategory/Attribute:status+' => '',
- 'Class:ServiceSubcategory/Attribute:status/Value:implementation' => '启用',
- 'Class:ServiceSubcategory/Attribute:status/Value:implementation+' => '启用',
+ 'Class:ServiceSubcategory/Attribute:status/Value:implementation' => '生效',
+ 'Class:ServiceSubcategory/Attribute:status/Value:implementation+' => '生效',
'Class:ServiceSubcategory/Attribute:status/Value:obsolete' => '废弃',
'Class:ServiceSubcategory/Attribute:status/Value:obsolete+' => '废弃',
'Class:ServiceSubcategory/Attribute:status/Value:production' => '生产',
@@ -363,7 +366,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SLA' => 'SLA',
- 'Class:SLA+' => '',
+ 'Class:SLA+' => 'Service Level Agreement (SLA) 适用于客户订阅的服务,并通过 SLT 进行衡量和考核.',
'Class:SLA/Attribute:name' => '名称',
'Class:SLA/Attribute:name+' => '',
'Class:SLA/Attribute:description' => '描述',
@@ -385,7 +388,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SLT' => 'SLT',
- 'Class:SLT+' => '',
+ 'Class:SLT+' => '服务水平目标位于服务水平协议(SLA)之下. 它定义了(TTO 或 TTR)指标的最大时限, 需求类型 (事件或服务需求) 和优先级.',
'Class:SLT/Attribute:name' => '名称',
'Class:SLT/Attribute:name+' => '',
'Class:SLT/Attribute:priority' => '优先级',
@@ -425,8 +428,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkSLAToSLT' => '关联 SLA / SLT',
- 'Class:lnkSLAToSLT+' => '',
+ 'Class:lnkSLAToSLT' => '链接 SLA/SLT',
+ 'Class:lnkSLAToSLT+' => 'This link indicates that an SLT is included in the Service Level Agreement (SLA). An SLA usually contains several SLTs. An SLT can be reused as is by several SLAs (seldom).~~',
'Class:lnkSLAToSLT/Name' => '%1$s / %2$s',
'Class:lnkSLAToSLT/Attribute:sla_id' => 'SLA',
'Class:lnkSLAToSLT/Attribute:sla_id+' => '',
@@ -453,8 +456,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkCustomerContractToService' => '关联客户合同/服务',
- 'Class:lnkCustomerContractToService+' => '',
+ 'Class:lnkCustomerContractToService' => '链接 客户合同/服务',
+ 'Class:lnkCustomerContractToService+' => 'A single line of a Customer Contract, specifying the Service provided and, for this service, the subscribed commitment levels (Service Level Agreement and Coverage Window).~~',
'Class:lnkCustomerContractToService/Name' => '%1$s / %2$s',
'Class:lnkCustomerContractToService/Attribute:customercontract_id' => '客户合同',
'Class:lnkCustomerContractToService/Attribute:customercontract_id+' => '',
@@ -477,8 +480,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkCustomerContractToProviderContract' => '关联 客户合同/供应商合同',
- 'Class:lnkCustomerContractToProviderContract+' => '',
+ 'Class:lnkCustomerContractToProviderContract' => '链接 客户合同/供应商合同',
+ 'Class:lnkCustomerContractToProviderContract+' => 'This link models when a Provider Contract contributes to the delivery of a Customer Contract.~~',
'Class:lnkCustomerContractToProviderContract/Name' => '%1$s / %2$s',
'Class:lnkCustomerContractToProviderContract/Attribute:customercontract_id' => '客户合同',
'Class:lnkCustomerContractToProviderContract/Attribute:customercontract_id+' => '',
@@ -495,8 +498,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkCustomerContractToFunctionalCI' => '关联客户合同/功能配置项',
- 'Class:lnkCustomerContractToFunctionalCI+' => '',
+ 'Class:lnkCustomerContractToFunctionalCI' => '链接 客户合同/功能配置项',
+ 'Class:lnkCustomerContractToFunctionalCI+' => 'This link models the equipment (Functional CI) covered by a Customer Contract.~~',
'Class:lnkCustomerContractToFunctionalCI/Name' => '%1$s / %2$s',
'Class:lnkCustomerContractToFunctionalCI/Attribute:customercontract_id' => '客户合同',
'Class:lnkCustomerContractToFunctionalCI/Attribute:customercontract_id+' => '',
@@ -514,7 +517,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:DeliveryModel' => '交付模式',
- 'Class:DeliveryModel+' => '',
+ 'Class:DeliveryModel+' => '交付模式指定了可以分配工单的团队;它必须在联系人选项卡中包含至少一个团队.
+每个客户组织都必须有定义好的交付模式.',
'Class:DeliveryModel/Attribute:name' => '名称',
'Class:DeliveryModel/Attribute:name+' => '',
'Class:DeliveryModel/Attribute:org_id' => '组织',
@@ -524,7 +528,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:DeliveryModel/Attribute:description' => '描述',
'Class:DeliveryModel/Attribute:description+' => '',
'Class:DeliveryModel/Attribute:contacts_list' => '联系人',
- 'Class:DeliveryModel/Attribute:contacts_list+' => '此交付模式的所有联系人 (包括团队和人员)',
+ 'Class:DeliveryModel/Attribute:contacts_list+' => '此交付模式的所有联系人 (包括团队和个体)',
'Class:DeliveryModel/Attribute:customers_list' => '客户',
'Class:DeliveryModel/Attribute:customers_list+' => '使用此交付模式的所有客户',
]);
@@ -534,8 +538,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkDeliveryModelToContact' => '关联 交付模式/联系人',
- 'Class:lnkDeliveryModelToContact+' => '',
+ 'Class:lnkDeliveryModelToContact' => '链接 交付模式/联系人',
+ 'Class:lnkDeliveryModelToContact+' => 'This link specifies the role of a Team (more rarely a Person) within a Delivery Model.~~',
'Class:lnkDeliveryModelToContact/Name' => '%1$s / %2$s',
'Class:lnkDeliveryModelToContact/Attribute:deliverymodel_id' => '交付模式',
'Class:lnkDeliveryModelToContact/Attribute:deliverymodel_id+' => '',
diff --git a/datamodels/2.x/itop-service-mgmt/dictionaries/zh_cn.dict.itop-service-mgmt.php b/datamodels/2.x/itop-service-mgmt/dictionaries/zh_cn.dict.itop-service-mgmt.php
index 05d3883f2a..227d78747d 100644
--- a/datamodels/2.x/itop-service-mgmt/dictionaries/zh_cn.dict.itop-service-mgmt.php
+++ b/datamodels/2.x/itop-service-mgmt/dictionaries/zh_cn.dict.itop-service-mgmt.php
@@ -21,6 +21,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
// Dictionnay conventions
// Class:
// Class:+
@@ -30,7 +31,10 @@
// Class:/Attribute:/Value:+
// Class:/Stimulus:
// Class:/Stimulus:+
+
+//
// Menu, fieldsets, UI, messages translations
+//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:ServiceManagement' => '服务管理',
'Menu:ServiceManagement+' => '服务管理概况',
@@ -39,6 +43,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI-ServiceManagementMenu-ContractsBySrvLevel' => '合同 (按服务等级)',
'UI-ServiceManagementMenu-ContractsByStatus' => '合同 (按状态)',
'UI-ServiceManagementMenu-ContractsEndingIn30Days' => '未来30天内截止的合同',
+
'Menu:ProviderContract' => '供应商合同',
'Menu:ProviderContract+' => '供应商合同',
'Menu:CustomerContract' => '客户合同',
@@ -53,18 +58,18 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:SLT+' => '服务等级目标',
'Menu:DeliveryModel' => '交付模式',
'Menu:DeliveryModel+' => '交付模式',
- 'Menu:ServiceFamily' => '服务系列',
- 'Menu:ServiceFamily+' => '服务系列',
- 'Menu:ServiceCatalog' => 'Service catalog~~',
- 'Menu:ServiceCatalog+' => 'Define the service elements of your offering~~',
- 'UI-ServiceCatalogMenu-Title' => 'Service catalog~~',
- 'UI-ServiceCatalogMenu-NotInPortal' => 'Not displayed in User Portal~~',
- 'UI-ServiceCatalogMenu-OnlyProductionInPortal' => 'Only Service and Subcategory on production are visible in User Portal~~',
- 'UI-ServiceCatalogMenu-UnusedService' => 'Services not used by any Customers~~',
- 'UI-ServiceCatalogMenu-ServiceWithoutFamilyNotInPortal' => 'Services without Service Family are not visible in User Portal~~',
- 'UI-ServiceCatalogMenu-SLTBySLA' => 'Count SLTs on each SLA~~',
- 'UI-ServiceCatalogMenu-ContractByService' => 'Count Contracts using a Service~~',
- 'UI-ServiceCatalogMenu-ContractBySLA' => 'Count Contracts using an SLA~~',
+ 'Menu:ServiceFamily' => '服务家族',
+ 'Menu:ServiceFamily+' => '服务家族',
+ 'Menu:ServiceCatalog' => '服务清单',
+ 'Menu:ServiceCatalog+' => '定义可提供的服务',
+ 'UI-ServiceCatalogMenu-Title' => '服务清单',
+ 'UI-ServiceCatalogMenu-NotInPortal' => '在用户门户中不可见',
+ 'UI-ServiceCatalogMenu-OnlyProductionInPortal' => '只有生产状态的服务和子服务才会在用户门户中可见',
+ 'UI-ServiceCatalogMenu-UnusedService' => '未被任何客户使用的服务',
+ 'UI-ServiceCatalogMenu-ServiceWithoutFamilyNotInPortal' => '没有服务家族的服务在用户门户中不可见',
+ 'UI-ServiceCatalogMenu-SLTBySLA' => '统计 SLA/SLT',
+ 'UI-ServiceCatalogMenu-ContractByService' => '统计 服务/合同',
+ 'UI-ServiceCatalogMenu-ContractBySLA' => '统计 SLA/合同',
'Menu:Procedure' => '流程清单',
'Menu:Procedure+' => '所有流程清单',
@@ -79,8 +84,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Organization/Attribute:deliverymodel_id' => '交付模式',
- 'Class:Organization/Attribute:deliverymodel_id+' => 'This is required for Tickets handling.
-The delivery model specifies the teams to which tickets can be assigned.~~',
+ 'Class:Organization/Attribute:deliverymodel_id+' => '工单处理必备.
+交付模式指定了工单可以分配到的团队.',
'Class:Organization/Attribute:deliverymodel_name' => '交付模式名称',
]);
@@ -90,7 +95,7 @@ The delivery model specifies the teams to which tickets can be assigned.~~',
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:ContractType' => '合同类型',
- 'Class:ContractType+' => '',
+ 'Class:ContractType+' => '用于对客户和供应商合同进行分类.',
]);
//
@@ -99,7 +104,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Contract' => '合同',
- 'Class:Contract+' => '',
+ 'Class:Contract+' => '用于处理不同合同类型的抽象类.',
'Class:Contract/Attribute:name' => '名称',
'Class:Contract/Attribute:name+' => '',
'Class:Contract/Attribute:org_id' => '客户',
@@ -138,8 +143,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Contract/Attribute:provider_name+' => '通用名称',
'Class:Contract/Attribute:status' => '状态',
'Class:Contract/Attribute:status+' => '',
- 'Class:Contract/Attribute:status/Value:implementation' => '启用',
- 'Class:Contract/Attribute:status/Value:implementation+' => '启用',
+ 'Class:Contract/Attribute:status/Value:implementation' => '生效',
+ 'Class:Contract/Attribute:status/Value:implementation+' => '生效',
'Class:Contract/Attribute:status/Value:obsolete' => '废弃',
'Class:Contract/Attribute:status/Value:obsolete+' => '废弃',
'Class:Contract/Attribute:status/Value:production' => '生产',
@@ -153,7 +158,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:CustomerContract' => '客户合同',
- 'Class:CustomerContract+' => '',
+ 'Class:CustomerContract+' => 'Agreement between a client and a provider for the delivery of services with an optional level of commitment (SLA, Coverage Window).~~',
'Class:CustomerContract/Attribute:services_list' => '服务',
'Class:CustomerContract/Attribute:services_list+' => '此合同包含的所有服务',
]);
@@ -164,7 +169,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:ProviderContract' => '供应商合同',
- 'Class:ProviderContract+' => '',
+ 'Class:ProviderContract+' => 'Agreement between an external provider and an internal organization.~~',
'Class:ProviderContract/Attribute:functionalcis_list' => '配置项',
'Class:ProviderContract/Attribute:functionalcis_list+' => '此供应商合同包含的所有配置项',
'Class:ProviderContract/Attribute:sla' => 'SLA',
@@ -184,8 +189,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkContactToContract' => '关联 联系人/合同',
- 'Class:lnkContactToContract+' => '',
+ 'Class:lnkContactToContract' => '链接 联系人/合同',
+ 'Class:lnkContactToContract+' => 'Manages key contacts on each customer or provider contract.~~',
'Class:lnkContactToContract/Name' => '%1$s / %2$s',
'Class:lnkContactToContract/Attribute:contract_id' => '合同',
'Class:lnkContactToContract/Attribute:contract_id+' => '',
@@ -202,8 +207,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkContractToDocument' => '关联合同/文档',
- 'Class:lnkContractToDocument+' => '',
+ 'Class:lnkContractToDocument' => '链接 合同/文档',
+ 'Class:lnkContractToDocument+' => 'Link used when a Document is applicable to a Contract.~~',
'Class:lnkContractToDocument/Name' => '%1$s / %2$s',
'Class:lnkContractToDocument/Attribute:contract_id' => '合同',
'Class:lnkContractToDocument/Attribute:contract_id+' => '',
@@ -220,8 +225,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:ServiceFamily' => '服务系列',
- 'Class:ServiceFamily+' => '',
+ 'Class:ServiceFamily' => '服务家族',
+ 'Class:ServiceFamily+' => '服务架构的最高层级.在用户门户中对外提供服务时需要.',
'Class:ServiceFamily/Attribute:name' => '名称',
'Class:ServiceFamily/Attribute:name+' => '',
'Class:ServiceFamily/Attribute:icon' => '图标',
@@ -236,7 +241,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Service' => '服务',
- 'Class:Service+' => '',
+ 'Class:Service+' => '服务由组织提供并通过客户合同订阅.它必须包含至少一个子服务.',
'Class:Service/ComplementaryName' => '%1$s - %2$s',
'Class:Service/Attribute:name' => '名称',
'Class:Service/Attribute:name+' => '',
@@ -244,9 +249,9 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Service/Attribute:org_id+' => '',
'Class:Service/Attribute:organization_name' => '供应商名称',
'Class:Service/Attribute:organization_name+' => '',
- 'Class:Service/Attribute:servicefamily_id' => '服务系列',
+ 'Class:Service/Attribute:servicefamily_id' => '服务家族',
'Class:Service/Attribute:servicefamily_id+' => 'Required for this service to be visible on User Portal~~',
- 'Class:Service/Attribute:servicefamily_name' => '服务系列名称',
+ 'Class:Service/Attribute:servicefamily_name' => '服务家族名称',
'Class:Service/Attribute:servicefamily_name+' => '',
'Class:Service/Attribute:description' => '描述',
'Class:Service/Attribute:description+' => '',
@@ -255,9 +260,9 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Service/Attribute:contacts_list' => '联系人',
'Class:Service/Attribute:contacts_list+' => '此服务相关的所有联系人',
'Class:Service/Attribute:status' => '状态',
- 'Class:Service/Attribute:status+' => 'By default only Service in production are visible by Portal users~~',
- 'Class:Service/Attribute:status/Value:implementation' => '启用',
- 'Class:Service/Attribute:status/Value:implementation+' => '启用',
+ 'Class:Service/Attribute:status+' => '默认情况下,只有生产状态的服务才会在用户门户中可见',
+ 'Class:Service/Attribute:status/Value:implementation' => '生效',
+ 'Class:Service/Attribute:status/Value:implementation+' => '生效',
'Class:Service/Attribute:status/Value:obsolete' => '废弃',
'Class:Service/Attribute:status/Value:obsolete+' => '',
'Class:Service/Attribute:status/Value:production' => '生产',
@@ -279,8 +284,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkDocumentToService' => '关联文档/服务',
- 'Class:lnkDocumentToService+' => '',
+ 'Class:lnkDocumentToService' => '链接 文档/服务',
+ 'Class:lnkDocumentToService+' => 'Link used when a Document is applicable to a Service.~~',
'Class:lnkDocumentToService/Name' => '%1$s / %2$s',
'Class:lnkDocumentToService/Attribute:service_id' => '服务',
'Class:lnkDocumentToService/Attribute:service_id+' => '',
@@ -297,8 +302,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkContactToService' => '关联联系人/服务',
- 'Class:lnkContactToService+' => '',
+ 'Class:lnkContactToService' => '链接 联系人/服务',
+ 'Class:lnkContactToService+' => 'Ideal for defining the team to which Tickets created on the related Service will be assigned (automatically or manually).~~',
'Class:lnkContactToService/Name' => '%1$s / %2$s',
'Class:lnkContactToService/Attribute:service_id' => '服务',
'Class:lnkContactToService/Attribute:service_id+' => '',
@@ -316,7 +321,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:ServiceSubcategory' => '子服务',
- 'Class:ServiceSubcategory+' => '',
+ 'Class:ServiceSubcategory+' => '服务架构的最低层级. 用户需求通常与某个子服务相关联.',
'Class:ServiceSubcategory/ComplementaryName' => '%1$s - %2$s',
'Class:ServiceSubcategory/Attribute:name' => '名称',
'Class:ServiceSubcategory/Attribute:name+' => '',
@@ -334,8 +339,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:ServiceSubcategory/Attribute:request_type/Value:service_request+' => '服务需求',
'Class:ServiceSubcategory/Attribute:status' => '状态',
'Class:ServiceSubcategory/Attribute:status+' => '',
- 'Class:ServiceSubcategory/Attribute:status/Value:implementation' => '启用',
- 'Class:ServiceSubcategory/Attribute:status/Value:implementation+' => '启用',
+ 'Class:ServiceSubcategory/Attribute:status/Value:implementation' => '生效',
+ 'Class:ServiceSubcategory/Attribute:status/Value:implementation+' => '生效',
'Class:ServiceSubcategory/Attribute:status/Value:obsolete' => '废弃',
'Class:ServiceSubcategory/Attribute:status/Value:obsolete+' => '废弃',
'Class:ServiceSubcategory/Attribute:status/Value:production' => '生产',
@@ -348,7 +353,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SLA' => 'SLA',
- 'Class:SLA+' => '',
+ 'Class:SLA+' => 'Service Level Agreement (SLA) 适用于客户订阅的服务,并通过 SLT 进行衡量和考核.',
'Class:SLA/Attribute:name' => '名称',
'Class:SLA/Attribute:name+' => '',
'Class:SLA/Attribute:description' => '描述',
@@ -361,7 +366,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SLA/Attribute:slts_list+' => '此SLA包含的所有服务等级目标',
'Class:SLA/Attribute:customercontracts_list' => '客户合同',
'Class:SLA/Attribute:customercontracts_list+' => '使用此SLA的所有客户合同',
- 'Class:SLA/Error:UniqueLnkCustomerContractToService' => '不能保存客户合同%1$s与服务%2$s的关联: SLA已存在',
+ 'Class:SLA/Error:UniqueLnkCustomerContractToService' => '无法保存客户合同%1$s与服务%2$s的链接: SLA已存在',
]);
//
@@ -370,7 +375,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SLT' => 'SLT',
- 'Class:SLT+' => '',
+ 'Class:SLT+' => '服务水平目标(SLT)位于服务水平协议(SLA)之下. 它定义了(TTO 或 TTR)指标的最大时限, 需求类型 (事件或服务需求) 和优先级.',
'Class:SLT/Attribute:name' => '名称',
'Class:SLT/Attribute:name+' => '',
'Class:SLT/Attribute:priority' => '优先级',
@@ -404,7 +409,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SLT/Attribute:unit/Value:minutes' => '分钟',
'Class:SLT/Attribute:unit/Value:minutes+' => '分钟',
'Class:SLT/Attribute:slas_list' => 'SLA',
- 'Class:SLT/Attribute:slas_list+' => '所有使用此 SLT 的 SLA',
+ 'Class:SLT/Attribute:slas_list+' => '使用此 SLT 的所有 SLA',
]);
//
@@ -412,8 +417,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkSLAToSLT' => '关联SLA/SLT',
- 'Class:lnkSLAToSLT+' => '',
+ 'Class:lnkSLAToSLT' => '链接 SLA/SLT',
+ 'Class:lnkSLAToSLT+' => 'This link indicates that an SLT is included in the Service Level Agreement (SLA). An SLA usually contains several SLTs. An SLT can be reused as is by several SLAs (seldom).~~',
'Class:lnkSLAToSLT/Name' => '%1$s / %2$s',
'Class:lnkSLAToSLT/Attribute:sla_id' => 'SLA',
'Class:lnkSLAToSLT/Attribute:sla_id+' => '',
@@ -440,8 +445,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkCustomerContractToService' => '关联客户合同/服务',
- 'Class:lnkCustomerContractToService+' => '',
+ 'Class:lnkCustomerContractToService' => '链接 客户合同/服务',
+ 'Class:lnkCustomerContractToService+' => 'A single line of a customer contract, specifying the Service provided and, for this service, the subscribed commitment levels (Service Level Aggrement and Coverage Window).~~',
'Class:lnkCustomerContractToService/Name' => '%1$s / %2$s',
'Class:lnkCustomerContractToService/Attribute:customercontract_id' => '客户合同',
'Class:lnkCustomerContractToService/Attribute:customercontract_id+' => '',
@@ -455,6 +460,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:lnkCustomerContractToService/Attribute:sla_id+' => '',
'Class:lnkCustomerContractToService/Attribute:sla_name' => 'SLA名称',
'Class:lnkCustomerContractToService/Attribute:sla_name+' => '',
+ 'Class:lnkCustomerContractToService/Attribute:provider_id' => 'Provider id~~',
+ 'Class:lnkCustomerContractToService/Attribute:provider_id+' => '',
]);
//
@@ -462,8 +469,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkProviderContractToService' => '关联供应商合同/服务',
- 'Class:lnkProviderContractToService+' => '',
+ 'Class:lnkProviderContractToService' => '链接 供应商合同/服务',
+ 'Class:lnkProviderContractToService+' => 'This link can model that a provider contract enables the delivery of a Service.~~',
'Class:lnkProviderContractToService/Name' => '%1$s / %2$s',
'Class:lnkProviderContractToService/Attribute:service_id' => '服务',
'Class:lnkProviderContractToService/Attribute:service_id+' => '',
@@ -473,6 +480,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:lnkProviderContractToService/Attribute:providercontract_id+' => '',
'Class:lnkProviderContractToService/Attribute:providercontract_name' => '供应商合同名称',
'Class:lnkProviderContractToService/Attribute:providercontract_name+' => '',
+ 'Class:lnkProviderContractToService/Attribute:provider_id' => 'Provider id~~',
+ 'Class:lnkProviderContractToService/Attribute:provider_id+' => '',
]);
//
@@ -481,7 +490,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:DeliveryModel' => '交付模式',
- 'Class:DeliveryModel+' => '',
+ 'Class:DeliveryModel+' => '交付模式指定了可以分配工单的团队;它必须在联系人选项卡中包含至少一个团队.
+每个客户组织都必须有定义好的交付模式.',
'Class:DeliveryModel/Attribute:name' => '名称',
'Class:DeliveryModel/Attribute:name+' => 'Don\'t forget to add teams to this delivery model~~',
'Class:DeliveryModel/Attribute:org_id' => '组织',
@@ -491,9 +501,9 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:DeliveryModel/Attribute:description' => '描述',
'Class:DeliveryModel/Attribute:description+' => '',
'Class:DeliveryModel/Attribute:contacts_list' => '联系人',
- 'Class:DeliveryModel/Attribute:contacts_list+' => '此交付模式相关的所有联系人 (包括团队和人员)',
+ 'Class:DeliveryModel/Attribute:contacts_list+' => '此交付模式相关的所有联系人 (包括团队和个体)',
'Class:DeliveryModel/Attribute:customers_list' => '客户',
- 'Class:DeliveryModel/Attribute:customers_list+' => '所有使用此交付模式的客户',
+ 'Class:DeliveryModel/Attribute:customers_list+' => '使用此交付模式的所有客户',
]);
//
@@ -501,8 +511,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkDeliveryModelToContact' => '关联交付模式/联系人',
- 'Class:lnkDeliveryModelToContact+' => '',
+ 'Class:lnkDeliveryModelToContact' => '链接 交付模式/联系人',
+ 'Class:lnkDeliveryModelToContact+' => 'This link specifies the role of a Team (more rarely a Person) within a Delivery Model.~~',
'Class:lnkDeliveryModelToContact/Name' => '%1$s / %2$s',
'Class:lnkDeliveryModelToContact/Attribute:deliverymodel_id' => '交付模式',
'Class:lnkDeliveryModelToContact/Attribute:deliverymodel_id+' => '',
@@ -539,21 +549,3 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:lnkContractToDocument/Attribute:provider_id' => 'Provider id~~',
'Class:lnkContractToDocument/Attribute:provider_id+' => '~~',
]);
-
-//
-// Class: lnkCustomerContractToService
-//
-
-Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkCustomerContractToService/Attribute:provider_id' => 'Provider id~~',
- 'Class:lnkCustomerContractToService/Attribute:provider_id+' => '~~',
-]);
-
-//
-// Class: lnkProviderContractToService
-//
-
-Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkProviderContractToService/Attribute:provider_id' => 'Provider id~~',
- 'Class:lnkProviderContractToService/Attribute:provider_id+' => '~~',
-]);
diff --git a/datamodels/2.x/itop-storage-mgmt/dictionaries/zh_cn.dict.itop-storage-mgmt.php b/datamodels/2.x/itop-storage-mgmt/dictionaries/zh_cn.dict.itop-storage-mgmt.php
index 6f33c74572..c523361045 100644
--- a/datamodels/2.x/itop-storage-mgmt/dictionaries/zh_cn.dict.itop-storage-mgmt.php
+++ b/datamodels/2.x/itop-storage-mgmt/dictionaries/zh_cn.dict.itop-storage-mgmt.php
@@ -21,6 +21,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
// Dictionary entries go here
]);
@@ -30,12 +31,12 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:NASFileSystem/Attribute:org_id' => 'Org id~~',
- 'Class:NASFileSystem/Attribute:org_id+' => '~~',
- 'Class:NASFileSystem/Attribute:location_id' => 'Location id~~',
- 'Class:NASFileSystem/Attribute:location_id+' => '~~',
- 'Class:NASFileSystem/Attribute:location_name' => 'Location name~~',
- 'Class:NASFileSystem/Attribute:location_name+' => '~~',
+ 'Class:NASFileSystem/Attribute:org_id' => '组织 ID',
+ 'Class:NASFileSystem/Attribute:org_id+' => '',
+ 'Class:NASFileSystem/Attribute:location_id' => '位置 ID',
+ 'Class:NASFileSystem/Attribute:location_id+' => '',
+ 'Class:NASFileSystem/Attribute:location_name' => '位置名称',
+ 'Class:NASFileSystem/Attribute:location_name+' => '',
]);
//
@@ -43,10 +44,11 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:FiberChannelInterface/Attribute:org_id' => 'Org id~~',
- 'Class:FiberChannelInterface/Attribute:org_id+' => '~~',
- 'Class:FiberChannelInterface/Attribute:location_id' => 'Location id~~',
- 'Class:FiberChannelInterface/Attribute:location_id+' => '~~',
+ 'Class:FiberChannelInterface/Name' => '%2$s %1$s',
+ 'Class:FiberChannelInterface/Attribute:org_id' => '组织 ID',
+ 'Class:FiberChannelInterface/Attribute:org_id+' => '',
+ 'Class:FiberChannelInterface/Attribute:location_id' => '位置 ID',
+ 'Class:FiberChannelInterface/Attribute:location_id+' => '',
]);
//
@@ -54,10 +56,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:LogicalVolume/Attribute:org_id' => 'Org id~~',
- 'Class:LogicalVolume/Attribute:org_id+' => '~~',
- 'Class:LogicalVolume/Attribute:location_id' => 'Location id~~',
- 'Class:LogicalVolume/Attribute:location_id+' => '~~',
- 'Class:LogicalVolume/Attribute:location_name' => 'Location name~~',
- 'Class:LogicalVolume/Attribute:location_name+' => '~~',
+ 'Class:LogicalVolume/Attribute:org_id' => '组织 ID',
+ 'Class:LogicalVolume/Attribute:org_id+' => '',
+ 'Class:LogicalVolume/Attribute:location_id' => '位置 ID',
+ 'Class:LogicalVolume/Attribute:location_id+' => '',
+ 'Class:LogicalVolume/Attribute:location_name' => '位置名称',
+ 'Class:LogicalVolume/Attribute:location_name+' => '',
]);
diff --git a/datamodels/2.x/itop-structure/dictionaries/zh_cn.dict.itop-structure.php b/datamodels/2.x/itop-structure/dictionaries/zh_cn.dict.itop-structure.php
index 2e88b43bba..a92a704301 100644
--- a/datamodels/2.x/itop-structure/dictionaries/zh_cn.dict.itop-structure.php
+++ b/datamodels/2.x/itop-structure/dictionaries/zh_cn.dict.itop-structure.php
@@ -21,6 +21,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
// Dictionnary conventions
// Class:
// Class:+
@@ -32,6 +33,7 @@
// Class:/Stimulus:+
// Class:/UniquenessRule:
// Class:/UniquenessRule:+
+
//////////////////////////////////////////////////////////////////////
// Note: The classes have been grouped by categories: bizmodel
//////////////////////////////////////////////////////////////////////
@@ -39,12 +41,14 @@
// Classes in 'bizmodel'
//////////////////////////////////////////////////////////////////////
//
+
//
// Class: Organization
//
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Organization' => '组织',
- 'Class:Organization+' => '',
+ 'Class:Organization+' => 'It can be a customer, a provider, your company or departments within your company. Organizations can be structured hierarchically. Users can be limited to objects belonging to some organizations only.~~',
'Class:Organization/Attribute:name' => '名称',
'Class:Organization/Attribute:name+' => '常用名称',
'Class:Organization/Attribute:code' => '编码',
@@ -91,7 +95,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Location/Attribute:org_name' => '所属组织名称',
'Class:Location/Attribute:org_name+' => '',
'Class:Location/Attribute:address' => '地址',
- 'Class:Location/Attribute:address+' => '地址',
+ 'Class:Location/Attribute:address+' => '邮政地址',
'Class:Location/Attribute:postal_code' => '邮编',
'Class:Location/Attribute:postal_code+' => '邮政编码',
'Class:Location/Attribute:city' => '城市',
@@ -110,7 +114,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Contact' => '联系人',
- 'Class:Contact+' => '',
+ 'Class:Contact+' => '抽象类. 联系人可以与工单和功能配置项关联,用于不同的目的,例如事件分配和通知.',
'Class:Contact/ComplementaryName' => '%1$s - %2$s',
'Class:Contact/Attribute:name' => '名称',
'Class:Contact/Attribute:name+' => '',
@@ -129,7 +133,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Contact/Attribute:phone' => '电话',
'Class:Contact/Attribute:phone+' => '',
'Class:Contact/Attribute:notify' => '通知',
- 'Class:Contact/Attribute:notify+' => '',
+ 'Class:Contact/Attribute:notify+' => 'Flag which can be used by each notification~~',
'Class:Contact/Attribute:notify/Value:no' => '否',
'Class:Contact/Attribute:notify/Value:no+' => '否',
'Class:Contact/Attribute:notify/Value:yes' => '是',
@@ -137,7 +141,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Contact/Attribute:function' => '职责',
'Class:Contact/Attribute:function+' => '',
'Class:Contact/Attribute:cis_list' => '配置项',
- 'Class:Contact/Attribute:cis_list+' => '此联系人关联的所有配置项',
+ 'Class:Contact/Attribute:cis_list+' => '此联系人相关的所有配置项',
'Class:Contact/Attribute:finalclass' => '联系人类型',
'Class:Contact/Attribute:finalclass+' => '根本属性的名称',
]);
@@ -147,9 +151,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:Person' => '人员',
- 'Class:Person+' => '',
- 'Class:Person/ComplementaryName' => '%1$s - %2$s~~',
+ 'Class:Person' => '个体',
+ 'Class:Person+' => 'A type of Contact used to describe physical persons. Persons can be grouped into Teams. Persons can be linked to other configuration items (eg. to describe who to contact in case of incident with an application).
+Other usage: the caller of a User request is a Person as well as the agent assigned to resolve it.~~',
+ 'Class:Person/ComplementaryName' => '%1$s - %2$s',
'Class:Person/Attribute:name' => '姓',
'Class:Person/Attribute:name+' => '',
'Class:Person/Attribute:first_name' => '名',
@@ -167,11 +172,12 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Person/Attribute:manager_name' => '名称',
'Class:Person/Attribute:manager_name+' => '',
'Class:Person/Attribute:team_list' => '团队',
- 'Class:Person/Attribute:team_list+' => '这人员归属的所有团队',
+ 'Class:Person/Attribute:team_list+' => '这个体归属的所有团队',
'Class:Person/Attribute:tickets_list' => '工单',
'Class:Person/Attribute:tickets_list+' => '此人发起的所有工单',
+ 'Class:Person/Attribute:tickets_list/UI:Links:Create:Modal:Title' => 'Create a %4$s for %2$s~~',
'Class:Person/Attribute:user_list' => '用户',
- 'Class:Person/Attribute:user_list+' => '所有关联到此人员的用户',
+ 'Class:Person/Attribute:user_list+' => '此个体相关的所有用户',
'Class:Person/Attribute:manager_id_friendlyname' => '直属上级姓名',
'Class:Person/Attribute:manager_id_friendlyname+' => '',
'Class:Person/Attribute:picture' => '头像',
@@ -180,7 +186,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Person/UniquenessRule:employee_number' => '\'$this->org_name$\' 内已经有人占用了这个员工号',
'Class:Person/UniquenessRule:name+' => '同一组织内的员工姓名必须唯一',
'Class:Person/UniquenessRule:name' => '\'$this->org_name$\' 内已经有人叫这个名字',
- 'Class:Person/Error:ChangingOrgDenied' => '无法移动此人员到组织 \'%1$s\' 因为这将终端其用户门户的访问, 其关联的用户没有被授权访问此组织',
+ 'Class:Person/Error:ChangingOrgDenied' => '无法移动此个体到组织 \'%1$s\' 因为这将终端其用户门户的访问, 其关联的用户没有被授权访问此组织',
]);
//
@@ -189,19 +195,19 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Team' => '团队',
- 'Class:Team+' => '',
+ 'Class:Team+' => 'A type of Contact. Often used to group Persons, but not only. Teams are expected to watch Tickets dispatched to them, and assign it to an agent, usually a member of that team.~~',
'Class:Team/ComplementaryName' => '%1$s - %2$s',
'Class:Team/Attribute:persons_list' => '成员',
'Class:Team/Attribute:persons_list+' => '此团队包含的所有成员',
- 'Class:Team/Attribute:overview' => 'Overview~~',
- 'Team:Overview' => 'Tickets and CIs managed by the team~~',
- 'Team:Overview:ActiveTickets' => 'Active tickets~~',
- 'Team:Overview:FunctionalCIs-ByType' => 'Functional CIs~~',
- 'Team:Overview:UserRequest-ByStatus' => 'User requests by status~~',
- 'Team:Overview:UserRequest-ClosedByMonth' => 'User requests closed in last 12 months~~',
- 'Team:Overview:UserRequest-ClosedByAgent' => 'User requests closed by agent in last 12 months~~',
+ 'Class:Team/Attribute:overview' => '概览',
+ 'Team:Overview' => '此团队管理的工单和配置项',
+ 'Team:Overview:ActiveTickets' => '活跃的工单',
+ 'Team:Overview:FunctionalCIs-ByType' => '功能配置项',
+ 'Team:Overview:UserRequest-ByStatus' => '用户请求状态',
+ 'Team:Overview:UserRequest-ClosedByMonth' => '过去12个月关闭的需求',
+ 'Team:Overview:UserRequest-ClosedByAgent' => '过去12个月由办理人关闭的需求',
'Class:Team/Attribute:tickets_list' => '工单',
- 'Class:Team/Attribute:tickets_list+' => '此团队的所有工单',
+ 'Class:Team/Attribute:tickets_list+' => '此团队分配到的所有工单',
]);
//
@@ -210,7 +216,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Document' => '文档',
- 'Class:Document+' => '',
+ 'Class:Document+' => 'Abstract class. A document that can be shared across multiple objects, making it easy and quick to retrieve from all relevant locations.~~',
'Class:Document/ComplementaryName' => '%1$s - %2$s - %3$s',
'Class:Document/Attribute:name' => '名称',
'Class:Document/Attribute:name+' => '',
@@ -235,7 +241,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Document/Attribute:status/Value:published' => '正式',
'Class:Document/Attribute:status/Value:published+' => '',
'Class:Document/Attribute:cis_list' => '配置项',
- 'Class:Document/Attribute:cis_list+' => '此文档关联的所有配置项',
+ 'Class:Document/Attribute:cis_list+' => '此文档相关的所有配置项',
'Class:Document/Attribute:finalclass' => '文档类型',
'Class:Document/Attribute:finalclass+' => '根本属性的名称',
]);
@@ -246,7 +252,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:DocumentFile' => '文档文件',
- 'Class:DocumentFile+' => '',
+ 'Class:DocumentFile+' => 'It\'s a type of Document which includes an uploaded file (in any format: Word, PDF, Spreadsheet, etc.).~~',
'Class:DocumentFile/Attribute:file' => '文件',
'Class:DocumentFile/Attribute:file+' => '',
]);
@@ -257,7 +263,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:DocumentNote' => '文档笔记',
- 'Class:DocumentNote+' => '',
+ 'Class:DocumentNote+' => 'Used to store a text document. HTML formatting is supported using the WYSIWYG editor. Search can be performed on its content.~~',
'Class:DocumentNote/Attribute:text' => '正文',
'Class:DocumentNote/Attribute:text+' => '',
]);
@@ -268,7 +274,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:DocumentWeb' => '文档网页',
- 'Class:DocumentWeb+' => '',
+ 'Class:DocumentWeb+' => 'Hyperlinks to external applications or documents, acting as pointers to external resources. You cannot search in their content from '.ITOP_APPLICATION_SHORT,
'Class:DocumentWeb/Attribute:url' => 'URL',
'Class:DocumentWeb/Attribute:url+' => '',
]);
@@ -279,10 +285,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Typology' => '拓扑',
- 'Class:Typology+' => '',
+ 'Class:Typology+' => 'Abstract class. ExternalKeyAttribute to a Typology subclass are used in place of an EnumAttribute, to have more dynamic values.~~',
'Class:Typology/Attribute:name' => '名称',
'Class:Typology/Attribute:name+' => '',
- 'Class:Typology/Attribute:finalclass' => '拓扑类型',
+ 'Class:Typology/Attribute:finalclass' => '拓扑子类型',
'Class:Typology/Attribute:finalclass+' => '根本属性的名称',
]);
@@ -292,7 +298,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:DocumentType' => '文档类型',
- 'Class:DocumentType+' => '',
+ 'Class:DocumentType+' => 'Typology. A classification system used to organize and logically group documents~~',
]);
//
@@ -301,7 +307,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:ContactType' => '联系人类型',
- 'Class:ContactType+' => '',
+ 'Class:ContactType+' => 'Typology to organize your Contacts and group them logically for you.~~',
]);
//
@@ -309,15 +315,15 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkPersonToTeam' => '关联 人员/团队',
- 'Class:lnkPersonToTeam+' => '',
+ 'Class:lnkPersonToTeam' => '链接 个体/团队',
+ 'Class:lnkPersonToTeam+' => 'This link indicates when a Person is a member of a Team.~~',
'Class:lnkPersonToTeam/Name' => '%1$s / %2$s',
'Class:lnkPersonToTeam/Name+' => '',
'Class:lnkPersonToTeam/Attribute:team_id' => '团队',
'Class:lnkPersonToTeam/Attribute:team_id+' => '',
'Class:lnkPersonToTeam/Attribute:team_name' => '团队名称',
'Class:lnkPersonToTeam/Attribute:team_name+' => '',
- 'Class:lnkPersonToTeam/Attribute:person_id' => '人员',
+ 'Class:lnkPersonToTeam/Attribute:person_id' => '个体',
'Class:lnkPersonToTeam/Attribute:person_id+' => '',
'Class:lnkPersonToTeam/Attribute:person_name' => '姓名',
'Class:lnkPersonToTeam/Attribute:person_name+' => '',
@@ -338,7 +344,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:Catalogs+' => '数据类型',
'Menu:Audit' => '审计',
'Menu:Audit+' => '审计',
- 'Menu:CSVImport' => 'CSV导入',
+ 'Menu:CSVImport' => 'CSV 导入',
'Menu:CSVImport+' => '批量创建或更新',
'Menu:Organization' => '组织',
'Menu:Organization+' => '所有组织',
@@ -351,8 +357,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Menu:Contact' => '联系人',
'Menu:Contact+' => '联系人',
'Menu:Contact:Count' => '%1$d 个联系人',
- 'Menu:Person' => '人员',
- 'Menu:Person+' => '所有人员',
+ 'Menu:Person' => '个体',
+ 'Menu:Person+' => '所有个体',
'Menu:Team' => '团队',
'Menu:Team+' => '所有团队',
'Menu:Document' => '文档',
@@ -383,6 +389,6 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
// Themes
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'theme:fullmoon' => '满月',
- 'theme:test-red' => '测试 (红色)',
+ 'theme:fullmoon' => 'Full moon',
+ 'theme:test-red' => 'Test instance (Red)',
]);
diff --git a/datamodels/2.x/itop-themes-compat/dictionaries/zh_cn.dict.itop-themes-compat.php b/datamodels/2.x/itop-themes-compat/dictionaries/zh_cn.dict.itop-themes-compat.php
index 29768e7f8e..4b95080264 100644
--- a/datamodels/2.x/itop-themes-compat/dictionaries/zh_cn.dict.itop-themes-compat.php
+++ b/datamodels/2.x/itop-themes-compat/dictionaries/zh_cn.dict.itop-themes-compat.php
@@ -7,5 +7,5 @@
* @license http://opensource.org/licenses/AGPL-3.0
*/
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'theme:light-grey' => '淡灰 (废弃)',
+ 'theme:light-grey' => 'Light Grey (废弃)',
]);
diff --git a/datamodels/2.x/itop-tickets/datamodel.itop-tickets.xml b/datamodels/2.x/itop-tickets/datamodel.itop-tickets.xml
index f9a5ec37f6..99ee4c78e8 100755
--- a/datamodels/2.x/itop-tickets/datamodel.itop-tickets.xml
+++ b/datamodels/2.x/itop-tickets/datamodel.itop-tickets.xml
@@ -351,6 +351,63 @@
}]]>
+
+ 'private_log'])
+ * So in the example parent.public_log will be copied into each child.private_log
+ * with a prefix using a dictionary entry like 'Class:/Method:UpdateChildTicketWith:' with one placeholder %1$s for the parent ticket ref
+ * resulting in an entry like "Copy of public log entry from parent Incident I-000123: " in the child private_log
+ *
+ */]]>
+
+ false
+ public
+ LifecycleAction
+ GetTargetClass() !== get_class($this))) {
+ ErrorLog::Debug("Attribute $sChildParentAttCode should be an external key of class $sChildClass, pointing to class ".get_class($this),"DataModel");
+ return true; // Do nothing
+ }
+
+ $sParentClass = get_class($this);
+ $aChildEntries = [];
+ foreach ($aLogAttCodes as $sParentAttCode => $sChildAttCode) {
+ if (MetaModel::IsValidAttCode($sParentClass, $sParentAttCode) && MetaModel::GetAttributeDef($sParentClass, $sParentAttCode) instanceof AttributeCaseLog
+ && MetaModel::IsValidAttCode($sChildClass, $sChildAttCode) && MetaModel::GetAttributeDef($sChildClass, $sChildAttCode) instanceof AttributeCaseLog
+ && (!utils::IsNullOrEmptyString($this->Get($sParentAttCode)->GetModifiedEntry('html')))) {
+ $aChildEntries[$sChildAttCode] = Dict::Format('Class:'.$sParentClass.'/Method:UpdateChildTicketWith:'.$sParentAttCode, $this->GetKey(), $this->Get('ref')).$this->Get($sParentAttCode)->GetModifiedEntry('html');
+ }
+ }
+ if ($aChildEntries == []) {
+ return true; // nothing to update
+ }
+
+ $sOQL = "SELECT $sChildClass WHERE $sChildParentAttCode = :ticket_id";
+ $oChildSet = new DBObjectSet(DBObjectSearch::FromOQL_AllData($sOQL), [], ['ticket_id' => $this->GetKey()]);
+ while ($oChild = $oChildSet->Fetch()) {
+ if (is_object($oChild)) { // Seems that empty set, maybe in case of OQL syntax error, can return a single empty object instead of no object at all
+ foreach ($aChildEntries as $sAttCode => $sEntry) {
+ $oChild->Set($sAttCode, $sEntry);
+ }
+ $oChild->DBUpdate();
+ }
+ }
+ return true;
+
+ }]]>
+
diff --git a/datamodels/2.x/itop-tickets/dictionaries/zh_cn.dict.itop-tickets.php b/datamodels/2.x/itop-tickets/dictionaries/zh_cn.dict.itop-tickets.php
index 1a6d64b8e8..f146894e42 100644
--- a/datamodels/2.x/itop-tickets/dictionaries/zh_cn.dict.itop-tickets.php
+++ b/datamodels/2.x/itop-tickets/dictionaries/zh_cn.dict.itop-tickets.php
@@ -21,6 +21,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
// Dictionnay conventions
// Class:
// Class:+
@@ -30,12 +31,14 @@
// Class:/Attribute:/Value:+
// Class:/Stimulus:
// Class:/Stimulus:+
+
//
// Class: Ticket
//
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Ticket' => '工单',
- 'Class:Ticket+' => '',
+ 'Class:Ticket+' => '抽象类',
'Class:Ticket/Attribute:ref' => '编号',
'Class:Ticket/Attribute:ref+' => '',
'Class:Ticket/Attribute:org_id' => '组织',
@@ -66,7 +69,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Ticket/Attribute:last_update+' => '',
'Class:Ticket/Attribute:close_date' => '关闭日期',
'Class:Ticket/Attribute:close_date+' => '',
- 'Class:Ticket/Attribute:private_log' => '私信',
+ 'Class:Ticket/Attribute:private_log' => '私有日志',
'Class:Ticket/Attribute:private_log+' => '',
'Class:Ticket/Attribute:contacts_list' => '联系人',
'Class:Ticket/Attribute:contacts_list+' => '此工单相关的所有联系人',
@@ -92,8 +95,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkContactToTicket' => '关联联系人/工单',
- 'Class:lnkContactToTicket+' => '',
+ 'Class:lnkContactToTicket' => '链接 联系人/工单',
+ 'Class:lnkContactToTicket+' => 'Allows linking several Contacts to notify them about the progress of Tickets, in addition to the requester and the agent.~~',
'Class:lnkContactToTicket/Name' => '%1$s / %2$s',
'Class:lnkContactToTicket/Attribute:ticket_id' => '工单',
'Class:lnkContactToTicket/Attribute:ticket_id+' => '',
@@ -119,7 +122,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:WorkOrder' => '工作任务',
- 'Class:WorkOrder+' => '',
+ 'Class:WorkOrder+' => 'A task required for the resolution of a Ticket, assigned to a Team or even an agent.~~',
'Class:WorkOrder/Attribute:name' => '名称',
'Class:WorkOrder/Attribute:name+' => '',
'Class:WorkOrder/Attribute:status' => '状态',
@@ -154,95 +157,95 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
// Fieldset translation
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Ticket:baseinfo' => '基本信息',
- 'Ticket:date' => '日期信息',
- 'Ticket:contact' => '联系人',
- 'Ticket:moreinfo' => '更多信息',
- 'Ticket:relation' => '相关信息',
- 'Ticket:log' => '日志',
- 'Ticket:Type' => '风险评估',
- 'Ticket:support' => '支持信息',
- 'Ticket:resolution' => '解决方案',
- 'Ticket:SLA' => 'SLA 报告',
- 'WorkOrder:Details' => '详情',
- 'WorkOrder:Moreinfo' => '更多信息',
- 'Tickets:ResolvedFrom' => '由%1$s自动解决',
- 'Class:cmdbAbstractObject/Method:Set' => '设置',
- 'Class:cmdbAbstractObject/Method:Set+' => '填写固定值',
- 'Class:cmdbAbstractObject/Method:Set/Param:1' => '目标字段',
- 'Class:cmdbAbstractObject/Method:Set/Param:1+' => '填写当前对象',
- 'Class:cmdbAbstractObject/Method:Set/Param:2' => '值',
- 'Class:cmdbAbstractObject/Method:Set/Param:2+' => '要设置的值',
- 'Class:cmdbAbstractObject/Method:SetCurrentDate' => '设置为当前日期',
- 'Class:cmdbAbstractObject/Method:SetCurrentDate+' => '填写当前日期和时间',
- 'Class:cmdbAbstractObject/Method:SetCurrentDate/Param:1' => '目标字段',
- 'Class:cmdbAbstractObject/Method:SetCurrentDate/Param:1+' => '填写当前对象',
- 'Class:cmdbAbstractObject/Method:SetCurrentDateIfNull' => '为空则设置为当前日期',
- 'Class:cmdbAbstractObject/Method:SetCurrentDateIfNull+' => '设置空字段为当前日期和时间',
- 'Class:cmdbAbstractObject/Method:SetCurrentDateIfNull/Param:1' => '目标字段',
+ 'Ticket:baseinfo' => '基本信息',
+ 'Ticket:date' => '日期信息',
+ 'Ticket:contact' => '联系人',
+ 'Ticket:moreinfo' => '更多信息',
+ 'Ticket:relation' => '相关信息',
+ 'Ticket:log' => '日志',
+ 'Ticket:Type' => '风险评估',
+ 'Ticket:support' => '支持信息',
+ 'Ticket:resolution' => '解决方案',
+ 'Ticket:SLA' => 'SLA 报告',
+ 'WorkOrder:Details' => '详情',
+ 'WorkOrder:Moreinfo' => '更多信息',
+ 'Tickets:ResolvedFrom' => '由%1$s自动解决',
+ 'Class:cmdbAbstractObject/Method:Set' => '设置',
+ 'Class:cmdbAbstractObject/Method:Set+' => '填写固定值',
+ 'Class:cmdbAbstractObject/Method:Set/Param:1' => '目标字段',
+ 'Class:cmdbAbstractObject/Method:Set/Param:1+' => '填写当前对象',
+ 'Class:cmdbAbstractObject/Method:Set/Param:2' => '值',
+ 'Class:cmdbAbstractObject/Method:Set/Param:2+' => '要设置的值',
+ 'Class:cmdbAbstractObject/Method:SetCurrentDate' => '设置为当前日期',
+ 'Class:cmdbAbstractObject/Method:SetCurrentDate+' => '填写当前日期和时间',
+ 'Class:cmdbAbstractObject/Method:SetCurrentDate/Param:1' => '目标字段',
+ 'Class:cmdbAbstractObject/Method:SetCurrentDate/Param:1+' => '填写当前对象',
+ 'Class:cmdbAbstractObject/Method:SetCurrentDateIfNull' => '为空则设置为当前日期',
+ 'Class:cmdbAbstractObject/Method:SetCurrentDateIfNull+' => '设置空字段为当前日期和时间',
+ 'Class:cmdbAbstractObject/Method:SetCurrentDateIfNull/Param:1' => '目标字段',
'Class:cmdbAbstractObject/Method:SetCurrentDateIfNull/Param:1+' => '当前对象中要设置的字段',
- 'Class:cmdbAbstractObject/Method:SetCurrentUser' => '设置为当前用户',
- 'Class:cmdbAbstractObject/Method:SetCurrentUser+' => '填写当前登录用户',
- 'Class:cmdbAbstractObject/Method:SetCurrentUser/Param:1' => '目标字段',
- 'Class:cmdbAbstractObject/Method:SetCurrentUser/Param:1+' => '当前对象中要设置的字段. 如果此字段为字符串则使用显示名称, 否则将使用标识符. 显示名称为关联到用户的人员的姓名, 如果没有关联人员则为登录名.',
- 'Class:cmdbAbstractObject/Method:SetCurrentPerson' => '设置为当前人员',
- 'Class:cmdbAbstractObject/Method:SetCurrentPerson+' => '设置字段为当前登录的人员 (此 "人员" 关联到当前登录的 "用户").',
- 'Class:cmdbAbstractObject/Method:SetCurrentPerson/Param:1' => '目标字段',
- 'Class:cmdbAbstractObject/Method:SetCurrentPerson/Param:1+' => '填写当前对象, 如果填写字符串则是昵称.',
- 'Class:cmdbAbstractObject/Method:SetElapsedTime' => '设置已过时间',
- 'Class:cmdbAbstractObject/Method:SetElapsedTime+' => '设置字段为当前时间针对另一个字段设置的日期所用时长 (秒)',
- 'Class:cmdbAbstractObject/Method:SetElapsedTime/Param:1' => '目标字段',
- 'Class:cmdbAbstractObject/Method:SetElapsedTime/Param:1+' => '当前对象中要设置的字段',
- 'Class:cmdbAbstractObject/Method:SetElapsedTime/Param:2' => '参考字段',
- 'Class:cmdbAbstractObject/Method:SetElapsedTime/Param:2+' => '此字段来自获取相关日期的字段',
- 'Class:cmdbAbstractObject/Method:SetElapsedTime/Param:3' => '工作时间',
- 'Class:cmdbAbstractObject/Method:SetElapsedTime/Param:3+' => '若留空则取决于标准工作时间场景, 或者设置为 "DefaultWorkingTimeComputer" 来强制要求24x7场景',
- 'Class:cmdbAbstractObject/Method:SetIfNull' => '为空时设置',
- 'Class:cmdbAbstractObject/Method:SetIfNull+' => '仅当字段为空时设置, 使用此固定值',
- 'Class:cmdbAbstractObject/Method:SetIfNull/Param:1' => '目标字段',
- 'Class:cmdbAbstractObject/Method:SetIfNull/Param:1+' => '当前对象里要设置的字段',
- 'Class:cmdbAbstractObject/Method:SetIfNull/Param:2' => '值',
- 'Class:cmdbAbstractObject/Method:SetIfNull/Param:2+' => '要设置的值',
- 'Class:cmdbAbstractObject/Method:AddValue' => '加上值',
- 'Class:cmdbAbstractObject/Method:AddValue+' => '给字段加上一个固定值',
- 'Class:cmdbAbstractObject/Method:AddValue/Param:1' => '目标字段',
- 'Class:cmdbAbstractObject/Method:AddValue/Param:1+' => '当前对象里要修改的字段',
- 'Class:cmdbAbstractObject/Method:AddValue/Param:2' => '值',
- 'Class:cmdbAbstractObject/Method:AddValue/Param:2+' => '要加上的数值, 可以为负',
- 'Class:cmdbAbstractObject/Method:SetComputedDate' => '设置计算的日期',
- 'Class:cmdbAbstractObject/Method:SetComputedDate+' => '设置字段为按规则根据另一个字段计算的日期',
- 'Class:cmdbAbstractObject/Method:SetComputedDate/Param:1' => '目标字段',
- 'Class:cmdbAbstractObject/Method:SetComputedDate/Param:1+' => '当前对象里要设置的字段',
- 'Class:cmdbAbstractObject/Method:SetComputedDate/Param:2' => '修饰符',
- 'Class:cmdbAbstractObject/Method:SetComputedDate/Param:2+' => '要修改源日期的文本修饰符, 例如 "+3 days"',
- 'Class:cmdbAbstractObject/Method:SetComputedDate/Param:3' => '源字段',
- 'Class:cmdbAbstractObject/Method:SetComputedDate/Param:3+' => '作为源值应用修饰符逻辑的字段',
- 'Class:cmdbAbstractObject/Method:SetComputedDateIfNull' => '若空则设置计算的日期',
- 'Class:cmdbAbstractObject/Method:SetComputedDateIfNull+' => '为空时设置字段为按规则根据另一个字段计算的日期',
+ 'Class:cmdbAbstractObject/Method:SetCurrentUser' => '设置为当前用户',
+ 'Class:cmdbAbstractObject/Method:SetCurrentUser+' => '填写当前登录用户',
+ 'Class:cmdbAbstractObject/Method:SetCurrentUser/Param:1' => '目标字段',
+ 'Class:cmdbAbstractObject/Method:SetCurrentUser/Param:1+' => '当前对象中要设置的字段. 如果此字段为字符串则使用昵称, 否则将使用标识符. 昵称为关联用户的名称, 否则会使用登录名.',
+ 'Class:cmdbAbstractObject/Method:SetCurrentPerson' => '设置为当前用户',
+ 'Class:cmdbAbstractObject/Method:SetCurrentPerson+' => '设置字段为当前登录的用户 (此 "个体" 关联到当前登录的 "用户").',
+ 'Class:cmdbAbstractObject/Method:SetCurrentPerson/Param:1' => '目标字段',
+ 'Class:cmdbAbstractObject/Method:SetCurrentPerson/Param:1+' => '填写当前对象, 如果填写字符串则是昵称.',
+ 'Class:cmdbAbstractObject/Method:SetElapsedTime' => '设置已过时间',
+ 'Class:cmdbAbstractObject/Method:SetElapsedTime+' => '设置字段为当前时间针对另一个字段设置的日期所用时长 (秒)',
+ 'Class:cmdbAbstractObject/Method:SetElapsedTime/Param:1' => '目标字段',
+ 'Class:cmdbAbstractObject/Method:SetElapsedTime/Param:1+' => '当前对象中要设置的字段',
+ 'Class:cmdbAbstractObject/Method:SetElapsedTime/Param:2' => '参考字段',
+ 'Class:cmdbAbstractObject/Method:SetElapsedTime/Param:2+' => '此字段来自获取相关日期的字段',
+ 'Class:cmdbAbstractObject/Method:SetElapsedTime/Param:3' => '工作时间',
+ 'Class:cmdbAbstractObject/Method:SetElapsedTime/Param:3+' => '若留空则取决于标准工作时间场景, 或者设置为 "DefaultWorkingTimeComputer" 来强制要求24x7场景',
+ 'Class:cmdbAbstractObject/Method:SetIfNull' => '为空时设置',
+ 'Class:cmdbAbstractObject/Method:SetIfNull+' => '仅当字段为空时设置, 使用此固定值',
+ 'Class:cmdbAbstractObject/Method:SetIfNull/Param:1' => '目标字段',
+ 'Class:cmdbAbstractObject/Method:SetIfNull/Param:1+' => '当前对象里要设置的字段',
+ 'Class:cmdbAbstractObject/Method:SetIfNull/Param:2' => '值',
+ 'Class:cmdbAbstractObject/Method:SetIfNull/Param:2+' => '要设置的值',
+ 'Class:cmdbAbstractObject/Method:AddValue' => '加上值',
+ 'Class:cmdbAbstractObject/Method:AddValue+' => '给字段加上一个固定值',
+ 'Class:cmdbAbstractObject/Method:AddValue/Param:1' => '目标字段',
+ 'Class:cmdbAbstractObject/Method:AddValue/Param:1+' => '当前对象里要修改的字段',
+ 'Class:cmdbAbstractObject/Method:AddValue/Param:2' => '值',
+ 'Class:cmdbAbstractObject/Method:AddValue/Param:2+' => '要加上的数值, 可以为负',
+ 'Class:cmdbAbstractObject/Method:SetComputedDate' => '设置计算的日期',
+ 'Class:cmdbAbstractObject/Method:SetComputedDate+' => '设置字段为按规则根据另一个字段计算的日期',
+ 'Class:cmdbAbstractObject/Method:SetComputedDate/Param:1' => '目标字段',
+ 'Class:cmdbAbstractObject/Method:SetComputedDate/Param:1+' => '当前对象里要设置的字段',
+ 'Class:cmdbAbstractObject/Method:SetComputedDate/Param:2' => '修饰符',
+ 'Class:cmdbAbstractObject/Method:SetComputedDate/Param:2+' => '要修改源日期的文本修饰符, 例如 "+3 days"',
+ 'Class:cmdbAbstractObject/Method:SetComputedDate/Param:3' => '源字段',
+ 'Class:cmdbAbstractObject/Method:SetComputedDate/Param:3+' => '作为源值应用修饰符逻辑的字段',
+ 'Class:cmdbAbstractObject/Method:SetComputedDateIfNull' => '若空则设置计算的日期',
+ 'Class:cmdbAbstractObject/Method:SetComputedDateIfNull+' => '为空时设置字段为按规则根据另一个字段计算的日期',
'Class:cmdbAbstractObject/Method:SetComputedDateIfNull/Param:1' => '目标字段',
'Class:cmdbAbstractObject/Method:SetComputedDateIfNull/Param:1+' => '当前对象中要设置的字段',
'Class:cmdbAbstractObject/Method:SetComputedDateIfNull/Param:2' => '修饰符',
'Class:cmdbAbstractObject/Method:SetComputedDateIfNull/Param:2+' => '要修改源日期的文本修饰符, 例如 "+3 days"',
'Class:cmdbAbstractObject/Method:SetComputedDateIfNull/Param:3' => '源字段',
'Class:cmdbAbstractObject/Method:SetComputedDateIfNull/Param:3+' => '作为源值应用修饰符逻辑的字段',
- 'Class:cmdbAbstractObject/Method:Reset' => '重置',
- 'Class:cmdbAbstractObject/Method:Reset+' => '重置为默认值',
- 'Class:cmdbAbstractObject/Method:Reset/Param:1' => '目标字段',
- 'Class:cmdbAbstractObject/Method:Reset/Param:1+' => '填写当前对象',
- 'Class:cmdbAbstractObject/Method:Copy' => '复制',
- 'Class:cmdbAbstractObject/Method:Copy+' => '复制当前值到另外一个地方',
- 'Class:cmdbAbstractObject/Method:Copy/Param:1' => '目标字段',
- 'Class:cmdbAbstractObject/Method:Copy/Param:1+' => '填写当前对象',
- 'Class:cmdbAbstractObject/Method:Copy/Param:2' => '源字段',
- 'Class:cmdbAbstractObject/Method:Copy/Param:2+' => '此字段从当前对象获取值',
- 'Class:cmdbAbstractObject/Method:ApplyStimulus' => '使用调整',
- 'Class:cmdbAbstractObject/Method:ApplyStimulus+' => '当前对象中要应用的特定调整',
+ 'Class:cmdbAbstractObject/Method:Reset' => '重置',
+ 'Class:cmdbAbstractObject/Method:Reset+' => '重置为默认值',
+ 'Class:cmdbAbstractObject/Method:Reset/Param:1' => '目标字段',
+ 'Class:cmdbAbstractObject/Method:Reset/Param:1+' => '填写当前对象',
+ 'Class:cmdbAbstractObject/Method:Copy' => '复制',
+ 'Class:cmdbAbstractObject/Method:Copy+' => '复制当前值到另外一个地方',
+ 'Class:cmdbAbstractObject/Method:Copy/Param:1' => '目标字段',
+ 'Class:cmdbAbstractObject/Method:Copy/Param:1+' => '填写当前对象',
+ 'Class:cmdbAbstractObject/Method:Copy/Param:2' => '源字段',
+ 'Class:cmdbAbstractObject/Method:Copy/Param:2+' => '此字段从当前对象获取值',
+ 'Class:cmdbAbstractObject/Method:ApplyStimulus' => '使用调整',
+ 'Class:cmdbAbstractObject/Method:ApplyStimulus+' => '当前对象中要应用的特定调整',
'Class:cmdbAbstractObject/Method:ApplyStimulus/Param:1' => '调整编码',
'Class:cmdbAbstractObject/Method:ApplyStimulus/Param:1+' => '当前对象的有效调整编码',
- 'Class:ResponseTicketTTO/Interface:iMetricComputer' => 'TTO',
- 'Class:ResponseTicketTTO/Interface:iMetricComputer+' => '响应时限',
- 'Class:ResponseTicketTTR/Interface:iMetricComputer' => 'TTR',
- 'Class:ResponseTicketTTR/Interface:iMetricComputer+' => '解决时限',
+ 'Class:ResponseTicketTTO/Interface:iMetricComputer' => 'TTO',
+ 'Class:ResponseTicketTTO/Interface:iMetricComputer+' => '响应时限',
+ 'Class:ResponseTicketTTR/Interface:iMetricComputer' => 'TTR',
+ 'Class:ResponseTicketTTR/Interface:iMetricComputer+' => '解决时限',
]);
//
@@ -251,5 +254,5 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Ticket/Attribute:team_email' => 'Team email~~',
- 'Class:Ticket/Attribute:team_email+' => '~~',
+ 'Class:Ticket/Attribute:team_email+' => '',
]);
diff --git a/datamodels/2.x/itop-virtualization-mgmt/dictionaries/zh_cn.dict.itop-virtualization-mgmt.php b/datamodels/2.x/itop-virtualization-mgmt/dictionaries/zh_cn.dict.itop-virtualization-mgmt.php
index 4a9c70a89d..cb7a8621ad 100644
--- a/datamodels/2.x/itop-virtualization-mgmt/dictionaries/zh_cn.dict.itop-virtualization-mgmt.php
+++ b/datamodels/2.x/itop-virtualization-mgmt/dictionaries/zh_cn.dict.itop-virtualization-mgmt.php
@@ -21,14 +21,15 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
//
// Fieldsets for Virtualization classes
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Virtualization:baseinfo' => 'General~~',
- 'Virtualization:moreinfo' => 'Virtualization specifics~~',
- 'Virtualization:otherinfo' => 'Dates and description~~',
+ 'Virtualization:baseinfo' => '基本信息',
+ 'Virtualization:moreinfo' => '虚拟化详情',
+ 'Virtualization:otherinfo' => '日期和描述',
]);
//
@@ -38,13 +39,14 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:Cloud/Name' => '%1$s',
'Class:Cloud/ComplementaryName' => '%1$s-%2$s',
- 'Class:Cloud' => 'Cloud~~',
- 'Class:Cloud+' => 'A Virtual Host operated by a Cloud provider. It can host Virtual Machines and Container Hosts.~~',
- 'Class:Cloud/Attribute:logo' => 'Logo~~',
- 'Class:Cloud/Attribute:logo+' => 'Used as object icon when this Cloud is displayed within impact analysis graphs~~',
- 'Class:Cloud/Attribute:provider_id+' => 'Who provides the cloud~~',
- 'Class:Cloud/Attribute:location_id' => 'Location~~',
- 'Class:Cloud/Attribute:location_id+' => 'Where is located the cloud~~',
+ 'Class:Cloud' => '云平台',
+ 'Class:Cloud+' => '由云供应商运营的虚拟化主机. 它可以托管虚拟机和容器宿主机.',
+ 'Class:Cloud/Attribute:provider_id' => '供应商',
+ 'Class:Cloud/Attribute:logo' => 'Logo',
+ 'Class:Cloud/Attribute:logo+' => '在影响分析图中显示此云平台时用作对象图标',
+ 'Class:Cloud/Attribute:provider_id+' => '谁提供云平台',
+ 'Class:Cloud/Attribute:location_id' => '位置',
+ 'Class:Cloud/Attribute:location_id+' => '云平台的位置',
]);
//
@@ -52,6 +54,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:LogicalInterface/Attribute:org_id' => 'Organization~~',
- 'Class:LogicalInterface/Attribute:org_id+' => '~~',
+ 'Class:LogicalInterface/Name' => '%2$s %1$s',
+ 'Class:LogicalInterface/Attribute:org_id' => '组织',
+ 'Class:LogicalInterface/Attribute:org_id+' => '',
]);
diff --git a/dictionaries/core/orm-value/orm-document/zh_cn.dictionary.itop.orm-document.php b/dictionaries/core/orm-value/orm-document/zh_cn.dictionary.itop.orm-document.php
index 028ce545ad..5fe24b2df6 100644
--- a/dictionaries/core/orm-value/orm-document/zh_cn.dictionary.itop.orm-document.php
+++ b/dictionaries/core/orm-value/orm-document/zh_cn.dictionary.itop.orm-document.php
@@ -4,7 +4,7 @@
* Localized data
*
* @copyright Copyright (C) 2010-2024 Combodo SAS
- * @license https://opensource.org/licenses/AGPL-3.0
+ * @license http://opensource.org/licenses/AGPL-3.0
*
* This file is part of iTop.
*
@@ -21,7 +21,8 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Core:ormValue:ormDocument:DownloadsCount' => '%1s~~',
+ 'Core:ormValue:ormDocument:DownloadsCount' => '%1s',
'Core:ormValue:ormDocument:DownloadsCount+' => '已下载%1$s次',
]);
diff --git a/dictionaries/core/uniqueness-rule/zh_cn.dictionary.itop.uniqueness-rule.php b/dictionaries/core/uniqueness-rule/zh_cn.dictionary.itop.uniqueness-rule.php
index 93dc748fea..3a53cb112b 100644
--- a/dictionaries/core/uniqueness-rule/zh_cn.dictionary.itop.uniqueness-rule.php
+++ b/dictionaries/core/uniqueness-rule/zh_cn.dictionary.itop.uniqueness-rule.php
@@ -21,6 +21,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with iTop. If not, see
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:cmdbAbstractObject/UniquenessRule:no_duplicate' => '%1$s: %2$s 已关联至 %3$s: %4$s, 不允许重复关联.',
+ 'Class:cmdbAbstractObject/UniquenessRule:no_duplicate' => '%1$s: %2$s 已链接到 %3$s: %4$s, 不允许重复链接.',
]);
diff --git a/dictionaries/cs.dictionary.itop.core.php b/dictionaries/cs.dictionary.itop.core.php
index 32f49e460c..45898cc0d0 100755
--- a/dictionaries/cs.dictionary.itop.core.php
+++ b/dictionaries/cs.dictionary.itop.core.php
@@ -976,6 +976,39 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', [
'Class:SynchroReplica/Attribute:status_last_warning' => 'Poslední varování',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Datum vytvoření',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Datum poslední úpravy',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'Uživatelské předvolby',
'Class:appUserPreferences/Attribute:userid' => 'Uživatel',
'Class:appUserPreferences/Attribute:preferences' => 'Předvolby',
diff --git a/dictionaries/da.dictionary.itop.core.php b/dictionaries/da.dictionary.itop.core.php
index fef6af27c1..4f50299508 100644
--- a/dictionaries/da.dictionary.itop.core.php
+++ b/dictionaries/da.dictionary.itop.core.php
@@ -975,6 +975,39 @@ Dict::Add('DA DA', 'Danish', 'Dansk', [
'Class:SynchroReplica/Attribute:status_last_warning' => 'Advarsler',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Oprettelses Dato',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Sidste Ændrings Dato',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'Bruger Indstillinger',
'Class:appUserPreferences/Attribute:userid' => 'Bruger',
'Class:appUserPreferences/Attribute:preferences' => 'Inst.',
diff --git a/dictionaries/de.dictionary.itop.core.php b/dictionaries/de.dictionary.itop.core.php
index dacc17ab66..8aa2fe4a51 100644
--- a/dictionaries/de.dictionary.itop.core.php
+++ b/dictionaries/de.dictionary.itop.core.php
@@ -972,6 +972,39 @@ Dict::Add('DE DE', 'German', 'Deutsch', [
'Class:SynchroReplica/Attribute:status_last_warning' => 'Letzte Warnung',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Erzeugungs-Datum',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Datum der letzten Modifikation',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'Benutzer-Voreinstellungen',
'Class:appUserPreferences/Attribute:userid' => 'Benutzer',
'Class:appUserPreferences/Attribute:preferences' => 'Voreinstellungen',
diff --git a/dictionaries/en.dictionary.itop.core.php b/dictionaries/en.dictionary.itop.core.php
index 8b26efc141..2ab22beee6 100644
--- a/dictionaries/en.dictionary.itop.core.php
+++ b/dictionaries/en.dictionary.itop.core.php
@@ -982,7 +982,7 @@ The hyperlink is displayed in the tooltip appearing on the “Lock” symbol of
'Core:SynchroReplica:PublicData' => 'Public Data',
'Core:SynchroReplica:PrivateDetails' => 'Private Details',
'Core:SynchroReplica:BackToDataSource' => 'Go Back to the Synchro Data Source: %1$s',
- 'Core:SynchroReplica:ListOfReplicas' => 'List of Replica',
+ 'Core:SynchroReplica:ListOfReplicas' => 'Replicas of the data source: %1$s',
'Core:SynchroAttExtKey:ReconciliationById' => 'id (Primary Key)',
'Core:SynchroAtt:attcode' => 'Attribute',
'Core:SynchroAtt:attcode+' => 'Field of the object',
@@ -1036,65 +1036,99 @@ The hyperlink is displayed in the tooltip appearing on the “Lock” symbol of
'Class:SynchroAttLinkSet/Attribute:row_separator' => 'Rows separator',
'Class:SynchroAttLinkSet/Attribute:attribute_separator' => 'Attributes separator',
'Class:SynchroLog' => 'Synchro Log',
- 'Class:SynchroLog/Attribute:sync_source_id' => 'Synchro Data Source',
- 'Class:SynchroLog/Attribute:start_date' => 'Start Date',
- 'Class:SynchroLog/Attribute:end_date' => 'End Date',
- 'Class:SynchroLog/Attribute:status' => 'Status',
- 'Class:SynchroLog/Attribute:status/Value:completed' => 'Completed',
- 'Class:SynchroLog/Attribute:status/Value:error' => 'Error',
- 'Class:SynchroLog/Attribute:status/Value:running' => 'Still Running',
- 'Class:SynchroLog/Attribute:stats_nb_replica_seen' => 'Nb replica seen',
- 'Class:SynchroLog/Attribute:stats_nb_replica_total' => 'Nb replica total',
- 'Class:SynchroLog/Attribute:stats_nb_obj_deleted' => 'Nb objects deleted',
- 'Class:SynchroLog/Attribute:stats_nb_obj_deleted_errors' => 'Nb of errors while deleting',
- 'Class:SynchroLog/Attribute:stats_nb_obj_obsoleted' => 'Nb objects obsoleted',
- 'Class:SynchroLog/Attribute:stats_nb_obj_obsoleted_errors' => 'Nb of errors while obsoleting',
- 'Class:SynchroLog/Attribute:stats_nb_obj_created' => 'Nb objects created',
- 'Class:SynchroLog/Attribute:stats_nb_obj_created_errors' => 'Nb or errors while creating',
- 'Class:SynchroLog/Attribute:stats_nb_obj_updated' => 'Nb objects updated',
- 'Class:SynchroLog/Attribute:stats_nb_obj_updated_errors' => 'Nb errors while updating',
- 'Class:SynchroLog/Attribute:stats_nb_replica_reconciled_errors' => 'Nb of errors during reconciliation',
+ 'Class:SynchroLog/Attribute:sync_source_id' => 'Synchro Data Source',
+ 'Class:SynchroLog/Attribute:start_date' => 'Start Date',
+ 'Class:SynchroLog/Attribute:end_date' => 'End Date',
+ 'Class:SynchroLog/Attribute:status' => 'Status',
+ 'Class:SynchroLog/Attribute:status/Value:completed' => 'Completed',
+ 'Class:SynchroLog/Attribute:status/Value:error' => 'Error',
+ 'Class:SynchroLog/Attribute:status/Value:running' => 'Still Running',
+ 'Class:SynchroLog/Attribute:stats_nb_replica_seen' => 'Nb replica seen',
+ 'Class:SynchroLog/Attribute:stats_nb_replica_total' => 'Nb replica total',
+ 'Class:SynchroLog/Attribute:stats_nb_obj_deleted' => 'Nb objects deleted',
+ 'Class:SynchroLog/Attribute:stats_nb_obj_deleted_errors' => 'Nb of errors while deleting',
+ 'Class:SynchroLog/Attribute:stats_nb_obj_obsoleted' => 'Nb objects obsoleted',
+ 'Class:SynchroLog/Attribute:stats_nb_obj_obsoleted_errors' => 'Nb of errors while obsoleting',
+ 'Class:SynchroLog/Attribute:stats_nb_obj_created' => 'Nb objects created',
+ 'Class:SynchroLog/Attribute:stats_nb_obj_created_errors' => 'Nb or errors while creating',
+ 'Class:SynchroLog/Attribute:stats_nb_obj_updated' => 'Nb objects updated',
+ 'Class:SynchroLog/Attribute:stats_nb_obj_updated_errors' => 'Nb errors while updating',
+ 'Class:SynchroLog/Attribute:stats_nb_replica_reconciled_errors' => 'Nb of errors during reconciliation',
'Class:SynchroLog/Attribute:stats_nb_replica_disappeared_no_action' => 'Nb replica disappeared',
- 'Class:SynchroLog/Attribute:stats_nb_obj_new_updated' => 'Nb objects updated',
- 'Class:SynchroLog/Attribute:stats_nb_obj_new_unchanged' => 'Nb objects unchanged',
- 'Class:SynchroLog/Attribute:last_error' => 'Last error',
- 'Class:SynchroLog/Attribute:traces' => 'Traces',
- 'Class:SynchroReplica' => 'Synchro Replica',
- 'Class:SynchroReplica/Attribute:sync_source_id' => 'Synchro Data Source',
- 'Class:SynchroReplica/Attribute:dest_id' => 'Destination object (ID)',
- 'Class:SynchroReplica/Attribute:dest_class' => 'Destination type',
- 'Class:SynchroReplica/Attribute:status_last_seen' => 'Last seen',
- 'Class:SynchroReplica/Attribute:status' => 'Status',
- 'Class:SynchroReplica/Attribute:status/Value:modified' => 'Modified',
- 'Class:SynchroReplica/Attribute:status/Value:new' => 'New',
- 'Class:SynchroReplica/Attribute:status/Value:obsolete' => 'Obsolete',
- 'Class:SynchroReplica/Attribute:status/Value:orphan' => 'Orphan',
- 'Class:SynchroReplica/Attribute:status/Value:synchronized' => 'Synchronized',
- 'Class:SynchroReplica/Attribute:status_dest_creator' => 'Object Created ?',
- 'Class:SynchroReplica/Attribute:status_last_error' => 'Last Error',
- 'Class:SynchroReplica/Attribute:status_last_warning' => 'Warnings',
- 'Class:SynchroReplica/Attribute:info_creation_date' => 'Creation Date',
- 'Class:SynchroReplica/Attribute:info_last_modified' => 'Last Modified Date',
- 'Class:appUserPreferences' => 'User Preferences',
- 'Class:appUserPreferences/Attribute:userid' => 'User',
+ 'Class:SynchroLog/Attribute:stats_nb_obj_new_updated' => 'Nb objects updated',
+ 'Class:SynchroLog/Attribute:stats_nb_obj_new_unchanged' => 'Nb objects unchanged',
+ 'Class:SynchroLog/Attribute:last_error' => 'Last error',
+ 'Class:SynchroLog/Attribute:traces' => 'Traces',
+ 'Class:SynchroReplica' => 'Synchro Replica',
+ 'Class:SynchroReplica/Attribute:sync_source_id' => 'Synchro Data Source',
+ 'Class:SynchroReplica/Attribute:dest_id' => 'Destination object (ID)',
+ 'Class:SynchroReplica/Attribute:dest_class' => 'Destination type',
+ 'Class:SynchroReplica/Attribute:status_last_seen' => 'Last seen',
+ 'Class:SynchroReplica/Attribute:status' => 'Status',
+ 'Class:SynchroReplica/Attribute:status/Value:modified' => 'Modified',
+ 'Class:SynchroReplica/Attribute:status/Value:new' => 'New',
+ 'Class:SynchroReplica/Attribute:status/Value:obsolete' => 'Obsolete',
+ 'Class:SynchroReplica/Attribute:status/Value:orphan' => 'Orphan',
+ 'Class:SynchroReplica/Attribute:status/Value:synchronized' => 'Synchronized',
+ 'Class:SynchroReplica/Attribute:status_dest_creator' => 'Object Created ?',
+ 'Class:SynchroReplica/Attribute:status_last_error' => 'Last Error',
+ 'Class:SynchroReplica/Attribute:status_last_warning' => 'Warnings',
+ 'Class:SynchroReplica/Attribute:info_creation_date' => 'Creation Date',
+ 'Class:SynchroReplica/Attribute:info_last_modified' => 'Last Modified Date',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica',
+
+ 'Class:appUserPreferences' => 'User Preferences',
+ 'Class:appUserPreferences/Attribute:userid' => 'User',
'Class:appUserPreferences/Attribute:preferences' => 'Prefs',
- 'Core:ExecProcess:Code1' => 'Wrong command or command finished with errors (e.g. wrong script name)',
- 'Core:ExecProcess:Code255' => 'PHP Error (parsing, or runtime)',
+ 'Core:ExecProcess:Code1' => 'Wrong command or command finished with errors (e.g. wrong script name)',
+ 'Core:ExecProcess:Code255' => 'PHP Error (parsing, or runtime)',
// Attribute Duration
- 'Core:Duration_Seconds' => '%1$ds',
- 'Core:Duration_Minutes_Seconds' => '%1$dmin %2$ds',
- 'Core:Duration_Hours_Minutes_Seconds' => '%1$dh %2$dmin %3$ds',
- 'Core:Duration_Days_Hours_Minutes_Seconds' => '%1$sd %2$dh %3$dmin %4$ds',
+ 'Core:Duration_Seconds' => '%1$ds',
+ 'Core:Duration_Minutes_Seconds' => '%1$dmin %2$ds',
+ 'Core:Duration_Hours_Minutes_Seconds' => '%1$dh %2$dmin %3$ds',
+ 'Core:Duration_Days_Hours_Minutes_Seconds' => '%1$sd %2$dh %3$dmin %4$ds',
// Explain working time computing
- 'Core:ExplainWTC:ElapsedTime' => 'Time elapsed (stored as "%1$s")',
- 'Core:ExplainWTC:StopWatch-TimeSpent' => 'Time spent for "%1$s"',
- 'Core:ExplainWTC:StopWatch-Deadline' => 'Deadline for "%1$s" at %2$d%%',
+ 'Core:ExplainWTC:ElapsedTime' => 'Time elapsed (stored as "%1$s")',
+ 'Core:ExplainWTC:StopWatch-TimeSpent' => 'Time spent for "%1$s"',
+ 'Core:ExplainWTC:StopWatch-Deadline' => 'Deadline for "%1$s" at %2$d%%',
// Bulk export
- 'Core:BulkExport:MissingParameter_Param' => 'Missing parameter "%1$s"',
- 'Core:BulkExport:InvalidParameter_Query' => 'Invalid value for the parameter "query". There is no Query Phrasebook corresponding to the id: "%1$s".',
+ 'Core:BulkExport:MissingParameter_Param' => 'Missing parameter "%1$s"',
+ 'Core:BulkExport:InvalidParameter_Query' => 'Invalid value for the parameter "query". There is no Query Phrasebook corresponding to the id: "%1$s".',
'Core:BulkExport:ExportFormatPrompt' => 'Export format:',
'Core:BulkExportOf_Class' => '%1$s Export',
'Core:BulkExport:ClickHereToDownload_FileName' => 'Click here to download %1$s',
diff --git a/dictionaries/en_gb.dictionary.itop.core.php b/dictionaries/en_gb.dictionary.itop.core.php
index dc47b2aed8..60b1a99036 100644
--- a/dictionaries/en_gb.dictionary.itop.core.php
+++ b/dictionaries/en_gb.dictionary.itop.core.php
@@ -965,7 +965,7 @@ The hyperlink is displayed in the tooltip appearing on the “Lock” symbol of
'Core:SynchroReplica:PublicData' => 'Public Data',
'Core:SynchroReplica:PrivateDetails' => 'Private Details',
'Core:SynchroReplica:BackToDataSource' => 'Go Back to the Synchro Data Source: %1$s',
- 'Core:SynchroReplica:ListOfReplicas' => 'List of Replica',
+ 'Core:SynchroReplica:ListOfReplicas' => 'Replicas of the data source: %1$s',
'Core:SynchroAttExtKey:ReconciliationById' => 'id (Primary Key)',
'Core:SynchroAtt:attcode' => 'Attribute',
'Core:SynchroAtt:attcode+' => 'Field of the object',
@@ -1058,6 +1058,39 @@ The hyperlink is displayed in the tooltip appearing on the “Lock” symbol of
'Class:SynchroReplica/Attribute:status_last_warning' => 'Warnings',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Creation Date',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Last Modified Date',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'User Preferences',
'Class:appUserPreferences/Attribute:userid' => 'User',
'Class:appUserPreferences/Attribute:preferences' => 'Prefs',
diff --git a/dictionaries/es_cr.dictionary.itop.core.php b/dictionaries/es_cr.dictionary.itop.core.php
index ca397d5f1f..ee3aff6af1 100644
--- a/dictionaries/es_cr.dictionary.itop.core.php
+++ b/dictionaries/es_cr.dictionary.itop.core.php
@@ -963,6 +963,39 @@ Dict::Add('ES CR', 'Spanish', 'Español, Castellano', [
'Class:SynchroReplica/Attribute:status_last_warning' => 'Advertencias',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Fecha de Creación',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Fecha Última Modificación',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'Preferencias de Usuario',
'Class:appUserPreferences/Attribute:userid' => 'Usuario',
'Class:appUserPreferences/Attribute:preferences' => 'Preferencias',
diff --git a/dictionaries/fr.dictionary.itop.core.php b/dictionaries/fr.dictionary.itop.core.php
index 25e31bdb7a..f4803cedfb 100644
--- a/dictionaries/fr.dictionary.itop.core.php
+++ b/dictionaries/fr.dictionary.itop.core.php
@@ -928,7 +928,7 @@ Plusieurs champs peuvent ainsi être modifiés lors d\'une "mise à jour" en app
'Core:SynchroReplica:PublicData' => 'Données synchronisées',
'Core:SynchroReplica:PrivateDetails' => 'Informations internes',
'Core:SynchroReplica:BackToDataSource' => 'Retourner aux détails de la source de données: %1$s',
- 'Core:SynchroReplica:ListOfReplicas' => 'Liste des réplica',
+ 'Core:SynchroReplica:ListOfReplicas' => 'Liste des réplicas de %1$s',
'Core:SynchroAttExtKey:ReconciliationById' => 'id (clé primaire)',
'Core:SynchroAtt:attcode' => 'Champ',
'Core:SynchroAtt:attcode+' => '',
@@ -1021,6 +1021,40 @@ Plusieurs champs peuvent ainsi être modifiés lors d\'une "mise à jour" en app
'Class:SynchroReplica/Attribute:status_last_warning' => 'Avertissements',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Date de création',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Date de dernière modification',
+ 'Class:SynchroReplica/Action:delete+' => 'Supprimer le réplica',
+ 'Class:SynchroReplica/Action:unlink' => 'Délier',
+ 'Class:SynchroReplica/Action:unlink+' => 'Séparer le réplica de son objet lié',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Délier & Synchroniser',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Délier le réplica avec son objet cible et executer la synchronisation sur ce réplica',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchroniser',
+ 'Class:SynchroReplica/Action:synchro+' => 'Exécuter la synchronisation sur ce réplica',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Permettre la suppression de l\'objet lié à ce réplica',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'L\'objet lié à un réplica supprimé est supprimé',
+ 'Class:SynchroReplica/Action:denydelete' => 'Interdire la suppression de l\objet lié à ce réplica',
+ 'Class:SynchroReplica/Action:denydelete+' => 'L\'objet lié à un réplica supprimé n\'est pas supprimé',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Délier les réplicas et les objets',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Séparer les réplicas de leurs objets liés',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Délier & Synchroniser les réplicas et les objets',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Séparer les réplicas le leurs objets cilbles et exécuter la synchronisation sur les réplicas',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchroniser les objets Réplica',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Exécuter la synchronisation avec ces réplicas',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Autoriser la suppression des objets liés aux Réplicas',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'L\'objet lié à un réplica supprimé est supprimé',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Interdire la suppression des objets liés aux Réplicas',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'L\'objet lié à un réplica supprimé n\'est pas supprimé',
+
+ 'UI:UnlinkAllTabTitle' => 'Délier les réplicas des objets',
+ 'UI:UnlinkAllPageTitle' => 'Séparer les réplicas de leurs objets liés',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Délier & synchroniser les réplicas',
+ 'UI:UnlinkSynchroAllPageTitle' => 'Délier & synchroniser les réplicas ',
+ 'UI:SynchroAllTabTitle' => 'Synchroniser les réplica',
+ 'UI:SynchroAllPageTitle' => 'Synchroniser les réplica',
+ 'UI:AllowDeleteAllTabTitle' => 'Autoriser la suppression des objets liés aux réplicas',
+ 'UI:AllowDeleteAllPageTitle' => 'Autoriser la suppression des objets liés aux réplicas',
+ 'UI:DenyDeleteAllTabTitle' => 'Interdire la suppression des objets liés aux réplicas',
+ 'UI:DenyDeleteAllPageTitle' => 'Interdire la suppression des objets liés aux réplicas',
+
'Class:appUserPreferences' => 'Préférences utilisateur',
'Class:appUserPreferences/Attribute:userid' => 'Utilisateur',
'Class:appUserPreferences/Attribute:preferences' => 'Préférences',
diff --git a/dictionaries/hu.dictionary.itop.core.php b/dictionaries/hu.dictionary.itop.core.php
index e6b8421c69..359a414d29 100755
--- a/dictionaries/hu.dictionary.itop.core.php
+++ b/dictionaries/hu.dictionary.itop.core.php
@@ -970,6 +970,39 @@ Dict::Add('HU HU', 'Hungarian', 'Magyar', [
'Class:SynchroReplica/Attribute:status_last_warning' => 'Figyelmeztetések',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Létrehozás dátuma',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Utolsó módosítás dátuma',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'Felhasználói beállítások',
'Class:appUserPreferences/Attribute:userid' => 'Felhasználónév',
'Class:appUserPreferences/Attribute:preferences' => 'Beállítások',
diff --git a/dictionaries/it.dictionary.itop.core.php b/dictionaries/it.dictionary.itop.core.php
index efdd1698a0..bfe3bcfb5e 100644
--- a/dictionaries/it.dictionary.itop.core.php
+++ b/dictionaries/it.dictionary.itop.core.php
@@ -970,6 +970,39 @@ Dict::Add('IT IT', 'Italian', 'Italiano', [
'Class:SynchroReplica/Attribute:status_last_warning' => 'Avvisi',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Data di creazione',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Data di ultima modifica',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'Preferenze utente',
'Class:appUserPreferences/Attribute:userid' => 'Utente',
'Class:appUserPreferences/Attribute:preferences' => 'Prefs',
diff --git a/dictionaries/ja.dictionary.itop.core.php b/dictionaries/ja.dictionary.itop.core.php
index 838640226a..cf82b2359f 100644
--- a/dictionaries/ja.dictionary.itop.core.php
+++ b/dictionaries/ja.dictionary.itop.core.php
@@ -974,6 +974,39 @@ Dict::Add('JA JP', 'Japanese', '日本語', [
'Class:SynchroReplica/Attribute:status_last_warning' => '警告',
'Class:SynchroReplica/Attribute:info_creation_date' => '作成日',
'Class:SynchroReplica/Attribute:info_last_modified' => '最終修正日',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'ユーザプリファレンス',
'Class:appUserPreferences/Attribute:userid' => 'ユーザ',
'Class:appUserPreferences/Attribute:preferences' => 'プリファレンス',
diff --git a/dictionaries/nl.dictionary.itop.core.php b/dictionaries/nl.dictionary.itop.core.php
index 32f76aec57..b9f74d8a97 100644
--- a/dictionaries/nl.dictionary.itop.core.php
+++ b/dictionaries/nl.dictionary.itop.core.php
@@ -972,6 +972,39 @@ Dict::Add('NL NL', 'Dutch', 'Nederlands', [
'Class:SynchroReplica/Attribute:status_last_warning' => 'Waarschuwingen',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Datum van aanmaken',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Datum van de laatste aanpassing',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'Gebruikersvoorkeuren',
'Class:appUserPreferences/Attribute:userid' => 'Gebruiker',
'Class:appUserPreferences/Attribute:preferences' => 'Voorkeuren',
diff --git a/dictionaries/pl.dictionary.itop.core.php b/dictionaries/pl.dictionary.itop.core.php
index be7450a3d3..925628470e 100644
--- a/dictionaries/pl.dictionary.itop.core.php
+++ b/dictionaries/pl.dictionary.itop.core.php
@@ -969,6 +969,39 @@ Dict::Add('PL PL', 'Polish', 'Polski', [
'Class:SynchroReplica/Attribute:status_last_warning' => 'Ostrzeżenia',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Data utworzenia',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Data ostatniej zmiany',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'Preferencje użytkownika',
'Class:appUserPreferences/Attribute:userid' => 'Użytkownik',
'Class:appUserPreferences/Attribute:preferences' => 'Preferencje',
diff --git a/dictionaries/pt_br.dictionary.itop.core.php b/dictionaries/pt_br.dictionary.itop.core.php
index e919b141fd..d13bb6a2aa 100644
--- a/dictionaries/pt_br.dictionary.itop.core.php
+++ b/dictionaries/pt_br.dictionary.itop.core.php
@@ -970,6 +970,39 @@ Dict::Add('PT BR', 'Brazilian', 'Brazilian', [
'Class:SynchroReplica/Attribute:status_last_warning' => 'Alertas',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Data de criação',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Última data modificação',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'Preferências de usuário',
'Class:appUserPreferences/Attribute:userid' => 'Usuário',
'Class:appUserPreferences/Attribute:preferences' => 'Preferências',
diff --git a/dictionaries/ru.dictionary.itop.core.php b/dictionaries/ru.dictionary.itop.core.php
index 3de6a260d3..f867f114cd 100644
--- a/dictionaries/ru.dictionary.itop.core.php
+++ b/dictionaries/ru.dictionary.itop.core.php
@@ -882,7 +882,7 @@ Dict::Add('RU RU', 'Russian', 'Русский', [
'Core:SynchroReplica:PublicData' => 'Public Data~~',
'Core:SynchroReplica:PrivateDetails' => 'Private Details~~',
'Core:SynchroReplica:BackToDataSource' => 'Go Back to the Synchro Data Source: %1$s~~',
- 'Core:SynchroReplica:ListOfReplicas' => 'List of Replica~~',
+ 'Core:SynchroReplica:ListOfReplicas' => 'Replicas of the data source: %1$s~~',
'Core:SynchroAttExtKey:ReconciliationById' => 'id (Primary Key)~~',
'Core:SynchroAtt:attcode' => 'Атрибут',
'Core:SynchroAtt:attcode+' => 'Поле объекта',
@@ -975,6 +975,40 @@ Dict::Add('RU RU', 'Russian', 'Русский', [
'Class:SynchroReplica/Attribute:status_last_warning' => 'Предупреждения',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Дата создания',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Дата последнего изменения',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+
'Class:appUserPreferences' => 'Предпочтения пользователя',
'Class:appUserPreferences/Attribute:userid' => 'Пользователь',
'Class:appUserPreferences/Attribute:preferences' => 'Предпочтения',
diff --git a/dictionaries/sk.dictionary.itop.core.php b/dictionaries/sk.dictionary.itop.core.php
index 5c5b033fbb..2111bf3b34 100644
--- a/dictionaries/sk.dictionary.itop.core.php
+++ b/dictionaries/sk.dictionary.itop.core.php
@@ -993,6 +993,39 @@ The hyperlink is displayed in the tooltip appearing on the “Lock” symbol of
'Class:SynchroReplica/Attribute:status_last_warning' => 'Upozornenia',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Dátum vytvorenia',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Dátum poslednej úpravy',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'Užívateľské preferencie',
'Class:appUserPreferences/Attribute:userid' => 'Užívateľ',
'Class:appUserPreferences/Attribute:preferences' => 'Preferencie',
diff --git a/dictionaries/tr.dictionary.itop.core.php b/dictionaries/tr.dictionary.itop.core.php
index e8ad498944..72992b5d2e 100644
--- a/dictionaries/tr.dictionary.itop.core.php
+++ b/dictionaries/tr.dictionary.itop.core.php
@@ -975,6 +975,39 @@ Dict::Add('TR TR', 'Turkish', 'Türkçe', [
'Class:SynchroReplica/Attribute:status_last_warning' => 'Uyarılar',
'Class:SynchroReplica/Attribute:info_creation_date' => 'Yaratılış Tarihi',
'Class:SynchroReplica/Attribute:info_last_modified' => 'Son değiştirilme tarih',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
'Class:appUserPreferences' => 'Kullanıcı Tercihleri',
'Class:appUserPreferences/Attribute:userid' => 'Kullanıcı',
'Class:appUserPreferences/Attribute:preferences' => 'Tercihler',
diff --git a/dictionaries/ui/application/links/zh_cn.dictionary.itop.links.php b/dictionaries/ui/application/links/zh_cn.dictionary.itop.links.php
index 78a6304093..900526c8a8 100644
--- a/dictionaries/ui/application/links/zh_cn.dictionary.itop.links.php
+++ b/dictionaries/ui/application/links/zh_cn.dictionary.itop.links.php
@@ -17,58 +17,60 @@
*
* You should have received a copy of the GNU Affero General Public License
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
// Placeholders
- // $%1s : host object class name
- // $%2s : host object friendlyname
- // $%3s : current tab name
- // $%4s : remote object class name
- // $%5s : remote object friendlyname
- 'UI:Links:Object:New:Modal:Title' => '创建对象',
+ // $%1s : host object class name
+ // $%2s : host object friendlyname
+ // $%3s : current tab name
+ // $%4s : remote object class name
+ // $%5s : remote object friendlyname
+
+ 'UI:Links:Object:New:Modal:Title' => '创建对象',
// Create
- 'UI:Links:Create:Button' => '创建',
- 'UI:Links:Create:Button+' => '创建一个 %4$s',
- 'UI:Links:Create:Modal:Title' => '创建一个 %4$s 至 %2$s',
+ 'UI:Links:Create:Button' => '创建',
+ 'UI:Links:Create:Button+' => '创建一个 %4$s',
+ 'UI:Links:Create:Modal:Title' => '创建一个 %4$s 至 %2$s',
// Add
- 'UI:Links:Add:Button' => '添加',
- 'UI:Links:Add:Button+' => '添加一个 %4$s',
- 'UI:Links:Add:Modal:Title' => '添加一个 %4$s 至 %2$s',
+ 'UI:Links:Add:Button' => '添加',
+ 'UI:Links:Add:Button+' => '添加一个 %4$s',
+ 'UI:Links:Add:Modal:Title' => '添加一个 %4$s 至 %2$s',
// Modify link
- 'UI:Links:ModifyLink:Button' => '修改',
- 'UI:Links:ModifyLink:Button+' => '修改此关联',
- 'UI:Links:ModifyLink:Modal:Title' => '修改 %2$s 和 %5$s 的关联',
+ 'UI:Links:ModifyLink:Button' => '修改',
+ 'UI:Links:ModifyLink:Button+' => '修改这个链接',
+ 'UI:Links:ModifyLink:Modal:Title' => '修改 %2$s 与 %5$s 之间的链接',
// Modify object
- 'UI:Links:ModifyObject:Button' => '修改',
- 'UI:Links:ModifyObject:Button+' => '修改此对象',
+ 'UI:Links:ModifyObject:Button' => '修改',
+ 'UI:Links:ModifyObject:Button+' => '修改这个对象',
'UI:Links:ModifyObject:Modal:Title' => '%5$s',
// Remove
- 'UI:Links:Remove:Button' => '移除',
- 'UI:Links:Remove:Button+' => '移除此 %4$s',
- 'UI:Links:Remove:Modal:Title' => '从%1$s 移除 %4$s',
- 'UI:Links:Remove:Modal:Message' => '请确认从 %2$s 移除 %5$s ?',
+ 'UI:Links:Remove:Button' => '移除',
+ 'UI:Links:Remove:Button+' => '移除这个 %4$s',
+ 'UI:Links:Remove:Modal:Title' => '从%1$s 移除 %4$s',
+ 'UI:Links:Remove:Modal:Message' => '请确认从 %2$s 中移除 %5$s ?',
// Delete
- 'UI:Links:Delete:Button' => '删除',
- 'UI:Links:Delete:Button+' => '删除此 %4$s',
- 'UI:Links:Delete:Modal:Title' => '删除 %4$s',
- 'UI:Links:Delete:Modal:Message' => '请确认删除 %5$s?',
+ 'UI:Links:Delete:Button' => '删除',
+ 'UI:Links:Delete:Button+' => '删除此 %4$s',
+ 'UI:Links:Delete:Modal:Title' => '删除 %4$s',
+ 'UI:Links:Delete:Modal:Message' => '请确认删除 %5$s?',
// Bulk
- 'UI:Links:Bulk:LinkWillBeCreatedForAllObjects' => '添加至所有对象',
+ 'UI:Links:Bulk:LinkWillBeCreatedForAllObjects' => '添加至所有对象',
'UI:Links:Bulk:LinkWillBeDeletedFromAllObjects' => '从所有对象删除',
- 'UI:Links:Bulk:LinkWillBeCreatedFor1Object' => '添加至一个对象',
- 'UI:Links:Bulk:LinkWillBeDeletedFrom1Object' => '从一个对象移除',
- 'UI:Links:Bulk:LinkWillBeCreatedForXObjects' => '添加 {count} 个对象',
- 'UI:Links:Bulk:LinkWillBeDeletedFromXObjects' => '移除 {count} 个对象',
- 'UI:Links:Bulk:LinkExistForAllObjects' => '已关联所有对象',
- 'UI:Links:Bulk:LinkExistForOneObject' => '已关联一个对象',
- 'UI:Links:Bulk:LinkExistForXObjects' => '已关联 {count} 个对象',
+ 'UI:Links:Bulk:LinkWillBeCreatedFor1Object' => '添加至一个对象',
+ 'UI:Links:Bulk:LinkWillBeDeletedFrom1Object' => '从一个对象移除',
+ 'UI:Links:Bulk:LinkWillBeCreatedForXObjects' => '添加 {count} 个对象',
+ 'UI:Links:Bulk:LinkWillBeDeletedFromXObjects' => '移除 {count} 个对象',
+ 'UI:Links:Bulk:LinkExistForAllObjects' => '已关联所有对象',
+ 'UI:Links:Bulk:LinkExistForOneObject' => '已关联一个对象',
+ 'UI:Links:Bulk:LinkExistForXObjects' => '已关联 {count} 个对象',
// New item
'UI:Links:NewItem' => '新建条目',
diff --git a/dictionaries/ui/application/newsroom/zh_cn.dictionary.itop.newsroom.php b/dictionaries/ui/application/newsroom/zh_cn.dictionary.itop.newsroom.php
index 98777e7c38..1b3fac16e3 100644
--- a/dictionaries/ui/application/newsroom/zh_cn.dictionary.itop.newsroom.php
+++ b/dictionaries/ui/application/newsroom/zh_cn.dictionary.itop.newsroom.php
@@ -17,25 +17,27 @@
*
* You should have received a copy of the GNU Affero General Public License
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:Newsroom:iTopNotification:Label' => ITOP_APPLICATION_SHORT,
- 'UI:Newsroom:iTopNotification:ViewAllPage:Title' => 'Your '.ITOP_APPLICATION_SHORT.' news~~',
- 'UI:Newsroom:iTopNotification:ViewAllPage:SubTitle' => 'Manage your news, flag them as read or unread, delete them, etc.~~',
+ 'UI:Newsroom:iTopNotification:ViewAllPage:Title' => '您的 '.ITOP_APPLICATION_SHORT.' 消息',
+ 'UI:Newsroom:iTopNotification:ViewAllPage:SubTitle' => '管理您的消息,将它们标记为已读或未读,甚至删除等等.',
'UI:Newsroom:iTopNotification:ViewAllPage:Read:Label' => '已读',
'UI:Newsroom:iTopNotification:ViewAllPage:Unread:Label' => '未读',
- 'UI:Newsroom:iTopNotification:SelectMode:Label' => 'Select mode~~',
+ 'UI:Newsroom:iTopNotification:SelectMode:Label' => '请选择模式',
'UI:Newsroom:iTopNotification:ViewAllPage:Action:MarkAllAsRead:Label' => '全部标记为已读',
'UI:Newsroom:iTopNotification:ViewAllPage:Action:MarkAllAsUnread:Label' => '全部标记为未读',
'UI:Newsroom:iTopNotification:ViewAllPage:Action:DeleteAll:Label' => '全部删除',
'UI:Newsroom:iTopNotification:ViewAllPage:Action:DeleteAll:Success:Message' => '全部 %1$s 条消息已被删除',
'UI:Newsroom:iTopNotification:ViewAllPage:Action:DeleteAll:Confirmation:Title' => '删除全部消息',
- 'UI:Newsroom:iTopNotification:ViewAllPage:Action:DeleteAll:Confirmation:Message' => 'Are you sure you want to delete all news?~~',
+ 'UI:Newsroom:iTopNotification:ViewAllPage:Action:DeleteAll:Confirmation:Message' => '您确定要删除所有消息吗?',
+
'UI:Newsroom:iTopNotification:ViewAllPage:Empty:Title' => '没有消息, 已是最新!',
// Actions
- // - Unitary buttons
+ // - Unitary buttons
'UI:Newsroom:iTopNotification:ViewAllPage:Action:Delete:Label' => '删除这条消息',
- 'UI:Newsroom:iTopNotification:ViewAllPage:Action:ViewObject:Label' => 'Go to the news url~~',
+ 'UI:Newsroom:iTopNotification:ViewAllPage:Action:ViewObject:Label' => '转到消息的链接',
'UI:Newsroom:iTopNotification:ViewAllPage:Action:MarkAsRead:Label' => '标记为已读',
'UI:Newsroom:iTopNotification:ViewAllPage:Action:MarkAsUnread:Label' => '标记为未读',
// - Bulk buttons
@@ -43,7 +45,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:Newsroom:iTopNotification:ViewAllPage:Action:MarkSelectedAsUnread:Label' => '标记已选为未读',
'UI:Newsroom:iTopNotification:ViewAllPage:Action:DeleteSelected:Label' => '删除已选择',
'UI:Newsroom:iTopNotification:ViewAllPage:Action:DeleteSelected:Confirmation:Title' => '删除已选的消息',
- 'UI:Newsroom:iTopNotification:ViewAllPage:Action:DeleteSelected:Confirmation:Message' => 'Are you sure you want to delete selected news?~~',
+ 'UI:Newsroom:iTopNotification:ViewAllPage:Action:DeleteSelected:Confirmation:Message' => '您确定要删除选中的消息吗?',
// Feedback messages
'UI:Newsroom:iTopNotification:ViewAllPage:Action:InvalidAction:Message' => '无效操作: "%1$s"',
diff --git a/dictionaries/ui/application/welcome-popup/zh_cn.dictionary.itop.welcome-popup.php b/dictionaries/ui/application/welcome-popup/zh_cn.dictionary.itop.welcome-popup.php
index 44b9230d0f..a505d13714 100644
--- a/dictionaries/ui/application/welcome-popup/zh_cn.dictionary.itop.welcome-popup.php
+++ b/dictionaries/ui/application/welcome-popup/zh_cn.dictionary.itop.welcome-popup.php
@@ -4,6 +4,7 @@
* @copyright Copyright (C) 2010-2024 Combodo SAS
* @license http://opensource.org/licenses/AGPL-3.0
*/
+
// UI elements
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:WelcomePopup:Button:RemindLater' => '以后再提醒我',
@@ -14,42 +15,42 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
// Message
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:WelcomePopup:Message:320_01_Welcome:Title' => '欢迎使用 '.ITOP_APPLICATION_SHORT.' 3.2',
- 'UI:WelcomePopup:Message:320_01_Welcome:Description' => 'Congratulations, you landed on '.ITOP_APPLICATION.' '.ITOP_VERSION_NAME.'!
+ 'UI:WelcomePopup:Message:320_01_Welcome:Description' => '恭喜, 您已登录 '.ITOP_APPLICATION.' '.ITOP_VERSION_NAME.'!
-We\'re excited to announce this new release.
-In addition to introducing new features such as Newsroom, '.ITOP_APPLICATION_SHORT.' 3.2 includes critical security patches, enhanced accessibility and other significant improvements focused on providing you with stability and security.
+很高兴向你宣布这个新版本.
+新增了新闻室等新功能, '.ITOP_APPLICATION_SHORT.' 3.2 还包含了关键的安全补丁, 增强的可访问性以及其它重要的改进,旨在为您提供更好的稳定性和安全性.
-Discover all of '.ITOP_APPLICATION_SHORT.'\'s exciting new features and stay up-to-date with important notifications with our new welcome pop-up!
-We hope you\'ll enjoy this version as much as we enjoyed imagining and creating it.
+发现 '.ITOP_APPLICATION_SHORT.' 所有令人兴奋的新功能,并通过我们的新欢迎弹窗保持与重要通知的同步!
+我们希望你能像我们一样,从构思到创造,全程享受这个版本!
-Customize your '.ITOP_APPLICATION_SHORT.' preferences for a personalized experience.
~~',
- 'UI:WelcomePopup:Message:320_02_Newsroom:Title' => 'Say "Hello" to the newsroom~~',
- 'UI:WelcomePopup:Message:320_02_Newsroom:Description' => '
-Newsroom allows you to easily manage notifications within the platform, so you can stay on top of important updates without constantly checking your email. With the ability to mark messages as read or unread, and automatically delete old notifications, you have complete control over your notifications.
+定制您的 '.ITOP_APPLICATION_SHORT.' 偏好设置,可以获得个性化的使用体验.
',
+ 'UI:WelcomePopup:Message:320_02_Newsroom:Title' => '向新闻室说 "Hello" ',
+ 'UI:WelcomePopup:Message:320_02_Newsroom:Description' => '
+新闻室允许您轻松管理平台内的通知,因此您可以掌握重要更新而无需频繁查收电子邮件.通过将消息标记为已读或未读,并自动删除旧通知,您可以完全控制您的通知.
-Try it out today and streamline your '.ITOP_APPLICATION_SHORT.'\'s communication experience!
~~',
- 'UI:WelcomePopup:Message:320_03_NotificationsCenter:Title' => 'Notifications center~~',
- 'UI:WelcomePopup:Message:320_03_NotificationsCenter:Description' => 'As we know your information intake is already at its max, you can now easily choose how you receive your notifications - via email, chat, or even the Newsroom feature
-You don\'t want to receive a certain type of alerts? Nothing easier with these advanced customization capabilities giving you the flexibility to tailor your experience to your needs.
+今天就试试,简化您的 '.ITOP_APPLICATION_SHORT.' 沟通体验!
',
+ 'UI:WelcomePopup:Message:320_03_NotificationsCenter:Title' => '通知中心',
+ 'UI:WelcomePopup:Message:320_03_NotificationsCenter:Description' => '由于我们知道您的信息摄入量已经达到最大限度,现在您可以轻松选择如何接收通知 - 通过电子邮件、聊天,甚至新闻室功能
+您不想接收某种类型的警报?使用这些高级自定义功能,您可以根据需要轻松定制体验.
-Access your
notifications center through the newsroom or through your preferences and avoid information overload on all your communication channels!
~~',
- 'UI:WelcomePopup:Message:320_05_A11yThemes:Title' => 'Accessibility for '.ITOP_APPLICATION_SHORT.'\'s UI~~',
- 'UI:WelcomePopup:Message:320_05_A11yThemes:Description' => 'To ensure '.ITOP_APPLICATION_SHORT.'\'s accessibility, our team has been working on
new back-office themes. WCAG compliants, those UI focus on making it easier for users with visual impairments to use the solution:
+
通过新闻室或您的偏好设置访问您的
通知中心,避免所有通信渠道的信息过载!
',
+ 'UI:WelcomePopup:Message:320_05_A11yThemes:Title' => ITOP_APPLICATION_SHORT.' UI 的可访问性',
+ 'UI:WelcomePopup:Message:320_05_A11yThemes:Description' => '
为了确保 '.ITOP_APPLICATION_SHORT.' 的可访问性,我们的团队一直在开发
新的后台主题.符合 WCAG 标准,这些 UI 主题可以帮助视力障碍用户更容易的使用:
- - Color-blind theme: Designed to help users with colorblindness, this theme actually breaks down in two sub-themes to adapt to specific cases:
+ - 色盲主题: 设计用于帮助色盲用户,此主题实际上分为两个子主题以适应特定情况:
- - One adapted to protanopia and deuteranopia
- - And another one for tritanopia
+ - 一个适用于红绿色盲和绿色色盲
+ - 另一个适用于黄蓝色盲
- - High-contrast theme: Increased contrast to allow users an easier distinction between different elements on screen and avoid to rely on color schema to convey information. It can be helpful for users with different pathology from colorblindness to low vision issues.
+ - 高对比度主题: 增加对比度以允许用户更容易区分屏幕上的不同元素,并避免依赖颜色方案传递信息.它可以帮助从色盲到弱视等不同病理的用户.
-
~~',
- 'UI:WelcomePopup:Message:320_04_PowerfulNotifications_AdminOnly:Title' => 'Powerful notifications~~',
- 'UI:WelcomePopup:Message:320_04_PowerfulNotifications_AdminOnly:Description' => '
-
Our priority-based notifications sorting ensures that important messages are displayed first, while our URL customization options allow you to direct recipients to the right place.
+
',
+ 'UI:WelcomePopup:Message:320_04_PowerfulNotifications_AdminOnly:Title' => '强大的通知',
+ 'UI:WelcomePopup:Message:320_04_PowerfulNotifications_AdminOnly:Description' => ''.ITOP_APPLICATION_SHORT.' 的新闻室为您提供了一种新的方法,可以
自动化 基于事件的告警 并支持重复设置, 因此您可以轻松设置适合您的规则.
+我们的基于优先级的通知排序确保重要消息优先展示,同时,我们的 URL 自定义选项允许您将收件人引导到正确的位置.
-With support for multiple languages, you have now complete control over your notifications display.
+支持多语言,您现在可以完全控制通知显示.
-Configure it today and see how much more efficient your alerts process can be!
~~',
+现在就配置它,看看您的警报流程可以变得多么高效!
',
]);
diff --git a/dictionaries/ui/layouts/activity-panel/zh_cn.dictionary.itop.activity-panel.php b/dictionaries/ui/layouts/activity-panel/zh_cn.dictionary.itop.activity-panel.php
index c4a1ce344b..dc7303f12a 100644
--- a/dictionaries/ui/layouts/activity-panel/zh_cn.dictionary.itop.activity-panel.php
+++ b/dictionaries/ui/layouts/activity-panel/zh_cn.dictionary.itop.activity-panel.php
@@ -17,13 +17,14 @@
*
* You should have received a copy of the GNU Affero General Public License
*/
+
// Activity panel
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:Layout:ActivityPanel:SizeToggler:Expand:Tooltip' => '展开',
- 'UI:Layout:ActivityPanel:SizeToggler:Reduce:Tooltip' => '减少',
+ 'UI:Layout:ActivityPanel:SizeToggler:Reduce:Tooltip' => '还原',
'UI:Layout:ActivityPanel:DisplayToggler:Close:Tooltip' => '关闭',
- 'UI:Layout:ActivityPanel:LoadMoreEntries:Tooltip' => '加载更多',
- 'UI:Layout:ActivityPanel:LoadAllEntries:Tooltip' => '全部加载',
+ 'UI:Layout:ActivityPanel:LoadMoreEntries:Tooltip' => '加载更多条目',
+ 'UI:Layout:ActivityPanel:LoadAllEntries:Tooltip' => '加载之前全部的条目',
// Tabs
'UI:Layout:ActivityPanel:Tab:Activity:Title' => '活动',
@@ -54,6 +55,6 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:Layout:ActivityPanel:NoEntry:Placeholder:Hint' => '暂无任何活动',
// Closed cover
- 'UI:Layout:ActivityPanel:ClosedCover:Title' => '活动面板',
- 'UI:Layout:ActivityPanel:ClosedCover:Tooltip' => '点击打开活动面板',
+ 'UI:Layout:ActivityPanel:ClosedCover:Title' => '侧面板',
+ 'UI:Layout:ActivityPanel:ClosedCover:Tooltip' => '点击打开侧面板',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/cs.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/cs.dictionary.itop.extensions-details.php
index 2f38ac0a26..f7fe7ceff0 100644
--- a/dictionaries/ui/layouts/extensions-details/cs.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/cs.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('CS CZ', 'Czech', 'Čeština', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/da.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/da.dictionary.itop.extensions-details.php
index ad743ccc36..2eb24fb0d2 100644
--- a/dictionaries/ui/layouts/extensions-details/da.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/da.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('DA DA', 'Danish', 'Dansk', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/de.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/de.dictionary.itop.extensions-details.php
index 505ce5e34e..6b4aa2ba99 100644
--- a/dictionaries/ui/layouts/extensions-details/de.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/de.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('DE DE', 'German', 'Deutsch', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/en.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/en.dictionary.itop.extensions-details.php
index b8d1415ced..0cf540d414 100644
--- a/dictionaries/ui/layouts/extensions-details/en.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/en.dictionary.itop.extensions-details.php
@@ -10,13 +10,20 @@
Dict::Add('EN US', 'English', 'English', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/es_cr.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/es_cr.dictionary.itop.extensions-details.php
index ae18bb850c..270144f306 100644
--- a/dictionaries/ui/layouts/extensions-details/es_cr.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/es_cr.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('ES CR', 'Spanish', 'Español, Castellano', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/fr.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/fr.dictionary.itop.extensions-details.php
index 5114c91c77..6b85232cf4 100644
--- a/dictionaries/ui/layouts/extensions-details/fr.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/fr.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('FR FR', 'French', 'Français', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installé',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'Cette extension fait partie de l\'installation actuelle.',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'va être installé',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'Cette extension sera installée lors de l\'installation.',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'pas installé',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'Cette extension ne fait pas partie de l\'installation actuelle.',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'va être désinstallé',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'Cette extension sera désinstallée lors de l\'installation.',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'non désinstallable',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Une fois cette extension installée, elle ne devrait pas être désinstallée.',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'supprimé du disque',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'Le dossier local de l\'extension a été supprimé du disque. Cela forcera la désinstallation de cette extension.',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'À propos de %1$s',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'Plus d\'informations',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Forcer la désinstallation',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Plus d\'actions',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/hu.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/hu.dictionary.itop.extensions-details.php
index cded3a4641..e17a4d3ef2 100644
--- a/dictionaries/ui/layouts/extensions-details/hu.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/hu.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('HU HU', 'Hungarian', 'Magyar', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/it.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/it.dictionary.itop.extensions-details.php
index 424a0b13f9..fd9a53dce7 100644
--- a/dictionaries/ui/layouts/extensions-details/it.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/it.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('IT IT', 'Italian', 'Italiano', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/ja.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/ja.dictionary.itop.extensions-details.php
index 96703e5832..b2d0ba8c02 100644
--- a/dictionaries/ui/layouts/extensions-details/ja.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/ja.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('JA JP', 'Japanese', '日本語', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/nl.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/nl.dictionary.itop.extensions-details.php
index 1774a4dca1..20d6e58733 100644
--- a/dictionaries/ui/layouts/extensions-details/nl.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/nl.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('NL NL', 'Dutch', 'Nederlands', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/pl.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/pl.dictionary.itop.extensions-details.php
index 48628bd08e..caaad67c6e 100644
--- a/dictionaries/ui/layouts/extensions-details/pl.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/pl.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('PL PL', 'Polish', 'Polski', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/pt_br.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/pt_br.dictionary.itop.extensions-details.php
index f469ddfdfc..dd98f2ec28 100644
--- a/dictionaries/ui/layouts/extensions-details/pt_br.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/pt_br.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('PT BR', 'Brazilian', 'Brazilian', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/ru.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/ru.dictionary.itop.extensions-details.php
index 9b5967a04d..146cafdad3 100644
--- a/dictionaries/ui/layouts/extensions-details/ru.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/ru.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('RU RU', 'Russian', 'Русский', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/sk.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/sk.dictionary.itop.extensions-details.php
index 3aab38ee98..53cd4851af 100644
--- a/dictionaries/ui/layouts/extensions-details/sk.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/sk.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('SK SK', 'Slovak', 'Slovenčina', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/tr.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/tr.dictionary.itop.extensions-details.php
index 45ca6000a3..7e98c6e52c 100644
--- a/dictionaries/ui/layouts/extensions-details/tr.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/tr.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('TR TR', 'Turkish', 'Türkçe', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/extensions-details/zh_cn.dictionary.itop.extensions-details.php b/dictionaries/ui/layouts/extensions-details/zh_cn.dictionary.itop.extensions-details.php
index afce37f0ac..8344417981 100644
--- a/dictionaries/ui/layouts/extensions-details/zh_cn.dictionary.itop.extensions-details.php
+++ b/dictionaries/ui/layouts/extensions-details/zh_cn.dictionary.itop.extensions-details.php
@@ -12,13 +12,20 @@
*/
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:Layout:ExtensionsDetails:BadgeInstalled' => 'installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeInstalled+' => 'This extension is part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeInstalled' => 'to be installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeInstalled+' => 'This extension will be installed during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotInstalled' => 'not installed~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotInstalled+' => 'This extension is not part of the current installation.~~',
'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled' => 'to be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeToBeUninstalled+' => 'This extension will be uninstalled during the setup.~~',
'UI:Layout:ExtensionsDetails:BadgeNotUninstallable' => 'cannot be uninstalled~~',
+ 'UI:Layout:ExtensionsDetails:BadgeNotUninstallable+' => 'Once this extension has been installed, it should not be uninstalled.~~',
'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk' => 'missing from disk~~',
+ 'UI:Layout:ExtensionsDetails:BadgeMissingFromDisk+' => 'The local extension folder has been removed from the disk. This will force the uninstallation of this extension.~~',
'UI:Layout:ExtensionsDetails:MenuAboutTitle' => 'About %1$s~~',
'UI:Layout:ExtensionsDetails:MenuAbout' => 'More informations~~',
'UI:Layout:ExtensionsDetails:MenuForce' => 'Force uninstall~~',
'UI:Layout:ExtensionsDetails:MoreActions' => 'Show more actions~~',
+ 'UI:Layout:ExtensionsDetails:TogglerTooltip' => 'Toggle %1$s~~',
]);
diff --git a/dictionaries/ui/layouts/navigation-menu/zh_cn.dictionary.itop.navigation-menu.php b/dictionaries/ui/layouts/navigation-menu/zh_cn.dictionary.itop.navigation-menu.php
index d59ef87db2..b02860fb05 100644
--- a/dictionaries/ui/layouts/navigation-menu/zh_cn.dictionary.itop.navigation-menu.php
+++ b/dictionaries/ui/layouts/navigation-menu/zh_cn.dictionary.itop.navigation-menu.php
@@ -17,17 +17,18 @@
*
* You should have received a copy of the GNU Affero General Public License
*/
+
// Navigation menu
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'UI:Layout:NavigationMenu:CompanyLogo:AltText' => '公司标志',
+ 'UI:Layout:NavigationMenu:CompanyLogo:AltText' => '公司 logo',
'UI:Layout:NavigationMenu:Silo:Label' => '请选择要筛选的组织',
- 'UI:Layout:NavigationMenu:Toggler:Tooltip' => '展开/折叠',
- 'UI:Layout:NavigationMenu:Toggler:TooltipWithSiloLabel' => '展开/折叠 (筛选%1$s)',
+ 'UI:Layout:NavigationMenu:Toggler:Tooltip' => '展开 / 折叠',
+ 'UI:Layout:NavigationMenu:Toggler:TooltipWithSiloLabel' => '展开 / 折叠 (筛选 %1$s)',
'UI:Layout:NavigationMenu:MenuFilter:Input:Placeholder' => '筛选器...',
'UI:Layout:NavigationMenu:MenuFilter:Input:Tooltip' => '请输入要筛选的关键字',
'UI:Layout:NavigationMenu:MenuFilter:Input:Hint' => '将会显示所有匹配的菜单',
'UI:Layout:NavigationMenu:MenuFilter:Placeholder:Hint' => '此菜单暂无筛选结果',
- 'UI:Layout:NavigationMenu:UserInfo:WelcomeMessage:Text' => '您好, %1$s!',
+ 'UI:Layout:NavigationMenu:UserInfo:WelcomeMessage:Text' => 'Hi, %1$s!',
'UI:Layout:NavigationMenu:UserInfo:Picture:AltText' => '%1$s 的联系人头像',
'UI:Layout:NavigationMenu:UserMenu:Toggler:Label' => '打开用户菜单',
'UI:Layout:NavigationMenu:KeyboardShortcut:FocusFilter' => '筛选菜单',
diff --git a/dictionaries/ui/pages/login/zh_cn.dictionary.itop.login.php b/dictionaries/ui/pages/login/zh_cn.dictionary.itop.login.php
index 7415103a72..3f9bfd3a4a 100644
--- a/dictionaries/ui/pages/login/zh_cn.dictionary.itop.login.php
+++ b/dictionaries/ui/pages/login/zh_cn.dictionary.itop.login.php
@@ -23,7 +23,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:ResetPwd-Error-WrongLogin' => '\'%1$s\' 用户名无效',
'UI:ResetPwd-Error-NotPossible' => '外部账号不允许重置密码.',
'UI:ResetPwd-Error-FixedPwd' => '此账号不允许重置密码.',
- 'UI:ResetPwd-Error-NoContact' => '此账号没有关联到人员.',
+ 'UI:ResetPwd-Error-NoContact' => '此账号没有关联到个体.',
'UI:ResetPwd-Error-NoEmailAtt' => '此账号未关联邮箱地址,请联系管理员.',
'UI:ResetPwd-Error-NoEmail' => '缺少邮箱地址. 请联系管理员.',
'UI:ResetPwd-Error-Send' => '邮件发送存在技术原因. 请联系管理员.',
diff --git a/dictionaries/ui/pages/notifications-center/zh_cn.dictionary.itop.notifications-center.php b/dictionaries/ui/pages/notifications-center/zh_cn.dictionary.itop.notifications-center.php
index de58611b6a..5815c45f11 100644
--- a/dictionaries/ui/pages/notifications-center/zh_cn.dictionary.itop.notifications-center.php
+++ b/dictionaries/ui/pages/notifications-center/zh_cn.dictionary.itop.notifications-center.php
@@ -19,15 +19,15 @@
*/
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'UI:NotificationsCenter:Page:Title' => 'Notifications center~~',
- 'UI:NotificationsCenter:Panel:Title' => 'Notifications center~~',
- 'UI:NotificationsCenter:Panel:SubTitle' => 'Manage Notifications that you have received : unsubscribe or limit them to a single channel~~',
- 'UI:NotificationsCenter:Panel:Toolbar:ViewAllNews:Title' => 'View all my news~~',
- 'UI:NotificationsCenter:Panel:Table:Channels' => 'Channels~~',
- 'UI:NotificationsCenter:Unsubscribe:Success' => 'You have been successfully unsubscribed from the selected notifications.~~',
- 'UI:NotificationsCenter:Unsubscribe:Error' => 'An error occurred while unsubscribing from the selected notifications.~~',
- 'UI:NotificationsCenter:Subscribe:Success' => 'You have been successfully subscribed to the selected notifications.~~',
- 'UI:NotificationsCenter:Subscribe:Error' => 'An error occurred while subscribing to the selected notifications.~~',
- 'UI:NotificationsCenter:Channel:OutOf:Text' => '%1$s out of %2$s~~',
- 'UI:NotificationsCenter:Advanced:Input:Label' => '%1$s: %2$s~~',
+ 'UI:NotificationsCenter:Page:Title' => '通知中心',
+ 'UI:NotificationsCenter:Panel:Title' => '通知中心',
+ 'UI:NotificationsCenter:Panel:SubTitle' => '管理收到的通知 : 取消订阅或限制到单一频道',
+ 'UI:NotificationsCenter:Panel:Toolbar:ViewAllNews:Title' => '查看所有新闻',
+ 'UI:NotificationsCenter:Panel:Table:Channels' => '频道',
+ 'UI:NotificationsCenter:Unsubscribe:Success' => '您已成功取消订阅所选通知.',
+ 'UI:NotificationsCenter:Unsubscribe:Error' => '取消订阅所选通知时发生错误.',
+ 'UI:NotificationsCenter:Subscribe:Success' => '您已成功订阅所选通知.',
+ 'UI:NotificationsCenter:Subscribe:Error' => '订阅所选通知时发生错误.',
+ 'UI:NotificationsCenter:Channel:OutOf:Text' => '%1$s / %2$s',
+ 'UI:NotificationsCenter:Advanced:Input:Label' => '%1$s: %2$s',
]);
diff --git a/dictionaries/ui/pages/preferences/zh_cn.dictionary.itop.preferences.php b/dictionaries/ui/pages/preferences/zh_cn.dictionary.itop.preferences.php
index 2ec082a1d6..d707657078 100644
--- a/dictionaries/ui/pages/preferences/zh_cn.dictionary.itop.preferences.php
+++ b/dictionaries/ui/pages/preferences/zh_cn.dictionary.itop.preferences.php
@@ -17,42 +17,43 @@
*
* You should have received a copy of the GNU Affero General Public License
*/
+
// Navigation menu
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'UI:Preferences:Title' => '首选项',
- 'UI:Preferences:UserInterface:Title' => '用户界面',
- 'UI:Preferences:General:Title' => '概况',
- 'UI:Preferences:General:Theme' => '主题',
- 'UI:Preferences:General:Theme:DefaultThemeLabel' => '%1$s (默认)',
- 'UI:Favorites:General:ShowSummaryCards' => '显示汇总卡片',
- 'UI:Favorites:General:ShowSummaryCards+' => '当鼠标移动到对象链接时, 显示此对象的简要汇总信息, 如果该类型支持',
- 'UI:Preferences:Lists:Title' => '列表',
- 'UI:Preferences:RichText:Title' => '富文本编辑器',
- 'UI:Preferences:RichText:ToolbarState' => '工具栏默认状态',
- 'UI:Preferences:RichText:ToolbarState:Expanded' => '展开',
- 'UI:Preferences:RichText:ToolbarState:Collapsed' => '折叠',
- 'UI:Preferences:ActivityPanel:Title' => '活动面板',
- 'UI:Preferences:ActivityPanel:EntryFormOpened' => '默认打开录入表单',
- 'UI:Preferences:ActivityPanel:EntryFormOpened+' => '在显示对象时是否打开录入表单. 如果不选择, 仍可以点击新建按钮打开录入表单',
- 'UI:Preferences:PersonalizeKeyboardShortcuts:Title' => '键盘快捷键',
- 'UI:Preferences:PersonalizeKeyboardShortcuts:Input:Hint' => '请输入键盘快捷键',
- 'UI:Preferences:PersonalizeKeyboardShortcuts:Button:Tooltip' => '录制键盘快捷键',
- 'UI:Preferences:PersonalizeKeyboardShortcuts:Button:Reset' => '重置',
- 'UI:Preferences:PersonalizeKeyboardShortcuts:Button:Reset:Tooltip' => '还原到默认的键盘快捷键',
- 'UI:Preferences:Tabs:Title' => '标签栏',
- 'UI:Preferences:Tabs:Layout:Label' => '布局',
- 'UI:Preferences:Tabs:Layout:Horizontal' => '水平',
- 'UI:Preferences:Tabs:Layout:Vertical' => '垂直',
- 'UI:Preferences:Tabs:Scrollable:Label' => '导航',
- 'UI:Preferences:Tabs:Scrollable:Classic' => '经典',
- 'UI:Preferences:Tabs:Scrollable:Scrollable' => '可滚动',
- 'UI:Preferences:General:Toasts' => 'Toast notifications position~~',
- 'UI:Preferences:General:Toasts:Bottom' => 'Bottom~~',
- 'UI:Preferences:General:Toasts:Top' => 'Top~~',
- 'UI:Preferences:ChooseAPlaceholder' => '用户的默认头像',
- 'UI:Preferences:ChooseAPlaceholder+' => '选择一个占位图片, 将在用户联系人没有设定头像图片时显示',
- 'UI:Preferences:ChooseAPlaceholder:Success:Message' => 'Your placeholder image has been successfully updated~~',
- 'UI:Preferences:Notifications' => 'Notifications~~',
- 'UI:Preferences:Notifications+' => 'Configure the notifications you want to receive on this page.~~',
+ 'UI:Preferences:Title' => '偏好设置',
+ 'UI:Preferences:UserInterface:Title' => '用户界面',
+ 'UI:Preferences:General:Title' => '概况',
+ 'UI:Preferences:General:Theme' => '主题',
+ 'UI:Preferences:General:Theme:DefaultThemeLabel' => '%1$s (默认)',
+ 'UI:Favorites:General:ShowSummaryCards' => '显示汇总卡片',
+ 'UI:Favorites:General:ShowSummaryCards+' => '当鼠标移动到对象链接时, 显示此对象的简要汇总信息, 如果该类型支持',
+ 'UI:Preferences:Lists:Title' => '列表',
+ 'UI:Preferences:RichText:Title' => '富文本编辑器',
+ 'UI:Preferences:RichText:ToolbarState' => '工具栏默认状态',
+ 'UI:Preferences:RichText:ToolbarState:Expanded' => '展开',
+ 'UI:Preferences:RichText:ToolbarState:Collapsed' => '折叠',
+ 'UI:Preferences:ActivityPanel:Title' => '侧面板',
+ 'UI:Preferences:ActivityPanel:EntryFormOpened' => '默认打开侧面板',
+ 'UI:Preferences:ActivityPanel:EntryFormOpened+' => '在显示对象时是否打开侧面板. 如果不选择, 仍可以点击按钮打开侧面板',
+ 'UI:Preferences:PersonalizeKeyboardShortcuts:Title' => '键盘快捷键',
+ 'UI:Preferences:PersonalizeKeyboardShortcuts:Input:Hint' => '请输入键盘快捷键',
+ 'UI:Preferences:PersonalizeKeyboardShortcuts:Button:Tooltip' => '录制键盘快捷键',
+ 'UI:Preferences:PersonalizeKeyboardShortcuts:Button:Reset' => '重置',
+ 'UI:Preferences:PersonalizeKeyboardShortcuts:Button:Reset:Tooltip' => '还原到默认的键盘快捷键',
+ 'UI:Preferences:Tabs:Title' => '标签栏',
+ 'UI:Preferences:Tabs:Layout:Label' => '布局',
+ 'UI:Preferences:Tabs:Layout:Horizontal' => '水平',
+ 'UI:Preferences:Tabs:Layout:Vertical' => '垂直',
+ 'UI:Preferences:Tabs:Scrollable:Label' => '导航',
+ 'UI:Preferences:Tabs:Scrollable:Classic' => '经典',
+ 'UI:Preferences:Tabs:Scrollable:Scrollable' => '可滚动',
+ 'UI:Preferences:General:Toasts' => '通知位置',
+ 'UI:Preferences:General:Toasts:Bottom' => '底部',
+ 'UI:Preferences:General:Toasts:Top' => '顶部',
+ 'UI:Preferences:ChooseAPlaceholder' => '用户的默认头像',
+ 'UI:Preferences:ChooseAPlaceholder+' => '请选择一个占位图片, 将在用户联系人没有设定头像图片时显示',
+ 'UI:Preferences:ChooseAPlaceholder:Success:Message' => '您的占位图片已成功更新',
+ 'UI:Preferences:Notifications' => '通知',
+ 'UI:Preferences:Notifications+' => '在 这里配置您想要收到的通知.',
]);
diff --git a/dictionaries/zh_cn.dictionary.itop.core.php b/dictionaries/zh_cn.dictionary.itop.core.php
index 91860e39d3..44a90a902c 100644
--- a/dictionaries/zh_cn.dictionary.itop.core.php
+++ b/dictionaries/zh_cn.dictionary.itop.core.php
@@ -4,52 +4,79 @@
* Localized data
*
* @copyright Copyright (C) 2010-2024 Combodo SAS
- * @license https://opensource.org/licenses/AGPL-3.0
+ * @license http://opensource.org/licenses/AGPL-3.0
*
- */
-/**
+ * This file is part of iTop.
*
+ * iTop is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * iTop is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with iTop. If not, see
*/
+
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Core:DeletedObjectLabel' => '%1s (已删除)',
'Core:DeletedObjectTip' => '对象已被删除于 %1$s (%2$s)',
+
'Core:UnknownObjectLabel' => '找不到对象 (类型: %1$s, 编号: %2$d)',
'Core:UnknownObjectTip' => '对象没有找到. 其可能已经被删除并且日志已经被清除.',
+
'Core:UniquenessDefaultError' => '唯一性规则 \'%1$s\' 错误',
'Core:CheckConsistencyError' => '一致性规则没有被遵守: %1$s',
'Core:CheckValueError' => '属性 \'%1$s\' (%2$s)的未知值: %3$s',
+
'Core:AttributeLinkedSet' => '对象数组',
'Core:AttributeLinkedSet+' => '任何相同类型或子类型的对象',
+
'Core:AttributeLinkedSetDuplicatesFound' => '字段 \'%1$s\' 内容重复: %2$s',
+
'Core:AttributeDashboard' => '仪表盘',
'Core:AttributeDashboard+' => '',
+
'Core:AttributePhoneNumber' => '电话号码',
'Core:AttributePhoneNumber+' => '',
+
'Core:AttributeObsolescenceDate' => '报废日期',
'Core:AttributeObsolescenceDate+' => '',
+
'Core:AttributeTagSet' => '清单',
'Core:AttributeTagSet+' => '',
'Core:AttributeSet:placeholder' => '请点击这里添加',
- 'Core:Placeholder:CannotBeResolved' => '(%1$s : cannot be resolved)~~',
+ 'Core:Placeholder:CannotBeResolved' => '(%1$s : 无法解析)',
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)',
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s来自%3$s)',
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s来自子类型',
+
'Core:AttributeCaseLog' => '日志',
'Core:AttributeCaseLog+' => '',
- 'Core:AttributeMetaEnum' => '计算枚举',
- 'Core:AttributeMetaEnum+' => '~~',
+
+ 'Core:AttributeMetaEnum' => '计算的数字',
+ 'Core:AttributeMetaEnum+' => '',
+
'Core:AttributeLinkedSetIndirect' => '对象数组 (N-N)',
'Core:AttributeLinkedSetIndirect+' => '相同类型的任何对象 [子类型]',
+
'Core:AttributeInteger' => '整数',
'Core:AttributeInteger+' => '整数(可以为负)',
+
'Core:AttributeDecimal' => '小数',
'Core:AttributeDecimal+' => '小数(可以为负)',
+
'Core:AttributeBoolean' => '布尔',
'Core:AttributeBoolean+' => '',
'Core:AttributeBoolean/Value:null' => '',
'Core:AttributeBoolean/Value:yes' => '是',
'Core:AttributeBoolean/Value:no' => '否',
- 'Core:AttributeArchiveFlag' => '是否归档',
+
+ 'Core:AttributeArchiveFlag' => '归档标识',
'Core:AttributeArchiveFlag/Value:yes' => '是',
'Core:AttributeArchiveFlag/Value:yes+' => '该对象仅在归档模式可见',
'Core:AttributeArchiveFlag/Value:no' => '否',
@@ -57,46 +84,63 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Core:AttributeArchiveFlag/Label+' => '',
'Core:AttributeArchiveDate/Label' => '归档日期',
'Core:AttributeArchiveDate/Label+' => '',
- 'Core:AttributeObsolescenceFlag' => '是否废弃',
+
+ 'Core:AttributeObsolescenceFlag' => '废弃标识',
'Core:AttributeObsolescenceFlag/Value:yes' => '是',
'Core:AttributeObsolescenceFlag/Value:yes+' => '该对象排除在影响分析中, 并且在搜索结果中隐藏',
'Core:AttributeObsolescenceFlag/Value:no' => '否',
- 'Core:AttributeObsolescenceFlag/Label' => '是否废弃',
+ 'Core:AttributeObsolescenceFlag/Label' => '废弃标识',
'Core:AttributeObsolescenceFlag/Label+' => '基于其他属性动态计算',
'Core:AttributeObsolescenceDate/Label' => '废弃时间',
'Core:AttributeObsolescenceDate/Label+' => '该对象被废弃的大概日期',
+
'Core:AttributeString' => '字符串',
'Core:AttributeString+' => '字符串',
+
'Core:AttributeClass' => '类',
'Core:AttributeClass+' => '',
+
'Core:AttributeApplicationLanguage' => '用户语言',
'Core:AttributeApplicationLanguage+' => '语言和国家/地区(EN US)',
+
'Core:AttributeFinalClass' => '类型 (自动)',
'Core:AttributeFinalClass+' => '对象真实的类型 (内核自动创建)',
+
'Core:AttributePassword' => '密码',
'Core:AttributePassword+' => '外部设备的密码',
+
'Core:AttributeEncryptedString' => '加密字符串',
'Core:AttributeEncryptedString+' => '使用本地密钥加密的字符串',
'Core:AttributeEncryptUnknownLibrary' => '未知的加密库 (%1$s)',
'Core:AttributeEncryptFailedToDecrypt' => '** 解密错误 **',
+
'Core:AttributeText' => '文本',
'Core:AttributeText+' => '多行字符串',
+
'Core:AttributeHTML' => 'HTML',
'Core:AttributeHTML+' => 'HTML字符串',
+
'Core:AttributeEmailAddress' => '邮箱地址',
'Core:AttributeEmailAddress+' => 'Email 地址',
+
'Core:AttributeIPAddress' => 'IP 地址',
'Core:AttributeIPAddress+' => 'IP 地址',
+
'Core:AttributeOQL' => 'OQL',
'Core:AttributeOQL+' => '对象查询语言表达式',
- 'Core:AttributeEnum' => '枚举',
- 'Core:AttributeEnum+' => '预定义的字符串列表',
+
+ 'Core:AttributeEnum' => '数字',
+ 'Core:AttributeEnum+' => '预定义的数字列表',
+
'Core:AttributeTemplateString' => '字符模板',
'Core:AttributeTemplateString+' => '包含占位符的字符串',
+
'Core:AttributeTemplateText' => '文本模板',
'Core:AttributeTemplateText+' => '包含占位符的文本',
+
'Core:AttributeTemplateHTML' => 'HTML模板',
'Core:AttributeTemplateHTML+' => '含有占位符的HTML',
+
'Core:AttributeDateTime' => '日期/时间',
'Core:AttributeDateTime+' => '日期和时间 (年-月-日 时:分:秒)',
'Core:AttributeDateTime?SmartSearch' => '
@@ -112,8 +156,9 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
[日期,日期]
-如果不写具体时间,则默认00:00:00
+如果省略时间,则默认为 00:00:00
',
+
'Core:AttributeDate' => '日期',
'Core:AttributeDate+' => '日期 (年-月-日)',
'Core:AttributeDate?SmartSearch' => '
@@ -128,34 +173,47 @@ Operators:
<日期
[日期,日期]
',
+
'Core:AttributeDeadline' => '截止日期',
'Core:AttributeDeadline+' => '日期, 显示与当前的相对时间',
+
'Core:AttributeExternalKey' => '外键',
- 'Core:AttributeExternalKey+' => '外部关联键',
- 'Core:AttributeHierarchicalKey' => '层级键',
- 'Core:AttributeHierarchicalKey+' => '关联到父级的外键',
+ 'Core:AttributeExternalKey+' => '外面(或外部)的键',
+
+ 'Core:AttributeHierarchicalKey' => 'Hierarchical Key~~',
+ 'Core:AttributeHierarchicalKey+' => 'External (or foreign) key to the parent~~',
+
'Core:AttributeExternalField' => '外部字段',
- 'Core:AttributeExternalField+' => '映射到外键的字段',
+ 'Core:AttributeExternalField+' => 'Field mapped to an external key~~',
+
'Core:AttributeURL' => 'URL',
'Core:AttributeURL+' => '绝对或相对的URL字符串',
+
'Core:AttributeBlob' => 'Blob',
'Core:AttributeBlob+' => '任何二进制内容(文档)',
+
'Core:AttributeOneWayPassword' => '单向密码',
'Core:AttributeOneWayPassword+' => '单向加密 (或哈希) 的密码',
+
'Core:AttributeTable' => '表',
'Core:AttributeTable+' => '带索引的二维数组',
+
'Core:AttributePropertySet' => '属性',
'Core:AttributePropertySet+' => '非类型化的属性列表 (名称和值)',
- 'Core:AttributeFriendlyName' => '通用名称',
+
+ 'Core:AttributeFriendlyName' => '昵称',
'Core:AttributeFriendlyName+' => '自动创建的属性; 显示名称基于多个属性计算',
+
'Core:FriendlyName-Label' => '全称',
'Core:FriendlyName-Description' => '全称',
+
'Core:AttributeTag' => '标签',
- 'Core:AttributeTag+' => '标签',
+ 'Core:AttributeTag+' => '',
+
'Core:Context=REST/JSON' => 'REST',
'Core:Context=Synchro' => '同步',
'Core:Context=Setup' => '安装向导',
- 'Core:Context=GUI:Console' => '命令行',
+ 'Core:Context=GUI:Console' => '终端',
'Core:Context=CRON' => '定时任务',
'Core:Context=GUI:Portal' => '门户',
]);
@@ -315,12 +373,12 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:EventNotification' => '通知事件',
'Class:EventNotification+' => '已发送通知的追踪',
'Class:EventNotification/Attribute:trigger_id' => '触发器',
- 'Class:EventNotification/Attribute:trigger_id+' => '用户账号',
- 'Class:EventNotification/Attribute:object_class' => 'Object class~~',
- 'Class:EventNotification/Attribute:object_class+' => 'Object class (Same as trigger)~~',
+ 'Class:EventNotification/Attribute:trigger_id+' => '账号',
+ 'Class:EventNotification/Attribute:object_class' => '对象类型',
+ 'Class:EventNotification/Attribute:object_class+' => '对象类型 (与触发器相同)',
'Class:EventNotification/Attribute:action_id' => '用户',
- 'Class:EventNotification/Attribute:action_id+' => '用户账号',
- 'Class:EventNotification/Attribute:object_id' => '对象编号',
+ 'Class:EventNotification/Attribute:action_id+' => '账号',
+ 'Class:EventNotification/Attribute:object_id' => '对象id',
'Class:EventNotification/Attribute:object_id+' => '对象编号 (类型由触发器定义?)',
]);
@@ -428,7 +486,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:EventNotificationNewsroom' => 'News sent~~',
+ 'Class:EventNotificationNewsroom' => '已发送的新闻',
'Class:EventNotificationNewsroom+' => '',
'Class:EventNotificationNewsroom/Attribute:title' => '标题',
'Class:EventNotificationNewsroom/Attribute:title+' => '',
@@ -456,6 +514,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:EventNotificationNewsroom/Attribute:read_date+' => '',
'Class:EventNotificationNewsroom/Attribute:contact_id' => '联系人',
'Class:EventNotificationNewsroom/Attribute:contact_id+' => '',
+ 'Core:EventNotificationNewsroom:ErrorNotificationNotSent' => '通知未发送',
+ 'Core:EventNotificationNewsroom:ErrorOnDBInsert' => '保存通知时发生错误',
]);
//
@@ -463,23 +523,23 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:Action' => '自定义操作',
- 'Class:Action+' => '用户定义的操作',
- 'Class:Action/ComplementaryName' => '%1$s: %2$s',
- 'Class:Action/Attribute:name' => '名称',
- 'Class:Action/Attribute:name+' => 'Any value that is meaningful to distinguish this action from the others',
- 'Class:Action/Attribute:description' => '描述',
- 'Class:Action/Attribute:description+' => 'A longer explanation about the purpose of this action. For information only.',
- 'Class:Action/Attribute:status' => '状态',
- 'Class:Action/Attribute:status+' => '是否正式环境?',
- 'Class:Action/Attribute:status/Value:test' => '正在测试',
- 'Class:Action/Attribute:status/Value:test+' => '',
- 'Class:Action/Attribute:status/Value:enabled' => '正式',
- 'Class:Action/Attribute:status/Value:enabled+' => '',
- 'Class:Action/Attribute:status/Value:disabled' => '停用',
+ 'Class:Action' => '自定义操作',
+ 'Class:Action+' => '用户定义的操作',
+ 'Class:Action/ComplementaryName' => '%1$s: %2$s',
+ 'Class:Action/Attribute:name' => '名称',
+ 'Class:Action/Attribute:name+' => 'Any value that is meaningful to distinguish this action from the others',
+ 'Class:Action/Attribute:description' => '描述',
+ 'Class:Action/Attribute:description+' => 'A longer explanation about the purpose of this action. For information only.',
+ 'Class:Action/Attribute:status' => '状态',
+ 'Class:Action/Attribute:status+' => '是否正式环境?',
+ 'Class:Action/Attribute:status/Value:test' => '正在测试',
+ 'Class:Action/Attribute:status/Value:test+' => '',
+ 'Class:Action/Attribute:status/Value:enabled' => '正式',
+ 'Class:Action/Attribute:status/Value:enabled+' => '',
+ 'Class:Action/Attribute:status/Value:disabled' => '停用',
'Class:Action/Attribute:status/Value:disabled+' => '',
'Class:Action/Attribute:trigger_list' => '相关的触发器',
- 'Class:Action/Attribute:trigger_list+' => '此操作关联的触发器',
+ 'Class:Action/Attribute:trigger_list+' => '此操作相关的触发器',
'Class:Action/Attribute:asynchronous' => 'Asynchronous~~',
'Class:Action/Attribute:asynchronous+' => 'Whether this action should be executed in the background or not~~',
'Class:Action/Attribute:asynchronous/Value:use_global_setting' => '使用全局设置',
@@ -499,10 +559,10 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:ActionNotification' => '通知',
- 'Class:ActionNotification+' => '通知 (抽象)',
+ 'Class:ActionNotification' => '通知操作',
+ 'Class:ActionNotification+' => '通知操作 (抽象)',
'Class:ActionNotification/Attribute:language' => '语言',
- 'Class:ActionNotification/Attribute:language+' => '',
+ 'Class:ActionNotification/Attribute:language+' => 'Language to use for placeholders ($xxx$) inside the message (state, importance, priority, etc)~~',
]);
//
@@ -510,15 +570,15 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkActionNotificationToContact' => 'Link ActionNotification / Contact~~',
+ 'Class:lnkActionNotificationToContact' => '链接 操作通知/联系人',
'Class:lnkActionNotificationToContact+' => 'Contact subscription to Notification Action~~',
- 'Class:lnkActionNotificationToContact/Attribute:contact_id' => 'Contact~~',
+ 'Class:lnkActionNotificationToContact/Attribute:contact_id' => '联系人',
'Class:lnkActionNotificationToContact/Attribute:contact_id+' => 'Contact who subscribed (or not) to the notification~~',
- 'Class:lnkActionNotificationToContact/Attribute:action_id' => 'Action~~',
+ 'Class:lnkActionNotificationToContact/Attribute:action_id' => '操作',
'Class:lnkActionNotificationToContact/Attribute:action_id+' => 'The notification that the contact received at least once, and to which he can subscribe or unsubscribe~~',
- 'Class:lnkActionNotificationToContact/Attribute:trigger_id' => 'Trigger~~',
+ 'Class:lnkActionNotificationToContact/Attribute:trigger_id' => '触发器',
'Class:lnkActionNotificationToContact/Attribute:trigger_id+' => 'The trigger that fired the notification~~',
- 'Class:lnkActionNotificationToContact/Attribute:subscribed' => 'Subscribed~~',
+ 'Class:lnkActionNotificationToContact/Attribute:subscribed' => '已订阅',
'Class:lnkActionNotificationToContact/Attribute:subscribed+' => 'If the contact unsubscribed (no) or is subscribed (yes and default) to the notification~~',
]);
@@ -527,41 +587,43 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:ActionEmail' => '邮件通知',
- 'Class:ActionEmail+' => '',
- 'Class:ActionEmail/Attribute:status+' => '此状态将决定提醒谁:
+ 'Class:ActionEmail' => '邮件通知',
+ 'Class:ActionEmail+' => '',
+ 'Class:ActionEmail/Attribute:status+' => '此状态将决定提醒谁:
- 测试中: 仅测试者,
- 生产的: 所有人 (收件人, 抄送和密送)
- 禁用的: 没有人',
- 'Class:ActionEmail/Attribute:status/Value:test+' => '仅测试收件人会被通知',
- 'Class:ActionEmail/Attribute:status/Value:enabled+' => '通知所有人, 包含抄送和秘抄',
- 'Class:ActionEmail/Attribute:status/Value:disabled+' => '不发送邮件通知',
- 'Class:ActionEmail/Attribute:test_recipient' => '测试收件人',
- 'Class:ActionEmail/Attribute:test_recipient+' => '通知为测试中时将使用此邮件地址, 而不是收件人, 抄送和密送',
- 'Class:ActionEmail/Attribute:from' => '发件人 (邮箱)',
- 'Class:ActionEmail/Attribute:from+' => '固定的邮箱地址或者类似$this->agent_id->email$的占位符.
+ 'Class:ActionEmail/Attribute:status/Value:test+' => '仅测试收件人会被通知',
+ 'Class:ActionEmail/Attribute:status/Value:enabled+' => '通知所有人, 包含抄送和秘抄',
+ 'Class:ActionEmail/Attribute:status/Value:disabled+' => '不发送邮件通知',
+ 'Class:ActionEmail/Attribute:test_recipient' => '测试收件人',
+ 'Class:ActionEmail/Attribute:test_recipient+' => '通知为测试中时将使用此邮件地址, 而不是收件人, 抄送和密送',
+ 'Class:ActionEmail/Attribute:from' => '发件人 (邮箱)',
+ 'Class:ActionEmail/Attribute:from+' => '固定的邮箱地址或者类似$this->agent_id->email$的占位符.
有些邮件服务器可能不接收占位符.',
- 'Class:ActionEmail/Attribute:from_label' => '发件人 (显示名)',
- 'Class:ActionEmail/Attribute:from_label+' => '固定的显示名或者类似 $this->agent_id->friendlyname$ 的占位符',
- 'Class:ActionEmail/Attribute:reply_to' => '回复至 (邮箱)',
- 'Class:ActionEmail/Attribute:reply_to+' => '固定的邮箱地址或者类似$this->team_id->email$的占位符.
+ 'Class:ActionEmail/Attribute:from_label' => '发件人 (显示名)',
+ 'Class:ActionEmail/Attribute:from_label+' => '固定的显示名或者类似 $this->agent_id->friendlyname$ 的占位符',
+ 'Class:ActionEmail/Attribute:reply_to' => '回复至 (邮箱)',
+ 'Class:ActionEmail/Attribute:reply_to+' => '固定的邮箱地址或者类似$this->team_id->email$的占位符.
如果忽略则使用发件人 (邮箱).',
- 'Class:ActionEmail/Attribute:reply_to_label' => '回复至 (显示名)',
- 'Class:ActionEmail/Attribute:reply_to_label+' => '固定的显示名或者类似$this->team_id->friendlyname$的占位符.
- 如果忽略则使用发件人 (显示名).',
- 'Class:ActionEmail/Attribute:to' => '收件人',
- 'Class:ActionEmail/Attribute:to+' => '收件人: 返回含有邮箱字段对象的OQL查询.
+ 'Class:ActionEmail/Attribute:reply_to_label' => '回复至 (显示名)',
+ 'Class:ActionEmail/Attribute:reply_to_label+' => '固定的显示名或者类似$this->team_id->friendlyname$的占位符.
+如果忽略则使用发件人 (显示名).',
+ 'Class:ActionEmail/Attribute:to' => '收件人',
+ 'Class:ActionEmail/Attribute:to+' => 'To: an OQL query returning objects having an email field.
+While editing, click on the magnifier to get pertinent examples.
+You can use in the OQL :this->attribute_code with an attribute code of the object which triggered the Notification. Then test your OQL syntax using the play icon.~~',
+ 'Class:ActionEmail/Attribute:cc' => '抄送',
+ 'Class:ActionEmail/Attribute:cc+' => 'Carbon Copy: an OQL query returning objects having an email field.
+While editing, click on the magnifier to get pertinent examples.
+You can use in the OQL :this->attribute_code with an attribute code of the object which triggered the Notification. Then test your OQL syntax using the play icon.~~',
+ 'Class:ActionEmail/Attribute:bcc' => '密抄',
+ 'Class:ActionEmail/Attribute:bcc+' => '密送: 返回含有邮箱字段对象的OQL查询.
编辑时可点击放大镜图标获取参考示例',
- 'Class:ActionEmail/Attribute:cc' => '抄送',
- 'Class:ActionEmail/Attribute:cc+' => '抄送: 返回含有邮箱字段对象的OQL查询.
-编辑时可点击放大镜图标获取参考示例',
- 'Class:ActionEmail/Attribute:bcc' => '密抄',
- 'Class:ActionEmail/Attribute:bcc+' => '密送: 返回含有邮箱字段对象的OQL查询.
-编辑时可点击放大镜图标获取参考示例',
- 'Class:ActionEmail/Attribute:subject' => '主题',
- 'Class:ActionEmail/Attribute:subject+' => '邮件主题. 可包含类似$this->attribute_code$的占位符',
- 'Class:ActionEmail/Attribute:body' => '正文',
- 'Class:ActionEmail/Attribute:body+' => '邮件正文. 可包含以下占位符:
+ 'Class:ActionEmail/Attribute:subject' => '主题',
+ 'Class:ActionEmail/Attribute:subject+' => '邮件主题. 可包含类似$this->attribute_code$的占位符',
+ 'Class:ActionEmail/Attribute:body' => '正文',
+ 'Class:ActionEmail/Attribute:body+' => '邮件正文. 可包含以下占位符:
- $this->attribute_code$ 触发通知的对象的任何属性,
- $this->html(attribute_code)$ 内容同上但是使用html格式,
- $this->hyperlink()$ 触发通知的对象的控制台链接,
@@ -569,30 +631,30 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
- $this->head_html(case_log_attribute)$ 事例日志中的最新一条html格式的回复,
- $this->attribute_external_key->attribute$ 任何远程属性的递归语法,
- $current_contact->attribute$ 触发通知的用户的属性',
- 'Class:ActionEmail/Attribute:importance' => '重要性',
- 'Class:ActionEmail/Attribute:importance+' => '生成邮件的重要性标签设置',
- 'Class:ActionEmail/Attribute:importance/Value:low' => '低',
- 'Class:ActionEmail/Attribute:importance/Value:low+' => '',
- 'Class:ActionEmail/Attribute:importance/Value:normal' => '普通',
- 'Class:ActionEmail/Attribute:importance/Value:normal+' => '',
- 'Class:ActionEmail/Attribute:importance/Value:high' => '高',
- 'Class:ActionEmail/Attribute:importance/Value:high+' => '',
- 'Class:ActionEmail/Attribute:language' => '语言',
- 'Class:ActionEmail/Attribute:language+' => '在邮件中 (状态, 重要性, 优先级, 等等) 所使用的占位符 ($xxx$) 的语言',
- 'Class:ActionEmail/Attribute:html_template' => 'HTML模板',
- 'Class:ActionEmail/Attribute:html_template+' => '绑定在以下 \'正文\' 属性内容上的可选HTML模板, 用于定制邮件布局 (在模板中, \'正文\' 属性的内容将被占位符 $content$ 替换)',
- 'Class:ActionEmail/Attribute:ignore_notify' => '忽略通知标记',
- 'Class:ActionEmail/Attribute:ignore_notify+' => '如果设置为 \'是\' 则联系人的 \'通知\' 标记将不生效.',
- 'Class:ActionEmail/Attribute:ignore_notify/Value:no' => '否',
- 'Class:ActionEmail/Attribute:ignore_notify/Value:yes' => '是',
- 'ActionEmail:main' => '消息',
- 'ActionEmail:trigger' => '触发器',
- 'ActionEmail:recipients' => '联系人',
- 'ActionEmail:preview_tab' => '预览',
- 'ActionEmail:preview_tab+' => '预览邮件模板',
- 'ActionEmail:preview_warning' => '实际收到的邮件在客户端中可能与当前在浏览器中的预览有所不同.',
- 'ActionEmail:preview_more_info' => '若需更多不同邮件客户端支持的CSS特性信息, 请参阅%1$s',
- 'ActionEmail:content_placeholder_missing' => '标识符 "%1$s" 在HTML中不存在. 字段 "%2$s" 的内容将不会包含在生成的邮件中.',
+ 'Class:ActionEmail/Attribute:importance' => '重要性',
+ 'Class:ActionEmail/Attribute:importance+' => '生成邮件的重要性标签设置',
+ 'Class:ActionEmail/Attribute:importance/Value:low' => '低',
+ 'Class:ActionEmail/Attribute:importance/Value:low+' => '',
+ 'Class:ActionEmail/Attribute:importance/Value:normal' => '普通',
+ 'Class:ActionEmail/Attribute:importance/Value:normal+' => '',
+ 'Class:ActionEmail/Attribute:importance/Value:high' => '高',
+ 'Class:ActionEmail/Attribute:importance/Value:high+' => '',
+ 'Class:ActionEmail/Attribute:language' => '语言',
+ 'Class:ActionEmail/Attribute:language+' => '在邮件中 (状态, 重要性, 优先级, 等等) 所使用的占位符 ($xxx$) 的语言',
+ 'Class:ActionEmail/Attribute:html_template' => 'HTML模板',
+ 'Class:ActionEmail/Attribute:html_template+' => '绑定在以下 \'正文\' 属性内容上的可选HTML模板, 用于定制邮件布局 (在模板中, \'正文\' 属性的内容将被占位符 $content$ 替换)',
+ 'Class:ActionEmail/Attribute:ignore_notify' => '忽略通知标记',
+ 'Class:ActionEmail/Attribute:ignore_notify+' => '如果设置为 \'是\' 则联系人的 \'通知\' 标记将不生效.',
+ 'Class:ActionEmail/Attribute:ignore_notify/Value:no' => '否',
+ 'Class:ActionEmail/Attribute:ignore_notify/Value:yes' => '是',
+ 'ActionEmail:main' => '消息',
+ 'ActionEmail:trigger' => '触发器',
+ 'ActionEmail:recipients' => '联系人',
+ 'ActionEmail:preview_tab' => '预览',
+ 'ActionEmail:preview_tab+' => '预览邮件模板',
+ 'ActionEmail:preview_warning' => '实际收到的邮件在客户端中可能与当前在浏览器中的预览有所不同.',
+ 'ActionEmail:preview_more_info' => '若需更多不同邮件客户端支持的CSS特性信息, 请参阅%1$s',
+ 'ActionEmail:content_placeholder_missing' => '标识符 "%1$s" 在HTML中不存在. 字段 "%2$s" 的内容将不会包含在生成的邮件中.',
]);
//
@@ -603,7 +665,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'ActionNewsroom:trigger' => '触发器',
'ActionNewsroom:content' => '消息',
'ActionNewsroom:settings' => '设置',
- 'Class:ActionNewsroom' => ITOP_APPLICATION_SHORT.'通知',
+ 'Class:ActionNewsroom' => '新闻室的通知',
'Class:ActionNewsroom+' => '',
'Class:ActionNewsroom/Attribute:title' => '标题',
'Class:ActionNewsroom/Attribute:title+' => 'Title of the news. Can contain placeholders like $this->attribute_code$~~',
@@ -620,8 +682,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
- Otherwise, the application compact logo will be used~~',
'Class:ActionNewsroom/Attribute:priority' => '优先级',
'Class:ActionNewsroom/Attribute:priority+' => 'News will be ordered by decreasing priority, when displayed in the Newsroom popup',
- 'Class:ActionNewsroom/Attribute:priority/Value:1' => '严峻',
- 'Class:ActionNewsroom/Attribute:priority/Value:1+' => '严峻',
+ 'Class:ActionNewsroom/Attribute:priority/Value:1' => '严重',
+ 'Class:ActionNewsroom/Attribute:priority/Value:1+' => '严重',
'Class:ActionNewsroom/Attribute:priority/Value:2' => '紧急',
'Class:ActionNewsroom/Attribute:priority/Value:2+' => '紧急',
'Class:ActionNewsroom/Attribute:priority/Value:3' => '重要',
@@ -641,21 +703,21 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:Trigger' => '触发器',
- 'Class:Trigger+' => '自定义事件处理',
- 'Class:Trigger/ComplementaryName' => '%1$s, %2$s',
- 'Class:Trigger/Attribute:description' => '描述',
- 'Class:Trigger/Attribute:description+' => '简短描述',
- 'Class:Trigger/Attribute:action_list' => '触发的操作',
- 'Class:Trigger/Attribute:action_list+' => '此触发器激活后要执行的操作',
- 'Class:Trigger/Attribute:finalclass' => '触发器类型',
- 'Class:Trigger/Attribute:finalclass+' => '根本属性的名称',
- 'Class:Trigger/Attribute:context' => '上下文',
- 'Class:Trigger/Attribute:context+' => '允许此触发器开启的上下文',
- 'Class:Trigger/Attribute:complement' => '其它信息',
- 'Class:Trigger/Attribute:complement+' => '此触发器提供的更多信息, 使用英文',
- 'Class:Trigger/Attribute:subscription_policy' => 'Subscription policy~~',
- 'Class:Trigger/Attribute:subscription_policy+' => 'Allows users to unsubscribe from the trigger~~',
+ 'Class:Trigger' => '触发器',
+ 'Class:Trigger+' => '自定义事件处理',
+ 'Class:Trigger/ComplementaryName' => '%1$s, %2$s',
+ 'Class:Trigger/Attribute:description' => '描述',
+ 'Class:Trigger/Attribute:description+' => '简短描述',
+ 'Class:Trigger/Attribute:action_list' => '触发的操作',
+ 'Class:Trigger/Attribute:action_list+' => '此触发器激活后要执行的操作',
+ 'Class:Trigger/Attribute:finalclass' => '触发器类型',
+ 'Class:Trigger/Attribute:finalclass+' => '根本属性的名称',
+ 'Class:Trigger/Attribute:context' => '上下文',
+ 'Class:Trigger/Attribute:context+' => '允许此触发器开启的上下文',
+ 'Class:Trigger/Attribute:complement' => '其它信息',
+ 'Class:Trigger/Attribute:complement+' => '此触发器提供的更多信息, 使用英文',
+ 'Class:Trigger/Attribute:subscription_policy' => 'Subscription policy~~',
+ 'Class:Trigger/Attribute:subscription_policy+' => 'Allows users to unsubscribe from the trigger~~',
'Class:Trigger/Attribute:subscription_policy/Value:allow_no_channel' => 'Allow complete unsubscription~~',
'Class:Trigger/Attribute:subscription_policy/Value:force_at_least_one_channel' => 'Force at least one channel (News or Email)~~',
'Class:Trigger/Attribute:subscription_policy/Value:force_all_channels' => 'Deny unsubscription~~',
@@ -666,14 +728,14 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:TriggerOnObject' => '触发器 (类型依赖的)',
- 'Class:TriggerOnObject+' => '在指定类型对象上的触发器',
- 'Class:TriggerOnObject/Attribute:target_class' => '目标类型',
- 'Class:TriggerOnObject/Attribute:target_class+' => '',
- 'Class:TriggerOnObject/Attribute:filter' => '筛选器',
- 'Class:TriggerOnObject/Attribute:filter+' => '限定将激活触发器的对象 (目标类型的)',
- 'TriggerOnObject:WrongFilterQuery' => '错误的筛选查询: %1$s',
- 'TriggerOnObject:WrongFilterClass' => '筛选查询返回的对象必须是类型 "%1$s"',
+ 'Class:TriggerOnObject' => '触发器 (类型依赖的)',
+ 'Class:TriggerOnObject+' => '在指定类型对象上的触发器',
+ 'Class:TriggerOnObject/Attribute:target_class' => '目标类型',
+ 'Class:TriggerOnObject/Attribute:target_class+' => 'Objects in this class will activate the trigger~~',
+ 'Class:TriggerOnObject/Attribute:filter' => '筛选器',
+ 'Class:TriggerOnObject/Attribute:filter+' => '限定将激活触发器的对象 (目标类型的)',
+ 'TriggerOnObject:WrongFilterQuery' => '错误的筛选查询: %1$s',
+ 'TriggerOnObject:WrongFilterClass' => '筛选查询返回的对象必须是类型 "%1$s"',
]);
//
@@ -681,7 +743,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:TriggerOnPortalUpdate' => '触发器 (工单更新时)',
+ 'Class:TriggerOnPortalUpdate' => '触发器 (工单被更新时)',
'Class:TriggerOnPortalUpdate+' => '终端用户更新工单时触发',
]);
@@ -719,7 +781,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:TriggerOnObjectCreate' => '触发器 (对象创建时)',
+ 'Class:TriggerOnObjectCreate' => '触发器 (对象被创建时)',
'Class:TriggerOnObjectCreate+' => '对象创建时触发',
]);
@@ -728,7 +790,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:TriggerOnObjectDelete' => '触发器 (对象删除时)',
+ 'Class:TriggerOnObjectDelete' => '触发器 (对象被删除时)',
'Class:TriggerOnObjectDelete+' => '指定类型或子类型对象删除时的触发器',
]);
@@ -737,7 +799,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:TriggerOnObjectUpdate' => '触发器 (对象更新时)',
+ 'Class:TriggerOnObjectUpdate' => '触发器 (对象被更新时)',
'Class:TriggerOnObjectUpdate+' => '指定类型或子类型对象更新时的触发器',
'Class:TriggerOnObjectUpdate/Attribute:filter+' => 'This filter is computed after the object update in database. It restricts the objects which can trigger the actions~~',
'Class:TriggerOnObjectUpdate/Attribute:target_attcodes' => '目标字段',
@@ -749,7 +811,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:TriggerOnObjectMention' => '触发器 (对象提及时)',
+ 'Class:TriggerOnObjectMention' => '触发器 (对象被提及时)',
'Class:TriggerOnObjectMention+' => '指定类型或子类型对象在属性日志中提及 (@xxx) 时的触发器',
'Class:TriggerOnObjectMention/Attribute:mentioned_filter' => '提及筛选',
'Class:TriggerOnObjectMention/Attribute:mentioned_filter+' => '限丁将激活此触发器的提及对象. 如果为空则任何类的提及对象将激活此触发器.',
@@ -760,7 +822,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:TriggerOnAttributeBlobDownload' => '触发器 (对象文档下载时)',
+ 'Class:TriggerOnAttributeBlobDownload' => '触发器 (对象文档被下载时)',
'Class:TriggerOnAttributeBlobDownload+' => '指定类型或子类型对象的文档下载时的触发器',
'Class:TriggerOnAttributeBlobDownload/Attribute:target_attcodes' => '目标字段',
'Class:TriggerOnAttributeBlobDownload/Attribute:target_attcodes+' => '',
@@ -784,8 +846,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkTriggerAction' => '操作/触发器',
- 'Class:lnkTriggerAction+' => '关联触发器和操作',
+ 'Class:lnkTriggerAction' => '链接 操作/触发器',
+ 'Class:lnkTriggerAction+' => '链接触发器和操作',
'Class:lnkTriggerAction/Attribute:action_id' => '操作',
'Class:lnkTriggerAction/Attribute:action_id+' => '要执行的操作',
'Class:lnkTriggerAction/Attribute:action_name' => '操作',
@@ -870,6 +932,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SynchroDataSource/Attribute:user_delete_policy/Value:administrators' => '仅管理员',
'Class:SynchroDataSource/Attribute:user_delete_policy/Value:everybody' => '所有允许删除此类型对象的用户',
'Class:SynchroDataSource/Attribute:user_delete_policy/Value:nobody' => '没有人',
+
'SynchroDataSource:Description' => '描述',
'SynchroDataSource:Reconciliation' => '搜索 & 使一致',
'SynchroDataSource:Deletion' => '删除规则',
@@ -996,7 +1059,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SynchroLog/Attribute:stats_nb_obj_new_unchanged' => '未更改对象数量',
'Class:SynchroLog/Attribute:last_error' => '最新错误',
'Class:SynchroLog/Attribute:traces' => '跟踪',
- 'Class:SynchroReplica' => '同步复制',
+ 'Class:SynchroReplica' => '同步副本',
'Class:SynchroReplica/Attribute:sync_source_id' => '同步数据源',
'Class:SynchroReplica/Attribute:dest_id' => '目标对象 (编号)',
'Class:SynchroReplica/Attribute:dest_class' => '目标类型',
@@ -1012,20 +1075,58 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:SynchroReplica/Attribute:status_last_warning' => '告警',
'Class:SynchroReplica/Attribute:info_creation_date' => '创建日期',
'Class:SynchroReplica/Attribute:info_last_modified' => '最后修改日期',
+ 'Class:SynchroReplica/Action:delete+' => 'delete replica~~',
+ 'Class:SynchroReplica/Action:unlink' => 'Unlink~~',
+ 'Class:SynchroReplica/Action:unlink+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro' => 'Unlink & Synchro~~',
+ 'Class:SynchroReplica/Action:unlinksynchro+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro' => 'Synchro~~',
+ 'Class:SynchroReplica/Action:synchro+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete' => 'Allow delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:allowdelete+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete' => 'Deny delete of object linked to this synchro replica~~',
+ 'Class:SynchroReplica/Action:denydelete+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'Class:SynchroReplica/Action:unlink_all' => 'Unlink Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlink_all+' => 'Unlink replica with destination object~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:unlinksynchro_all+' => 'Unlink replica with destination object and execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:synchro_all' => 'Synchronize Synchro Replica objects~~',
+ 'Class:SynchroReplica/Action:synchro_all+' => 'Execute synchronization with this replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:allowdelete_all+' => 'Object linked to a deleted replica is deleted~~',
+ 'Class:SynchroReplica/Action:denydelete_all' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'Class:SynchroReplica/Action:denydelete_all+' => 'Object linked to a deleted replica is not deleted~~',
+
+ 'UI:UnlinkAllTabTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkAllPageTitle' => 'Unlink Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllTabTitle' => 'Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:UnlinkSynchroAllPageTitle' => ' Unlink & Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllTabTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:SynchroAllPageTitle' => 'Synchronize Synchro Replica objects~~',
+ 'UI:AllowDeleteAllTabTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:AllowDeleteAllPageTitle' => 'Allow delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllTabTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+ 'UI:DenyDeleteAllPageTitle' => 'Deny delete of objects linked to Synchro Replica~~',
+
'Class:appUserPreferences' => '用户偏好',
'Class:appUserPreferences/Attribute:userid' => '用户',
- 'Class:appUserPreferences/Attribute:preferences' => '首选项',
+ 'Class:appUserPreferences/Attribute:preferences' => '偏好设置',
'Core:ExecProcess:Code1' => '命令错误或命令执行出错 (例如错误的脚本名称)',
'Core:ExecProcess:Code255' => 'PHP错误 (解析, 或运行时)',
+
+ // Attribute Duration
'Core:Duration_Seconds' => '%1$ds',
- 'Core:EventNotificationNewsroom:ErrorNotificationNotSent' => 'Notification not sent~~',
- 'Core:EventNotificationNewsroom:ErrorOnDBInsert' => 'An error occurred while saving the notification~~',
'Core:Duration_Minutes_Seconds' => '%1$dmin %2$ds',
'Core:Duration_Hours_Minutes_Seconds' => '%1$dh %2$dmin %3$ds',
'Core:Duration_Days_Hours_Minutes_Seconds' => '%1$sd %2$dh %3$dmin %4$ds',
+
+ // Explain working time computing
'Core:ExplainWTC:ElapsedTime' => '耗时 (储存为 "%1$s")',
'Core:ExplainWTC:StopWatch-TimeSpent' => '在 "%1$s" 上消耗的时间',
'Core:ExplainWTC:StopWatch-Deadline' => '"%1$s" 的期限截止于%2$d%%',
+
+ // Bulk export
'Core:BulkExport:MissingParameter_Param' => '缺少参数 "%1$s"',
'Core:BulkExport:InvalidParameter_Query' => '参数 "query" 的值无效. 在查询薄中没有找到对应编号: "%1$s" 的记录.',
'Core:BulkExport:ExportFormatPrompt' => '导出格式:',
@@ -1072,7 +1173,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Core:BulkExportCanRunNonInteractive' => '点击这里运行非交互式导出.',
'Core:BulkExportLegacyExport' => '点击这里进入旧版导出.',
'Core:BulkExport:XLSXOptions' => 'Excel 选项',
- 'Core:BulkExport:TextFormat' => '文本中包含一些HTML 标记',
+ 'Core:BulkExport:TextFormat' => '文本中包含一些 HTML 标签',
'Core:BulkExport:DateTimeFormat' => '日期和时间格式',
'Core:BulkExport:DateTimeFormatDefault_Example' => '默认格式 (%1$s), e.g. %2$s',
'Core:BulkExport:DateTimeFormatCustom_Format' => '自定义格式: %1$s',
@@ -1095,7 +1196,6 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Core:Validator:Mandatory' => '这里必填',
'Core:Validator:MustBeInteger' => '必须是整数',
'Core:Validator:MustSelectOne' => '请选择',
- 'INTERNAL:JQuery-DatePicker:LangCode' => 'zh-CN',
]);
//
@@ -1103,7 +1203,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:TagSetFieldData' => '类型%1$s的%2$s',
- 'Class:TagSetFieldData+' => '~~',
+ 'Class:TagSetFieldData+' => '',
+
'Class:TagSetFieldData/Attribute:code' => '代码',
'Class:TagSetFieldData/Attribute:code+' => '内部代码. 必须至少包含3个数字或字母',
'Class:TagSetFieldData/Attribute:label' => '标签',
@@ -1113,6 +1214,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:TagSetFieldData/Attribute:finalclass' => '标签类型',
'Class:TagSetFieldData/Attribute:obj_class' => '对象类型',
'Class:TagSetFieldData/Attribute:obj_attcode' => '字段编码',
+
'Core:TagSetFieldData:ErrorDeleteUsedTag' => '已使用的标签无法删除',
'Core:TagSetFieldData:ErrorDuplicateTagCodeOrLabel' => '标签编码或名称必须唯一',
'Core:TagSetFieldData:ErrorTagCodeSyntax' => '标签编码必须介于3到%1$d个字符, 以字母开头.',
@@ -1130,7 +1232,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:DBProperty' => '数据库属性',
- 'Class:DBProperty+' => '~~',
+ 'Class:DBProperty+' => '',
'Class:DBProperty/Attribute:name' => '名称',
'Class:DBProperty/Attribute:name+' => '',
'Class:DBProperty/Attribute:description' => '描述',
@@ -1238,3 +1340,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:ResourceSystemMenu' => '资源系统菜单',
'Class:ResourceSystemMenu+' => '',
]);
+
+// additional translation for zh_cn
+Dict::Add('ZH CN', 'Chinese', '简体中文', [
+ 'INTERNAL:JQuery-DatePicker:LangCode' => 'zh-CN',
+]);
diff --git a/dictionaries/zh_cn.dictionary.itop.ui.php b/dictionaries/zh_cn.dictionary.itop.ui.php
index c3ba360bf5..5edece91ed 100644
--- a/dictionaries/zh_cn.dictionary.itop.ui.php
+++ b/dictionaries/zh_cn.dictionary.itop.ui.php
@@ -1,33 +1,42 @@
'审计类别',
- 'Class:AuditCategory+' => '审计类别规定了需要被审计的对象的范围.
+ 'Class:AuditCategory' => '审计类别',
+ 'Class:AuditCategory+' => '审计类别规定了需要被审计的对象的范围.
其组合了用于此范围内对象的所有审计规则',
- 'Class:AuditCategory/Attribute:name' => '类别',
- 'Class:AuditCategory/Attribute:name+' => '类别简称',
- 'Class:AuditCategory/Attribute:description' => '审计类别描述',
- 'Class:AuditCategory/Attribute:description+' => '此审计类别的详细描述',
- 'Class:AuditCategory/Attribute:definition_set' => '定义',
- 'Class:AuditCategory/Attribute:definition_set+' => '定义用于审计的对象的OQL表达式',
- 'Class:AuditCategory/Attribute:rules_list' => '审计规则',
- 'Class:AuditCategory/Attribute:rules_list+' => '此类别的审计规则',
- 'Class:AuditCategory/Attribute:ok_error_tolerance' => '报警阈值 (正常)',
- 'Class:AuditCategory/Attribute:ok_error_tolerance+' => '结果仍然显示为正常 (绿色) 的可允许的最大无效对象比例',
- 'Class:AuditCategory/Attribute:warning_error_tolerance' => '错误阈值 (警告)',
+ 'Class:AuditCategory/Attribute:name' => '类别',
+ 'Class:AuditCategory/Attribute:name+' => '类别简称',
+ 'Class:AuditCategory/Attribute:description' => '审计类别描述',
+ 'Class:AuditCategory/Attribute:description+' => '此审计类别的详细描述',
+ 'Class:AuditCategory/Attribute:definition_set' => '定义',
+ 'Class:AuditCategory/Attribute:definition_set+' => '定义用于审计的对象的OQL表达式',
+ 'Class:AuditCategory/Attribute:rules_list' => '审计规则',
+ 'Class:AuditCategory/Attribute:rules_list+' => '此类别的审计规则',
+ 'Class:AuditCategory/Attribute:ok_error_tolerance' => '报警阈值 (正常)',
+ 'Class:AuditCategory/Attribute:ok_error_tolerance+' => '结果仍然显示为正常 (绿色) 的可允许的最大无效对象比例',
+ 'Class:AuditCategory/Attribute:warning_error_tolerance' => '错误阈值 (警告)',
'Class:AuditCategory/Attribute:warning_error_tolerance+' => '结果仍然显示为警告 (橙色) 的可允许的最大无效对象比例',
- 'Class:AuditCategory/Attribute:domains_list' => '审计域',
- 'Class:AuditCategory/Attribute:domains_list+' => '关联此类别的审计域列表',
+ 'Class:AuditCategory/Attribute:domains_list' => '审计域',
+ 'Class:AuditCategory/Attribute:domains_list+' => '此类别相关的审计域列表',
]);
//
@@ -35,29 +44,31 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:AuditRule' => '审计规则',
- 'Class:AuditRule+' => '一条审计规则对应审计类别中的一项检查.
+ 'Class:AuditRule' => '审计规则',
+ 'Class:AuditRule+' => '一条审计规则对应审计类别中的一项检查.
其应用于审计规则定义的对象范围',
- 'Class:AuditRule/Attribute:name' => '名称',
- 'Class:AuditRule/Attribute:name+' => '规则名称',
- 'Class:AuditRule/Attribute:description' => '描述',
- 'Class:AuditRule/Attribute:description+' => '检查什么? 如何修复? 谁去做? ...',
- 'Class:AuditRule/Attribute:process' => 'Correction process~~',
- 'Class:AuditRule/Attribute:process+' => 'How should it be fixed? Who should do it? ...~~',
- 'Class:AuditRule/Attribute:query' => '要运行的查询',
- 'Class:AuditRule/Attribute:query+' => '要运行的OQL表达式',
- 'Class:AuditRule/Attribute:valid_flag' => '是否有效?',
- 'Class:AuditRule/Attribute:valid_flag+' => '若规则返回有效对象则True, 否则False',
- 'Class:AuditRule/Attribute:valid_flag/Value:true' => 'Valid objects~~',
- 'Class:AuditRule/Attribute:valid_flag/Value:true+' => 'Then objects in error are those part of the scope and not in the list of valid objects~~',
- 'Class:AuditRule/Attribute:valid_flag/Value:false' => 'Invalid objects~~',
+ 'Class:AuditRule/Attribute:name' => '名称',
+ 'Class:AuditRule/Attribute:name+' => '规则名称',
+ 'Class:AuditRule/Attribute:description' => '描述',
+ 'Class:AuditRule/Attribute:description+' => '检查什么? 如何修复? 谁去做? ...',
+ 'Class:AuditRule/Attribute:process' => 'Correction process~~',
+ 'Class:AuditRule/Attribute:process+' => 'How should it be fixed? Who should do it? ...~~',
+ 'Class:AuditRule/Attribute:query' => '要运行的查询',
+ 'Class:AuditRule/Attribute:query+' => '要运行的OQL表达式',
+ 'Class:AuditRule/Attribute:valid_flag' => '返回的对象:',
+ 'Class:AuditRule/Attribute:valid_flag+' => 'Does the query to run returns valid or invalid objects?
+"Valid objects": then objects in error are those part of the scope and not in the list of valid objects,
+"Invalid objects": then objects in error are the invalid objects which are part of the scope',
+ 'Class:AuditRule/Attribute:valid_flag/Value:true' => '有效对象',
+ 'Class:AuditRule/Attribute:valid_flag/Value:true+' => 'Then objects in error are those part of the scope and not in the list of valid objects~~',
+ 'Class:AuditRule/Attribute:valid_flag/Value:false' => '无效对象',
'Class:AuditRule/Attribute:valid_flag/Value:false+' => 'Then objects in error are the invalid objects which are part of the scope~~',
- 'Class:AuditRule/Attribute:category_id' => '类别',
- 'Class:AuditRule/Attribute:category_id+' => '该规则对应的类别',
- 'Class:AuditRule/Attribute:category_name' => '类别',
- 'Class:AuditRule/Attribute:category_name+' => '该规则对应的类名称',
- 'Class:AuditRule/Attribute:contact_id' => 'Owner~~',
- 'Class:AuditRule/Attribute:contact_id+' => 'Team or person in charge of fixing the errors detected by this rule~~',
+ 'Class:AuditRule/Attribute:category_id' => '类别',
+ 'Class:AuditRule/Attribute:category_id+' => '该规则对应的类别',
+ 'Class:AuditRule/Attribute:category_name' => '类别名称',
+ 'Class:AuditRule/Attribute:category_name+' => '该规则对应的类名称',
+ 'Class:AuditRule/Attribute:contact_id' => 'Owner~~',
+ 'Class:AuditRule/Attribute:contact_id+' => 'Team or person in charge of fixing the errors detected by this rule~~',
]);
//
@@ -65,17 +76,17 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:AuditDomain' => '审计域',
- 'Class:AuditDomain+' => '审计域用于分组审计规则.
+ 'Class:AuditDomain' => '审计域',
+ 'Class:AuditDomain+' => '审计域用于分组审计规则.
审计域通常对应负责检查和修复错误的人',
- 'Class:AuditDomain/Attribute:name' => '名称',
- 'Class:AuditDomain/Attribute:name+' => '用于细分负责修复错误或只对审计感兴趣的人员',
- 'Class:AuditDomain/Attribute:description' => '描述',
- 'Class:AuditDomain/Attribute:description+' => '',
- 'Class:AuditDomain/Attribute:icon' => '图标',
- 'Class:AuditDomain/Attribute:icon+' => '',
- 'Class:AuditDomain/Attribute:categories_list' => '类别',
- 'Class:AuditDomain/Attribute:categories_list+' => '关联的审计类别',
+ 'Class:AuditDomain/Attribute:name' => '名称',
+ 'Class:AuditDomain/Attribute:name+' => '用于细分负责修复错误或只对审计感兴趣的人',
+ 'Class:AuditDomain/Attribute:description' => '描述',
+ 'Class:AuditDomain/Attribute:description+' => '',
+ 'Class:AuditDomain/Attribute:icon' => '图标',
+ 'Class:AuditDomain/Attribute:icon+' => '',
+ 'Class:AuditDomain/Attribute:categories_list' => '类别',
+ 'Class:AuditDomain/Attribute:categories_list+' => '此类别相关的审计类别',
]);
//
@@ -83,7 +94,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:lnkAuditCategoryToAuditDomain' => '关联审计类别/审计域',
+ 'Class:lnkAuditCategoryToAuditDomain' => '链接 审计类别/审计域',
'Class:lnkAuditCategoryToAuditDomain+' => '',
'Class:lnkAuditCategoryToAuditDomain/Attribute:category_id' => '类别',
'Class:lnkAuditCategoryToAuditDomain/Attribute:category_id+' => '审计类别',
@@ -100,32 +111,32 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:Query' => '查询',
- 'Class:Query+' => '查询是一种动态的数据集',
- 'Class:Query/Attribute:name' => '名称',
- 'Class:Query/Attribute:name+' => '查询的名称',
- 'Class:Query/Attribute:description' => '描述',
- 'Class:Query/Attribute:description+' => '请描述此查询 (目的, 用法等等.)',
- 'Class:Query/Attribute:is_template' => 'OQL模板',
- 'Class:Query/Attribute:is_template+' => '可用于通知中的收件人OQL',
- 'Class:Query/Attribute:is_template/Value:yes' => '是',
- 'Class:Query/Attribute:is_template/Value:no' => '否',
- 'Class:Query/Attribute:export_count' => '导出计数',
- 'Class:Query/Attribute:export_count+' => '反应此查询执行的次数',
- 'Class:Query/Attribute:export_last_date' => '最近导出',
- 'Class:Query/Attribute:export_last_date+' => '最近一次导出执行的日期和时间',
- 'Class:Query/Attribute:export_last_user_id' => '用户',
- 'Class:Query/Attribute:export_last_user_id+' => '执行最近一次导出的用户',
- 'Class:Query/Attribute:export_last_user_contact' => '联系人',
+ 'Class:Query' => '查询',
+ 'Class:Query+' => '查询是一种动态的数据集',
+ 'Class:Query/Attribute:name' => '名称',
+ 'Class:Query/Attribute:name+' => '查询的名称',
+ 'Class:Query/Attribute:description' => '描述',
+ 'Class:Query/Attribute:description+' => '请描述此查询 (目的, 用法等等.)',
+ 'Class:Query/Attribute:is_template' => 'OQL模板',
+ 'Class:Query/Attribute:is_template+' => '可用于通知中的收件人OQL',
+ 'Class:Query/Attribute:is_template/Value:yes' => '是',
+ 'Class:Query/Attribute:is_template/Value:no' => '否',
+ 'Class:Query/Attribute:export_count' => '导出计数',
+ 'Class:Query/Attribute:export_count+' => '反应此查询执行的次数',
+ 'Class:Query/Attribute:export_last_date' => '最近导出',
+ 'Class:Query/Attribute:export_last_date+' => '最近一次导出执行的日期和时间',
+ 'Class:Query/Attribute:export_last_user_id' => '用户',
+ 'Class:Query/Attribute:export_last_user_id+' => '执行最近一次导出的用户',
+ 'Class:Query/Attribute:export_last_user_contact' => '联系人',
'Class:Query/Attribute:export_last_user_contact+' => '执行最近一次导出的联系人',
- 'Query:baseinfo' => '基本信息',
- 'Query:exportInfo' => '导出信息',
- 'Class:QueryOQL/Attribute:fields' => '字段',
- 'Class:QueryOQL/Attribute:fields+' => '逗号分隔的待导出字段 (或者alias.attribute)',
- 'Class:QueryOQL' => 'OQL查询',
- 'Class:QueryOQL+' => '一种基于对象查询的语言',
- 'Class:QueryOQL/Attribute:oql' => '表达式',
- 'Class:QueryOQL/Attribute:oql+' => 'OQL表达式',
+ 'Query:baseinfo' => '基本信息',
+ 'Query:exportInfo' => '导出信息',
+ 'Class:QueryOQL/Attribute:fields' => '字段',
+ 'Class:QueryOQL/Attribute:fields+' => '逗号分隔的待导出字段 (或者alias.attribute)',
+ 'Class:QueryOQL' => 'OQL查询',
+ 'Class:QueryOQL+' => '一种基于对象查询的语言',
+ 'Class:QueryOQL/Attribute:oql' => '表达式',
+ 'Class:QueryOQL/Attribute:oql+' => 'OQL表达式',
]);
//////////////////////////////////////////////////////////////////////
@@ -138,36 +149,37 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
//
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Class:User' => '用户',
- 'Class:User+' => '用户登录名',
- 'Class:User/Attribute:finalclass' => '账号类型',
- 'Class:User/Attribute:finalclass+' => '根本属性的名称',
- 'Class:User/Attribute:contactid' => '人员',
- 'Class:User/Attribute:contactid+' => '来自业务数据的人员明细信息',
- 'Class:User/Attribute:org_id' => '组织',
- 'Class:User/Attribute:org_id+' => '用户所属的组织',
- 'Class:User/Attribute:last_name' => '姓',
- 'Class:User/Attribute:last_name+' => '对应联系人的姓氏',
- 'Class:User/Attribute:first_name' => '名',
- 'Class:User/Attribute:first_name+' => '对应联系人的名字',
- 'Class:User/Attribute:email' => '邮箱',
- 'Class:User/Attribute:email+' => '对应联系人的邮箱',
- 'Class:User/Attribute:login' => '登录名',
- 'Class:User/Attribute:login+' => '用户标识字符串',
- 'Class:User/Attribute:language' => '语言',
- 'Class:User/Attribute:language+' => '用户语言',
- 'Class:User/Attribute:language/Value:EN US' => '英语',
+ 'Class:User' => '用户',
+ 'Class:User+' => '用户登录名',
+ 'Class:User/Attribute:finalclass' => '账号类型',
+ 'Class:User/Attribute:finalclass+' => '根本属性的名称',
+ 'Class:User/Attribute:contactid' => '个体',
+ 'Class:User/Attribute:contactid+' => '来自业务数据的个体明细信息',
+ 'Class:User/Attribute:org_id' => '组织',
+ 'Class:User/Attribute:org_id+' => '用户所属的组织',
+ 'Class:User/Attribute:last_name' => '姓',
+ 'Class:User/Attribute:last_name+' => '对应联系人的姓氏',
+ 'Class:User/Attribute:first_name' => '名',
+ 'Class:User/Attribute:first_name+' => '对应联系人的名字',
+ 'Class:User/Attribute:email' => '邮箱',
+ 'Class:User/Attribute:email+' => '对应联系人的邮箱',
+ 'Class:User/Attribute:login' => '登录名',
+ 'Class:User/Attribute:login+' => '用户标识字符串',
+ 'Class:User/Attribute:language' => '语言',
+ 'Class:User/Attribute:language+' => '用户语言',
+ 'Class:User/Attribute:language/Value:EN US' => '英语',
'Class:User/Attribute:language/Value:EN US+' => '英语 (U.S.)',
- 'Class:User/Attribute:language/Value:FR FR' => '法语',
+ 'Class:User/Attribute:language/Value:FR FR' => '法语',
'Class:User/Attribute:language/Value:FR FR+' => '法语 (France)',
- 'Class:User/Attribute:profile_list' => '角色',
- 'Class:User/Attribute:profile_list+' => '授予此用户的角色',
- 'Class:User/Attribute:allowed_org_list' => '可访问的组织',
- 'Class:User/Attribute:allowed_org_list+' => '目标用户可以看到以下组织的数据. 如果没有指定,则无限制.',
- 'Class:User/Attribute:status' => '状态',
- 'Class:User/Attribute:status+' => '账号是否启用.',
- 'Class:User/Attribute:status/Value:enabled' => '启用',
+ 'Class:User/Attribute:profile_list' => '角色',
+ 'Class:User/Attribute:profile_list+' => '授予此用户的角色',
+ 'Class:User/Attribute:allowed_org_list' => '可访问的组织',
+ 'Class:User/Attribute:allowed_org_list+' => '目标用户可以看到以下组织的数据. 如果没有指定,则无限制.',
+ 'Class:User/Attribute:status' => '状态',
+ 'Class:User/Attribute:status+' => '账号是否启用.',
+ 'Class:User/Attribute:status/Value:enabled' => '启用',
'Class:User/Attribute:status/Value:disabled' => '停用',
+
'Class:User/Error:LoginMustBeUnique' => '登录名必须唯一 - "%1s" 已经被使用.',
'Class:User/Error:AtLeastOneProfileIsNeeded' => '必须指定至少一个角色给此用户.',
'Class:User/Error:PrivilegedUserMustHaveAccessToBackOffice' => 'Profile "%1$s" cannot be given to privileged Users (Administrators, SuperUsers and REST Services Users)~~',
@@ -226,7 +238,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:URP_UserProfile+' => '用户的角色',
'Class:URP_UserProfile/Name' => '关联 %1$s 和 %2$s',
'Class:URP_UserProfile/Attribute:userid' => '用户',
- 'Class:URP_UserProfile/Attribute:userid+' => '用户账号',
+ 'Class:URP_UserProfile/Attribute:userid+' => '账号',
'Class:URP_UserProfile/Attribute:userlogin' => '登录名',
'Class:URP_UserProfile/Attribute:userlogin+' => '用户的登录名',
'Class:URP_UserProfile/Attribute:profileid' => '角色',
@@ -246,7 +258,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:URP_UserOrg+' => '可以访问的组织',
'Class:URP_UserOrg/Name' => '关联 %1$s 和 %2$s',
'Class:URP_UserOrg/Attribute:userid' => '用户',
- 'Class:URP_UserOrg/Attribute:userid+' => '用户账号',
+ 'Class:URP_UserOrg/Attribute:userid+' => '账号',
'Class:URP_UserOrg/Attribute:userlogin' => '登录名',
'Class:URP_UserOrg/Attribute:userlogin+' => '用户的登录名',
'Class:URP_UserOrg/Attribute:allowed_org_id' => '组织',
@@ -303,7 +315,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:URP_ActionGrant' => '操作权限',
- 'Class:URP_ActionGrant+' => '类型权限',
+ 'Class:URP_ActionGrant+' => '基于类型的权限',
'Class:URP_ActionGrant/Attribute:profileid' => '角色',
'Class:URP_ActionGrant/Attribute:profileid+' => '使用角色',
'Class:URP_ActionGrant/Attribute:profile' => '角色',
@@ -401,108 +413,114 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'BooleanLabel:yes' => '是',
'BooleanLabel:no' => '否',
- 'UI:WelcomeMenu:Title' => '欢迎使用'.ITOP_APPLICATION_SHORT, 'UI:WelcomeMenu:AllOpenRequests' => '所有打开的需求: %1$d',
- 'UI:WelcomeMenu:MyCalls' => '我办理的需求',
- 'UI:WelcomeMenu:OpenIncidents' => '所有打开的事件: %1$d',
- 'UI:WelcomeMenu:AllConfigItems' => '配置项: %1$d',
- 'UI:WelcomeMenu:MyIncidents' => '分配给我的事件',
- 'UI:AllOrganizations' => ' 所有组织 ',
- 'UI:YourSearch' => '搜索',
- 'UI:LoggedAsMessage' => '以 %1$s 身份登录 (%2$s)',
- 'UI:LoggedAsMessage+Admin' => '以 %1$s 身份登录 (%2$s, 管理员)',
- 'UI:Button:Logoff' => '注销',
- 'UI:Button:GlobalSearch' => '搜索',
- 'UI:Button:Search' => ' 搜索 ',
- 'UI:Button:Clear' => ' 清空 ',
- 'UI:Button:Confirm' => ' 确认 ',
- 'UI:Button:SearchInHierarchy' => '递归搜索',
- 'UI:Button:Query' => ' 查询 ',
- 'UI:Button:Ok' => 'OK',
- 'UI:Button:Save' => '保存',
- 'UI:Button:SaveAnd' => '保存并%1$s',
- 'UI:Button:Cancel' => '取消',
- 'UI:Button:Close' => '关闭',
- 'UI:Button:Apply' => '应用',
- 'UI:Button:Send' => '发送',
- 'UI:Button:SendAnd' => '发送并%1$s',
- 'UI:Button:Back' => ' << 上一步 ',
- 'UI:Button:Restart' => ' |<< 重来 ',
- 'UI:Button:Next' => ' 下一步 >> ',
- 'UI:Button:Finish' => ' 结束 ',
- 'UI:Button:DoImport' => ' 执行导入 ! ',
- 'UI:Button:Done' => ' 完成 ',
- 'UI:Button:SimulateImport' => ' 模拟导入 ',
- 'UI:Button:Test' => '测试!',
- 'UI:Button:Evaluate' => ' 评估 ',
- 'UI:Button:Evaluate:Title' => ' 评估 (Ctrl+Enter) ',
- 'UI:Button:AddObject' => ' 添加... ',
- 'UI:Button:BrowseObjects' => ' 浏览... ',
- 'UI:Button:Add' => ' 添加 ',
- 'UI:Button:AddToList' => ' << 添加 ',
- 'UI:Button:RemoveFromList' => ' 移除 >> ',
- 'UI:Button:FilterList' => ' 筛选... ',
- 'UI:Button:Create' => ' 创建 ',
- 'UI:Button:Delete' => ' 删除 ',
- 'UI:Button:Rename' => ' 重命名... ',
- 'UI:Button:ChangePassword' => ' 修改密码 ',
- 'UI:Button:ResetPassword' => ' 重置密码 ',
- 'UI:Button:Insert' => '插入',
- 'UI:Button:More' => '更多',
- 'UI:Button:Less' => '更少',
- 'UI:Button:Wait' => '正在更新字段,请稍候',
- 'UI:Treeview:CollapseAll' => '全部收起',
- 'UI:Treeview:ExpandAll' => '全部展开',
- 'UI:UserPref:DoNotShowAgain' => '不再显示',
- 'UI:InputFile:NoFileSelected' => '未选择文件',
- 'UI:InputFile:SelectFile' => '选择文件',
- 'UI:SearchToggle' => '搜索',
- 'UI:ClickToCreateNew' => '新建%1$s',
- 'UI:SearchFor_Class' => '搜索%1$s ',
- 'UI:NoObjectToDisplay' => '没有可显示的对象.',
- 'UI:Error:SaveFailed' => '对象无法被保存:',
- 'UI:Error:MandatoryTemplateParameter_object_id' => '当link_attr被指定时, 参数object_id是必须的. 请检查显示模板的定义.',
- 'UI:Error:MandatoryTemplateParameter_target_attr' => '当link_attr被指定时, 参数target_attr是必须的. 请检查显示模板的定义.',
- 'UI:Error:MandatoryTemplateParameter_group_by' => '参数group_by是必须的. 请检查显示模板的定义.',
- 'UI:Error:InvalidGroupByFields' => '分组字段列表是无效的: "%1$s".',
- 'UI:Error:UnsupportedStyleOfBlock' => '错误: 不被支持的block格式: "%1$s".',
+ 'UI:WelcomeMenu:Title' => '欢迎使用'.ITOP_APPLICATION_SHORT,
+ 'UI:WelcomeMenu:AllOpenRequests' => '所有打开的需求: %1$d',
+ 'UI:WelcomeMenu:MyCalls' => '我办理的需求',
+ 'UI:WelcomeMenu:OpenIncidents' => '所有打开的事件: %1$d',
+ 'UI:WelcomeMenu:AllConfigItems' => '配置项: %1$d',
+ 'UI:WelcomeMenu:MyIncidents' => '分配给我的事件',
+ 'UI:AllOrganizations' => ' 所有组织 ',
+ 'UI:YourSearch' => '搜索',
+ 'UI:LoggedAsMessage' => '以 %1$s 身份登录 (%2$s)',
+ 'UI:LoggedAsMessage+Admin' => '以 %1$s 身份登录 (%2$s, 管理员)',
+ 'UI:Button:Logoff' => '注销',
+ 'UI:Button:GlobalSearch' => '搜索',
+ 'UI:Button:Search' => ' 搜索 ',
+ 'UI:Button:Clear' => ' 清空 ',
+ 'UI:Button:Confirm' => ' 确认 ',
+ 'UI:Button:SearchInHierarchy' => '在架构中搜索',
+ 'UI:Button:Query' => ' 查询 ',
+ 'UI:Button:Ok' => 'OK',
+ 'UI:Button:Save' => '保存',
+ 'UI:Button:SaveAnd' => '保存并%1$s',
+ 'UI:Button:Cancel' => '取消',
+ 'UI:Button:Close' => '关闭',
+ 'UI:Button:Apply' => '应用',
+ 'UI:Button:Send' => '发送',
+ 'UI:Button:SendAnd' => '发送并%1$s',
+ 'UI:Button:Back' => ' << 上一步 ',
+ 'UI:Button:Restart' => ' |<< 重来 ',
+ 'UI:Button:Next' => ' 下一步 >> ',
+ 'UI:Button:Finish' => ' 结束 ',
+ 'UI:Button:DoImport' => ' 执行导入 ! ',
+ 'UI:Button:Done' => ' 完成 ',
+ 'UI:Button:SimulateImport' => ' 模拟导入 ',
+ 'UI:Button:Test' => '测试!',
+ 'UI:Button:Evaluate' => ' 评估 ',
+ 'UI:Button:Evaluate:Title' => ' 评估 (Ctrl+Enter) ',
+ 'UI:Button:AddObject' => ' 添加... ',
+ 'UI:Button:BrowseObjects' => ' 浏览... ',
+ 'UI:Button:Add' => ' 添加 ',
+ 'UI:Button:AddToList' => ' << 添加 ',
+ 'UI:Button:RemoveFromList' => ' 移除 >> ',
+ 'UI:Button:FilterList' => ' 筛选... ',
+ 'UI:Button:Create' => ' 创建 ',
+ 'UI:Button:Delete' => ' 删除 ',
+ 'UI:Button:Rename' => ' 重命名... ',
+ 'UI:Button:ChangePassword' => ' 修改密码 ',
+ 'UI:Button:ResetPassword' => ' 重置密码 ',
+ 'UI:Button:Insert' => '插入',
+ 'UI:Button:More' => '更多',
+ 'UI:Button:Less' => '更少',
+ 'UI:Button:Wait' => '正在更新字段,请稍候',
+ 'UI:Treeview:CollapseAll' => '全部收起',
+ 'UI:Treeview:ExpandAll' => '全部展开',
+ 'UI:UserPref:DoNotShowAgain' => '不再显示',
+ 'UI:InputFile:NoFileSelected' => '未选择文件',
+ 'UI:InputFile:SelectFile' => '请选择文件',
+
+ 'UI:SearchToggle' => '搜索',
+ 'UI:ClickToCreateNew' => '新建%1$s',
+ 'UI:SearchFor_Class' => '搜索%1$s ',
+ 'UI:NoObjectToDisplay' => '没有可显示的对象.',
+ 'UI:Error:SaveFailed' => '对象无法被保存:',
+ 'UI:Error:MandatoryTemplateParameter_object_id' => '当link_attr被指定时, 参数object_id是必须的. 请检查显示模板的定义.',
+ 'UI:Error:MandatoryTemplateParameter_target_attr' => '当link_attr被指定时, 参数target_attr是必须的. 请检查显示模板的定义.',
+ 'UI:Error:MandatoryTemplateParameter_group_by' => '参数group_by是必须的. 请检查显示模板的定义.',
+ 'UI:Error:InvalidGroupByFields' => '分组字段列表是无效的: "%1$s".',
+ 'UI:Error:UnsupportedStyleOfBlock' => '错误: 不被支持的block格式: "%1$s".',
'UI:Error:IncorrectLinkDefinition_LinkedClass_Class' => '关联错误: 关联的对象: %1$s不是%2$s的外键',
- 'UI:Error:Object_Class_Id_NotFound' => '对象: %1$s:%2$d找不到.',
- 'UI:Error:WizardCircularReferenceInDependencies' => '错误: 字段之间的依赖性出现循环引用, 请检查数据模型.',
- 'UI:Error:UploadedFileTooBig' => '上传文件太大. (允许的最大限制是 %1$s). 请检查 PHP 配置文件中的upload_max_filesize和post_max_size.',
- 'UI:Error:UploadedFileTruncated.' => '上传的文件被截断 !',
- 'UI:Error:NoTmpDir' => '未定义临时目录.',
- 'UI:Error:CannotWriteToTmp_Dir' => '无法向硬盘写入临时文件. upload_tmp_dir = "%1$s".',
- 'UI:Error:UploadStoppedByExtension_FileName' => '上传因为扩展名被停止. (原文件名 = "%1$s").',
- 'UI:Error:UploadFailedUnknownCause_Code' => '文件上传失败, 原因未知. (错误代码 = "%1$s").',
- 'UI:Error:1ParametersMissing' => '错误: 必须为此操作指定以下参数: %1$s.',
- 'UI:Error:2ParametersMissing' => '错误: 必须为此操作指定以下参数: %1$s和%2$s.',
- 'UI:Error:3ParametersMissing' => '错误: 必须为此操作指定以下参数: %1$s, %2$s和%3$s.',
- 'UI:Error:4ParametersMissing' => '错误: 必须为此操作指定以下参数: %1$s, %2$s, %3$s和%4$s.',
- 'UI:Error:IncorrectOQLQuery_Message' => '错误: 错误的OQL查询: %1$s',
+ 'UI:Error:Object_Class_Id_NotFound' => '对象: %1$s:%2$d找不到.',
+ 'UI:Error:WizardCircularReferenceInDependencies' => '错误: 字段之间的依赖性出现循环引用, 请检查数据模型.',
+ 'UI:Error:UploadedFileTooBig' => '上传文件太大. (允许的最大限制是 %1$s). 请检查 PHP 配置文件中的upload_max_filesize和post_max_size.',
+ 'UI:Error:UploadedFileTruncated.' => '上传的文件被截断 !',
+ 'UI:Error:NoTmpDir' => '未定义临时目录.',
+ 'UI:Error:CannotWriteToTmp_Dir' => '无法向硬盘写入临时文件. upload_tmp_dir = "%1$s".',
+ 'UI:Error:UploadStoppedByExtension_FileName' => '上传因为扩展名被停止. (原文件名 = "%1$s").',
+ 'UI:Error:UploadFailedUnknownCause_Code' => '文件上传失败, 原因未知. (错误代码 = "%1$s").',
+
+ 'UI:Error:1ParametersMissing' => '错误: 必须为此操作指定以下参数: %1$s.',
+ 'UI:Error:2ParametersMissing' => '错误: 必须为此操作指定以下参数: %1$s和%2$s.',
+ 'UI:Error:3ParametersMissing' => '错误: 必须为此操作指定以下参数: %1$s, %2$s和%3$s.',
+ 'UI:Error:4ParametersMissing' => '错误: 必须为此操作指定以下参数: %1$s, %2$s, %3$s和%4$s.',
+ 'UI:Error:IncorrectOQLQuery_Message' => '错误: 错误的OQL查询: %1$s',
'UI:Error:AnErrorOccuredWhileRunningTheQuery_Message' => '运行此查询时发生了一个错误: %1$s',
- 'UI:Error:ObjectAlreadyUpdated' => '错误: 此对象已更新.',
- 'UI:Error:ObjectCannotBeUpdated' => '错误: 对象无法更新.',
- 'UI:Error:ObjectsAlreadyDeleted' => '错误: 对象已被删除!',
- 'UI:Error:BulkDeleteNotAllowedOn_Class' => '您无权进行%1$s类型对象的批量删除',
- 'UI:Error:DeleteNotAllowedOn_Class' => '您无权删除%1$s类型的对象',
- 'UI:Error:ReadNotAllowedOn_Class' => '您无权查看对象的%1$s',
- 'UI:Error:BulkModifyNotAllowedOn_Class' => '您无权进行%1$s类型对象的批量更新',
- 'UI:Error:ObjectAlreadyCloned' => '错误: 此对象已被克隆!',
- 'UI:Error:ObjectAlreadyCreated' => '错误: 此对象已被创建!',
- 'UI:Error:Invalid_Stimulus_On_Object_In_State' => '错误: 在对象%2$s的 "%3$s" 状态上的无效权限 "%1$s".',
- 'UI:Error:InvalidDashboardFile' => '错误: 无效的仪表盘文件',
- 'UI:Error:InvalidDashboard' => '错误: 无效的仪表盘',
- 'UI:Error:MaintenanceMode' => '应用正处于维护中',
- 'UI:Error:MaintenanceTitle' => '维护',
- 'UI:Error:InvalidToken' => '错误: 所请求的操作已执行 (没有CSRF token)',
+ 'UI:Error:ObjectAlreadyUpdated' => '错误: 此对象已更新.',
+ 'UI:Error:ObjectCannotBeUpdated' => '错误: 对象无法更新.',
+ 'UI:Error:ObjectsAlreadyDeleted' => '错误: 对象已被删除!',
+ 'UI:Error:BulkDeleteNotAllowedOn_Class' => '您无权进行%1$s类型对象的批量删除',
+ 'UI:Error:DeleteNotAllowedOn_Class' => '您无权删除%1$s类型的对象',
+ 'UI:Error:ReadNotAllowedOn_Class' => '您无权查看对象的%1$s',
+ 'UI:Error:BulkModifyNotAllowedOn_Class' => '您无权进行%1$s类型对象的批量更新',
+ 'UI:Error:ObjectAlreadyCloned' => '错误: 此对象已被克隆!',
+ 'UI:Error:ObjectAlreadyCreated' => '错误: 此对象已被创建!',
+ 'UI:Error:Invalid_Stimulus_On_Object_In_State' => '错误: 在对象%2$s的 "%3$s" 状态上的无效权限 "%1$s".',
+ 'UI:Error:InvalidDashboardFile' => '错误: 无效的仪表盘文件',
+ 'UI:Error:InvalidDashboard' => '错误: 无效的仪表盘',
+ 'UI:Error:MaintenanceMode' => '应用正处于维护中',
+ 'UI:Error:MaintenanceTitle' => '维护',
+ 'UI:Error:InvalidToken' => '错误: 所请求的操作已执行 (没有CSRF token)',
+ 'UI:Error:TwigController' => 'Internal error in form controller~~',
+
'UI:Error:SMTP:UnknownVendor' => 'OAuth SMTP提供者%1$s不存在 (email_transport_smtp.oauth.provider)',
- 'UI:GroupBy:Count' => '个数',
- 'UI:GroupBy:Count+' => '项目数',
- 'UI:CountOfObjects' => '%1$d个对象符合指定的条件.',
- 'UI_CountOfObjectsShort' => '%1$d个对象.',
- 'UI:NoObject_Class_ToDisplay' => '没有%1$s可以显示',
+
+ 'UI:GroupBy:Count' => '个数',
+ 'UI:GroupBy:Count+' => '项目数',
+ 'UI:CountOfObjects' => '%1$d个对象符合指定的条件.',
+ 'UI_CountOfObjectsShort' => '%1$d个对象.',
+ 'UI:NoObject_Class_ToDisplay' => '没有%1$s可以显示',
'UI:History:LastModified_On_By' => '最后修改%1$s被%2$s.',
- 'UI:HistoryTab' => '历史',
+ 'UI:HistoryTab' => '历史',
'UI:NotificationsTab' => '通知',
'UI:History:BulkImports' => '历史',
'UI:History:BulkImports+' => 'CSV导入列表 (最新导入在最)',
@@ -583,48 +601,50 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:CSVImport:ObjectsWereModified' => '%1$d个对象已被修改.',
'UI:CSVImport:ObjectsWereAdded' => '%1$d个对象已被添加.',
'UI:CSVImport:ObjectsHadErrors' => '%1$d个对象发生错误.',
- 'UI:Title:CSVImportStep2' => '第2步,共5步: CSV数据选项',
- 'UI:Title:CSVImportStep3' => '第3步,共5步: 数据映射',
- 'UI:Title:CSVImportStep4' => '第4步,共5步: 模拟导入',
- 'UI:Title:CSVImportStep5' => '第5步,共5步: 完成导入',
- 'UI:CSVImport:LinesNotImported' => '无法导入的行:',
- 'UI:CSVImport:LinesNotImported+' => '以下行无法导入因为其中包含错误',
- 'UI:CSVImport:SeparatorComma+' => ', (逗号)',
- 'UI:CSVImport:SeparatorSemicolon+' => '; (分号)',
- 'UI:CSVImport:SeparatorTab+' => '制表符',
- 'UI:CSVImport:SeparatorOther' => '其它:',
- 'UI:CSVImport:QualifierDoubleQuote+' => '" (双引号)',
- 'UI:CSVImport:QualifierSimpleQuote+' => '\' (单引号)',
- 'UI:CSVImport:QualifierOther' => '其它:',
- 'UI:CSVImport:TreatFirstLineAsHeader' => '将第一行视作标题头 (列名)',
+ 'UI:Title:CSVImportStep2' => '第2步,共5步: CSV数据选项',
+ 'UI:Title:CSVImportStep3' => '第3步,共5步: 数据映射',
+ 'UI:Title:CSVImportStep4' => '第4步,共5步: 模拟导入',
+ 'UI:Title:CSVImportStep5' => '第5步,共5步: 完成导入',
+ 'UI:CSVImport:LinesNotImported' => '无法导入的行:',
+ 'UI:CSVImport:LinesNotImported+' => '以下行无法导入因为其中包含错误',
+ 'UI:CSVImport:SeparatorComma+' => ', (逗号)',
+ 'UI:CSVImport:SeparatorSemicolon+' => '; (分号)',
+ 'UI:CSVImport:SeparatorTab+' => '制表符',
+ 'UI:CSVImport:SeparatorOther' => '其它:',
+ 'UI:CSVImport:QualifierDoubleQuote+' => '" (双引号)',
+ 'UI:CSVImport:QualifierSimpleQuote+' => '\' (单引号)',
+ 'UI:CSVImport:QualifierOther' => '其它:',
+ 'UI:CSVImport:TreatFirstLineAsHeader' => '将第一行视作标题头 (列名)',
'UI:CSVImport:Skip_N_LinesAtTheBeginning' => '跳过文件的前%1$s行',
- 'UI:CSVImport:CSVDataPreview' => 'CSV 数据预览',
- 'UI:CSVImport:Column' => 'Column %1$s~~',
- 'UI:CSVImport:SelectFile' => '请选择要导入的文件:',
- 'UI:CSVImport:Tab:LoadFromFile' => '从文件导入',
- 'UI:CSVImport:Tab:CopyPaste' => '复制和粘贴的数据',
- 'UI:CSVImport:Tab:Templates' => '模板',
- 'UI:CSVImport:PasteData' => '粘贴数据以导入:',
- 'UI:CSVImport:PickClassForTemplate' => '选择模板: ',
- 'UI:CSVImport:SeparatorCharacter' => '分隔符:',
- 'UI:CSVImport:TextQualifierCharacter' => '文本修饰符',
- 'UI:CSVImport:CommentsAndHeader' => '注释和头',
- 'UI:CSVImport:SelectClass' => '选择要导入的类别:',
- 'UI:CSVImport:AdvancedMode' => '高级模式',
- 'UI:CSVImport:AdvancedMode+' => '在高级模式中, 对象的"id" (主键) 可以被用来修改和重命名对象.不管怎样, 列 "id" (如果存在) 只能被用做一个搜索条件, 不能与其它搜索条件混用.',
- 'UI:CSVImport:SelectAClassFirst' => '要配置映射, 请先选择一个类型.',
- 'UI:CSVImport:HeaderFields' => '字段',
- 'UI:CSVImport:HeaderMappings' => '映射',
- 'UI:CSVImport:HeaderSearch' => '搜索?',
- 'UI:CSVImport:AlertIncompleteMapping' => '请为每个栏选择一个映射.',
- 'UI:CSVImport:AlertMultipleMapping' => '请确保目标区域仅被映射一次.',
- 'UI:CSVImport:AlertNoSearchCriteria' => '请选择至少一个搜索条件',
- 'UI:CSVImport:Encoding' => '字符编码',
- 'UI:CSVImport:ViewAllPossibleValues' => '查看所有可能值',
- 'UI:CSVImport:ViewAllAmbiguousValues' => '查看所有模糊值',
- 'UI:UniversalSearchTitle' => ITOP_APPLICATION_SHORT.' - 全局搜索',
- 'UI:UniversalSearch:Error' => '错误: %1$s',
- 'UI:UniversalSearch:LabelSelectTheClass' => '选择要搜索的类别: ',
+ 'UI:CSVImport:CSVDataPreview' => 'CSV 数据预览',
+ 'UI:CSVImport:Column' => 'Column %1$s~~',
+ 'UI:CSVImport:SelectFile' => '请选择要导入的文件:',
+ 'UI:CSVImport:Tab:LoadFromFile' => '从文件导入',
+ 'UI:CSVImport:Tab:CopyPaste' => '复制和粘贴的数据',
+ 'UI:CSVImport:Tab:Templates' => '模板',
+ 'UI:CSVImport:PasteData' => '粘贴数据以导入:',
+ 'UI:CSVImport:PickClassForTemplate' => '请选择模板: ',
+ 'UI:CSVImport:SeparatorCharacter' => '分隔符:',
+ 'UI:CSVImport:TextQualifierCharacter' => '文本限定符',
+ 'UI:CSVImport:CommentsAndHeader' => '注释和头',
+ 'UI:CSVImport:SelectClass' => '请选择要导入的类别:',
+ 'UI:CSVImport:AdvancedMode' => '高级模式',
+ 'UI:CSVImport:AdvancedMode+' => '在高级模式中, 对象的"id" (主键) 可以被用来修改和重命名对象.'.
+ '不管怎样, 列 "id" (如果存在) 只能被用做一个搜索条件, 不能与其它搜索条件混用.',
+ 'UI:CSVImport:SelectAClassFirst' => '要配置映射, 请先选择一个类型.',
+ 'UI:CSVImport:HeaderFields' => '字段',
+ 'UI:CSVImport:HeaderMappings' => '映射',
+ 'UI:CSVImport:HeaderSearch' => '搜索?',
+ 'UI:CSVImport:AlertIncompleteMapping' => '请为每个栏选择一个映射.',
+ 'UI:CSVImport:AlertMultipleMapping' => '请确保目标区域仅被映射一次.',
+ 'UI:CSVImport:AlertNoSearchCriteria' => '请选择至少一个搜索条件',
+ 'UI:CSVImport:Encoding' => '字符编码',
+ 'UI:CSVImport:ViewAllPossibleValues' => '查看所有可能值',
+ 'UI:CSVImport:ViewAllAmbiguousValues' => '查看所有模糊值',
+ 'UI:UniversalSearchTitle' => ITOP_APPLICATION_SHORT.' - 全局搜索',
+ 'UI:UniversalSearch:Error' => '错误: %1$s',
+ 'UI:UniversalSearch:LabelSelectTheClass' => '选择要搜索的类别: ',
+
'UI:CSVReport-Value-Modified' => '已修改',
'UI:CSVReport-Value-SetIssue' => '属性值不合法',
'UI:CSVReport-Value-ChangeIssue' => '\'%1$s\' 值不合法',
@@ -633,122 +653,132 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:CSVReport-Value-NoMatch-NoObject' => '对象 \'%1$s\' 不存在',
'UI:CSVReport-Value-NoMatch-NoObject-ForCurrentUser' => '对象 \'%1$s\' 在您当前角色下没有找到',
'UI:CSVReport-Value-NoMatch-SomeObjectNotVisibleForCurrentUser' => '一些对象 \'%1$s\' 在您当前角色下不可见',
- 'UI:CSVReport-Value-Missing' => '缺少必填项',
- 'UI:CSVReport-Value-Ambiguous' => '模糊匹配: 找到 %1$s 个对象',
- 'UI:CSVReport-Row-Unchanged' => '保持不变',
- 'UI:CSVReport-Row-Created' => '新建',
- 'UI:CSVReport-Row-Updated' => '已更新 %1$d 列',
- 'UI:CSVReport-Row-Disappeared' => '已消失, %1$d 列发生变化',
- 'UI:CSVReport-Row-Issue' => '问题: %1$s',
- 'UI:CSVReport-Value-Issue-Null' => '不允许留空',
- 'UI:CSVReport-Value-Issue-NotFound' => '对象找不到',
- 'UI:CSVReport-Value-Issue-FoundMany' => '找到 %1$d 个匹配项',
- 'UI:CSVReport-Value-Issue-Readonly' => '\'%1$s\' 的属性是只读的,不能修改 (当前值: %2$s, 建议值: %3$s)',
- 'UI:CSVReport-Value-Issue-Format' => '输入处理失败: %1$s',
- 'UI:CSVReport-Value-Issue-NoMatch' => '属性 \'%1$s\' 未知的值: 无法匹配, 请检查拼写',
- 'UI:CSVReport-Value-Issue-AllowedValues' => '允许 \'%1$s\' 值: %2$s',
- 'UI:CSVReport-Value-Issue-Unknown' => '属性 \'%1$s\' 未知的值: %2$s',
- 'UI:CSVReport-Row-Issue-Inconsistent' => '属性不一致: %1$s',
- 'UI:CSVReport-Row-Issue-Attribute' => '错误的属性',
- 'UI:CSVReport-Row-Issue-MissingExtKey' => '创建失败, 因为缺少外键: %1$s',
- 'UI:CSVReport-Row-Issue-DateFormat' => '日期格式错误',
+
+ 'UI:CSVReport-Value-Missing' => '缺少必填项',
+ 'UI:CSVReport-Value-Ambiguous' => '模糊匹配: 找到 %1$s 个对象',
+ 'UI:CSVReport-Row-Unchanged' => '保持不变',
+ 'UI:CSVReport-Row-Created' => '新建',
+ 'UI:CSVReport-Row-Updated' => '已更新 %1$d 列',
+ 'UI:CSVReport-Row-Disappeared' => '已消失, %1$d 列发生变化',
+ 'UI:CSVReport-Row-Issue' => '问题: %1$s',
+ 'UI:CSVReport-Value-Issue-Null' => '不允许留空',
+ 'UI:CSVReport-Value-Issue-NotFound' => '对象找不到',
+ 'UI:CSVReport-Value-Issue-FoundMany' => '找到 %1$d 个匹配项',
+ 'UI:CSVReport-Value-Issue-Readonly' => '\'%1$s\' 的属性是只读的,不能修改 (当前值: %2$s, 建议值: %3$s)',
+ 'UI:CSVReport-Value-Issue-Format' => '输入处理失败: %1$s',
+ 'UI:CSVReport-Value-Issue-NoMatch' => '属性 \'%1$s\' 未知的值: 无法匹配, 请检查拼写',
+ 'UI:CSVReport-Value-Issue-AllowedValues' => '允许 \'%1$s\' 值: %2$s',
+ 'UI:CSVReport-Value-Issue-Unknown' => '属性 \'%1$s\' 未知的值: %2$s',
+ 'UI:CSVReport-Row-Issue-Inconsistent' => '属性不一致: %1$s',
+ 'UI:CSVReport-Row-Issue-Attribute' => '错误的属性',
+ 'UI:CSVReport-Row-Issue-MissingExtKey' => '创建失败, 因为缺少外键: %1$s',
+ 'UI:CSVReport-Row-Issue-DateFormat' => '日期格式错误',
'UI:CSVReport-Row-Issue-ExpectedDateFormat' => '预期格式: %1$s',
- 'UI:CSVReport-Row-Issue-Reconciliation' => '无法保持一致',
- 'UI:CSVReport-Row-Issue-Ambiguous' => '不明确的一致要求',
- 'UI:CSVReport-Row-Issue-Internal' => '内部错误: %1$s, %2$s',
- 'UI:CSVReport-Icon-Unchanged' => '保持不变',
- 'UI:CSVReport-Icon-Modified' => '修改',
- 'UI:CSVReport-Icon-Missing' => '丢失',
+ 'UI:CSVReport-Row-Issue-Reconciliation' => '无法保持一致',
+ 'UI:CSVReport-Row-Issue-Ambiguous' => '不明确的一致要求',
+ 'UI:CSVReport-Row-Issue-Internal' => '内部错误: %1$s, %2$s',
+ 'UI:CSVReport-Value-Issue-NoValue' => 'No value',
+ 'UI:CSVReport-Row-Issue-NbField' => 'Not the expected number of columns (found: %1$s, expected: %2$s)',
+
+ 'UI:CSVReport-Icon-Unchanged' => '保持不变',
+ 'UI:CSVReport-Icon-Modified' => '修改',
+ 'UI:CSVReport-Icon-Missing' => '丢失',
'UI:CSVReport-Object-MissingToUpdate' => '丢失对象: 将被更新',
- 'UI:CSVReport-Object-MissingUpdated' => '丢失对象: 已更新',
- 'UI:CSVReport-Icon-Created' => '创建',
- 'UI:CSVReport-Object-ToCreate' => '对象将被创建',
- 'UI:CSVReport-Object-Created' => '对象已创建',
- 'UI:CSVReport-Icon-Error' => '错误',
- 'UI:CSVReport-Object-Error' => '错误: %1$s',
- 'UI:CSVReport-Object-Ambiguous' => '模糊: %1$s',
- 'UI:CSVReport-Stats-Errors' => '%1$.0f %% 已加载的对象包含错误, 它们将会被忽略.',
- 'UI:CSVReport-Stats-Created' => '%1$.0f %% 已加载的对象将会被创建.',
- 'UI:CSVReport-Stats-Modified' => '%1$.0f %% 已加载的对象将会被修改.',
+ 'UI:CSVReport-Object-MissingUpdated' => '丢失对象: 已更新',
+ 'UI:CSVReport-Icon-Created' => '创建',
+ 'UI:CSVReport-Object-ToCreate' => '对象将被创建',
+ 'UI:CSVReport-Object-Created' => '对象已创建',
+ 'UI:CSVReport-Icon-Error' => '错误',
+ 'UI:CSVReport-Object-Error' => '错误: %1$s',
+ 'UI:CSVReport-Object-Ambiguous' => '模糊: %1$s',
+ 'UI:CSVReport-Stats-Errors' => '%1$.0f %% 已加载的对象包含错误, 它们将会被忽略.',
+ 'UI:CSVReport-Stats-Created' => '%1$.0f %% 已加载的对象将会被创建.',
+ 'UI:CSVReport-Stats-Modified' => '%1$.0f %% 已加载的对象将会被修改.',
+
'UI:CSVExport:AdvancedMode' => '高级模式',
'UI:CSVExport:AdvancedMode+' => '高级模式下, 导出将包含额外的列: 对象id, 外键id以及要使一致的属性.',
'UI:CSVExport:LostChars' => '编码问题',
'UI:CSVExport:LostChars+' => '已下载文件将使用编码 %1$s. 系统检测到一些字符与该格式不兼容. 这些字符将被替换为子集 (例如重读字符将丢失音调), 或者被丢弃. 您可以从浏览器中复制粘贴数据. 或者联系管理员更改字符编码 (参阅参数 \'csv_file_default_charset\').',
+
'UI:Audit:Title' => ITOP_APPLICATION_SHORT.' - CMDB审计',
- 'UI:Audit:Interactive:All:Title' => '审计结果',
- 'UI:Audit:Interactive:All:SubTitle' => '全量审计: 包括所有规则, 所有类别, 所有审计域',
- 'UI:Audit:Interactive:All:BreadCrumb' => '全量审计',
- 'UI:Audit:Interactive:All:BreadCrumb+' => '所有规则的审计结果',
- 'UI:Audit:Interactive:Categories:Title' => '所有类别的审计结果: %1$s',
- 'UI:Audit:Interactive:Categories:SubTitle' => '所有属于类别%1$s的规则的审计结果',
- 'UI:Audit:Interactive:Categories:BreadCrumb' => '类别',
+
+ 'UI:Audit:Interactive:All:Title' => '审计结果',
+ 'UI:Audit:Interactive:All:SubTitle' => '全量审计: 包括所有规则, 所有类别, 所有审计域',
+ 'UI:Audit:Interactive:All:BreadCrumb' => '全量审计',
+ 'UI:Audit:Interactive:All:BreadCrumb+' => '所有规则的审计结果',
+ 'UI:Audit:Interactive:Categories:Title' => '所有类别的审计结果: %1$s',
+ 'UI:Audit:Interactive:Categories:SubTitle' => '所有属于类别%1$s的规则的审计结果',
+ 'UI:Audit:Interactive:Categories:BreadCrumb' => '类别',
'UI:Audit:Interactive:Categories:BreadCrumb+' => '审计类别: %1$s',
- 'UI:Audit:Interactive:Domain:Title' => '审计结果在域: %1$s',
- 'UI:Audit:Interactive:Domain:SubTitle' => '所有关联所述域的类别内的审计规则的结果: %1$s',
- 'UI:Audit:Interactive:Domain:BreadCrumb' => '全量审计',
- 'UI:Audit:Interactive:Domain:BreadCrumb+' => '审计在域: %1$s',
- 'UI:Audit:Interactive:Selection:Title' => '审计的选择',
- 'UI:Audit:Interactive:Selection:SubTitle' => '选择一个域以将结果限定在该域内或者选择 "所有类别" 进行全量审计 (要审计的数据太大可能导致耗时较长甚至失败)',
- 'UI:Audit:Interactive:Selection:BreadCrumb' => '选择',
- 'UI:Audit:Interactive:Selection:BreadCrumb+' => '选择要运行的审计',
- 'UI:Audit:Interactive:Selection:BadgeAll' => '所有类别',
- 'UI:Audit:Interactive:Button:Back' => '返回审计',
- 'UI:Audit:Interactive:Button:Configuration' => '审计配置',
- 'UI:Audit:ViewRules' => '检查规则',
- 'UI:Audit:HeaderAuditRule' => '审计规则',
- 'UI:Audit:HeaderNbObjects' => '# 对象',
- 'UI:Audit:HeaderNbErrors' => '# 错误',
- 'UI:Audit:PercentageOk' => '% Ok',
- 'UI:Audit:OqlError' => 'OQL 错误',
- 'UI:Audit:Error:ValueNA' => 'n/a',
- 'UI:Audit:ErrorIn_Rule' => '规则中有错误',
- 'UI:Audit:ErrorIn_Rule_Reason' => 'OQL错误在规则%1$s中: %2$s.',
- 'UI:Audit:ErrorIn_Category' => '类别中有错误',
- 'UI:Audit:ErrorIn_Category_Reason' => 'OQL错误在类别%1$s中: %2$s.',
- 'UI:Audit:AuditErrors' => '审计出错',
- 'UI:Audit:Dashboard:ObjectsAudited' => '对象已审计',
- 'UI:Audit:Dashboard:ObjectsInError' => '对象出错',
- 'UI:Audit:Dashboard:ObjectsValidated' => '对象已验证',
- 'UI:Audit:AuditCategory:Subtitle' => '%2$s个中有%1$s个错误 - %3$s%%',
- 'UI:RunQuery:Title' => ITOP_APPLICATION_SHORT.' - OQL查询评估',
- 'UI:RunQuery:QueryExamples' => '示例查询',
- 'UI:RunQuery:QueryResults' => '查询结果',
- 'UI:RunQuery:HeaderPurpose' => '目的',
- 'UI:RunQuery:HeaderPurpose+' => '此查询的解释',
- 'UI:RunQuery:HeaderOQLExpression' => 'OQL 表达式',
- 'UI:RunQuery:HeaderOQLExpression+' => 'OQL 语法表示的查询',
- 'UI:RunQuery:ExpressionToEvaluate' => '请输入表达式: ',
- 'UI:RunQuery:QueryArguments' => '查询参数',
- 'UI:RunQuery:MoreInfo' => '此查询的更多信息: ',
- 'UI:RunQuery:DevelopedQuery' => '快捷查询表达式: ',
- 'UI:RunQuery:SerializedFilter' => '序列化的过滤器: ',
- 'UI:RunQuery:DevelopedOQL' => '优化的OQL',
- 'UI:RunQuery:DevelopedOQLCount' => '开发的OQL计数',
- 'UI:RunQuery:ResultSQLCount' => '结果SQL计数',
- 'UI:RunQuery:ResultSQL' => '结果SQL',
- 'UI:RunQuery:Error' => '运行此查询时发生了一个错误',
- 'UI:Query:UrlForExcel' => '用于 MS-Excel 网络查询的 URL',
- 'UI:Query:UrlV1' => '没有定义字段列表. 没有这个信息页面export-V2.php无法调用. 因此, 建议的以下 URL 指向传统页面: export.php. 该传统版本导出具有以下限制: 导出的字段列表很大程度依赖于导出格式和'.ITOP_APPLICATION_SHORT.'数据模型.
如果您需要确保导出的列保持长期稳定, 则必须为属性 "Fields" 指定值并使用页面export-V2.php.',
- 'UI:Schema:Title' => ITOP_APPLICATION_SHORT.'对象模型',
- 'UI:Schema:TitleForClass' => '%1$s 模式',
- 'UI:Schema:NoClassSelected' => 'No class selected, please choose one~~',
- 'UI:Schema:CategoryMenuItem' => '类别 %1$s',
- 'UI:Schema:Relationships' => '关联',
- 'UI:Schema:AbstractClass' => '抽象类型: 此类型不能实例化对象.',
- 'UI:Schema:NonAbstractClass' => '非抽象类型: 此类型可以实例化对象.',
- 'UI:Schema:ClassHierarchyTitle' => '类型层级',
- 'UI:Schema:AllClasses' => '所有类型',
- 'UI:Schema:ExternalKey_To' => '%1$s 的外键',
- 'UI:Schema:Columns_Description' => '列: %1$s',
- 'UI:Schema:Default_Description' => '缺省: "%1$s"',
- 'UI:Schema:NullAllowed' => '允许留空',
- 'UI:Schema:NullNotAllowed' => '不允许留空',
- 'UI:Schema:Attributes' => '属性',
- 'UI:Schema:AttributeCode' => '属性编码',
- 'UI:Schema:AttributeCode+' => '属性的内部编码',
- 'UI:Schema:Label' => '标签',
- 'UI:Schema:Label+' => '属性标签',
- 'UI:Schema:Type' => '类别',
+ 'UI:Audit:Interactive:Domain:Title' => '审计结果在域: %1$s',
+ 'UI:Audit:Interactive:Domain:SubTitle' => '所有关联所述域的类别内的审计规则的结果: %1$s',
+ 'UI:Audit:Interactive:Domain:BreadCrumb' => '全量审计',
+ 'UI:Audit:Interactive:Domain:BreadCrumb+' => '审计在域: %1$s',
+ 'UI:Audit:Interactive:Selection:Title' => '审计的选择',
+ 'UI:Audit:Interactive:Selection:SubTitle' => '请选择一个域以将结果限定在该域内或者选择 "所有类别" 进行全量审计 (要审计的数据太大可能导致耗时较长甚至失败)',
+ 'UI:Audit:Interactive:Selection:BreadCrumb' => '请选择',
+ 'UI:Audit:Interactive:Selection:BreadCrumb+' => '请选择要运行的审计',
+ 'UI:Audit:Interactive:Selection:BadgeAll' => '所有类别',
+ 'UI:Audit:Interactive:Button:Back' => '返回审计',
+ 'UI:Audit:Interactive:Button:Configuration' => '审计配置',
+
+ 'UI:Audit:ViewRules' => '检查规则',
+ 'UI:Audit:HeaderAuditRule' => '审计规则',
+ 'UI:Audit:HeaderNbObjects' => '# 对象',
+ 'UI:Audit:HeaderNbErrors' => '# 错误',
+ 'UI:Audit:PercentageOk' => '% Ok',
+ 'UI:Audit:OqlError' => 'OQL 错误',
+ 'UI:Audit:Error:ValueNA' => 'n/a',
+ 'UI:Audit:ErrorIn_Rule' => '规则中有错误',
+ 'UI:Audit:ErrorIn_Rule_Reason' => 'OQL错误在规则%1$s中: %2$s.',
+ 'UI:Audit:ErrorIn_Category' => '类别中有错误',
+ 'UI:Audit:ErrorIn_Category_Reason' => 'OQL错误在类别%1$s中: %2$s.',
+ 'UI:Audit:AuditErrors' => '审计出错',
+ 'UI:Audit:Dashboard:ObjectsAudited' => '对象已审计',
+ 'UI:Audit:Dashboard:ObjectsInError' => '对象出错',
+ 'UI:Audit:Dashboard:ObjectsValidated' => '对象已验证',
+ 'UI:Audit:AuditCategory:Subtitle' => '%2$s个中有%1$s个错误 - %3$s%%',
+
+ 'UI:RunQuery:Title' => ITOP_APPLICATION_SHORT.' - OQL查询评估',
+ 'UI:RunQuery:QueryExamples' => '示例查询',
+ 'UI:RunQuery:QueryResults' => '查询结果',
+ 'UI:RunQuery:HeaderPurpose' => '目的',
+ 'UI:RunQuery:HeaderPurpose+' => '此查询的解释',
+ 'UI:RunQuery:HeaderOQLExpression' => 'OQL 表达式',
+ 'UI:RunQuery:HeaderOQLExpression+' => 'OQL 语法表示的查询',
+ 'UI:RunQuery:ExpressionToEvaluate' => '请输入表达式: ',
+ 'UI:RunQuery:QueryArguments' => '查询参数',
+ 'UI:RunQuery:MoreInfo' => '此查询的更多信息: ',
+ 'UI:RunQuery:DevelopedQuery' => '快捷查询表达式: ',
+ 'UI:RunQuery:SerializedFilter' => '序列化的过滤器: ',
+ 'UI:RunQuery:DevelopedOQL' => '优化的OQL',
+ 'UI:RunQuery:DevelopedOQLCount' => '开发的OQL计数',
+ 'UI:RunQuery:ResultSQLCount' => '结果SQL计数',
+ 'UI:RunQuery:ResultSQL' => '结果SQL',
+ 'UI:RunQuery:Error' => '运行此查询时发生了一个错误',
+ 'UI:Query:UrlForExcel' => '用于 MS-Excel 网络查询的 URL',
+ 'UI:Query:UrlV1' => '没有定义字段列表. 没有这个信息页面export-V2.php无法调用. 因此, 建议的以下 URL 指向传统页面: export.php. 该传统版本导出具有以下限制: 导出的字段列表很大程度依赖于导出格式和'.ITOP_APPLICATION_SHORT.'数据模型.
如果您需要确保导出的列保持长期稳定, 则必须为属性 "Fields" 指定值并使用页面export-V2.php.',
+ 'UI:Schema:Title' => ITOP_APPLICATION_SHORT.'对象模型',
+ 'UI:Schema:TitleForClass' => '%1$s 模式',
+ 'UI:Schema:NoClassSelected' => 'No class selected, please choose one~~',
+ 'UI:Schema:CategoryMenuItem' => '类别 %1$s',
+ 'UI:Schema:Relationships' => '关联',
+ 'UI:Schema:AbstractClass' => '抽象类型: 此类型不能实例化对象.',
+ 'UI:Schema:NonAbstractClass' => '非抽象类型: 此类型可以实例化对象.',
+ 'UI:Schema:ClassHierarchyTitle' => '类型层级',
+ 'UI:Schema:AllClasses' => '所有类型',
+ 'UI:Schema:ExternalKey_To' => '%1$s 的外键',
+ 'UI:Schema:Columns_Description' => '列: %1$s',
+ 'UI:Schema:Default_Description' => '缺省: "%1$s"',
+ 'UI:Schema:NullAllowed' => '允许留空',
+ 'UI:Schema:NullNotAllowed' => '不允许留空',
+ 'UI:Schema:Attributes' => '属性',
+ 'UI:Schema:AttributeCode' => '属性编码',
+ 'UI:Schema:AttributeCode+' => '属性的内部编码',
+ 'UI:Schema:Label' => '标签',
+ 'UI:Schema:Label+' => '属性标签',
+ 'UI:Schema:Type' => '类别',
+
'UI:Schema:Type+' => '属性的数据类型',
'UI:Schema:Origin' => '来自',
'UI:Schema:Origin+' => '此属性被定义的原始类型',
@@ -806,19 +836,19 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:Schema:Events:Listener' => '监听器',
'UI:Schema:Events:Rank' => '评分',
'UI:Schema:Events:Module' => '模块',
- 'UI:LinksWidget:Autocomplete+' => '输入前3个字符...',
+ 'UI:LinksWidget:Autocomplete+' => '请输入前3个字符...',
'UI:Edit:SearchQuery' => '请选择预定义的查询',
'UI:Edit:TestQuery' => '测试查询',
'UI:Combo:SelectValue' => '--- 请选择 ---',
- 'UI:Label:SelectedObjects' => '被选的对象: ',
+ 'UI:Label:SelectedObjects' => '已选的对象: ',
'UI:Label:AvailableObjects' => '可用的对象: ',
'UI:Link_Class_Attributes' => '%1$s 属性',
- 'UI:SelectAllToggle+' => '全选/反选',
+ 'UI:SelectAllToggle+' => '全选/全不选',
'UI:AddObjectsOf_Class_LinkedWith_Class_Instance' => '添加 %1$s 个对象, 链接 %2$s: %3$s',
'UI:AddObjectsOf_Class_LinkedWith_Class' => ' %1$s ',
'UI:ManageObjectsOf_Class_LinkedWith_Class_Instance' => '管理 %1$s 个对象, 链接 %2$s: %3$s',
'UI:AddLinkedObjectsOf_Class' => '添加%1$s',
- 'UI:RemoveLinkedObjectsOf_Class' => '移除对象',
+ 'UI:RemoveLinkedObjectsOf_Class' => '移除已选择的对象',
'UI:Message:EmptyList:UseAdd' => '列表为空, 请使用 "添加..." 按扭来添加元素.',
'UI:Message:EmptyList:UseSearchForm' => '使用上面的搜索表单, 以搜索要添加的对象.',
'UI:Wizard:FinalStepTitle' => '最后一步: 确认',
@@ -858,7 +888,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:Delect:Confirm_Count_ObjectsOf_Class' => '请确认要删除下列%2$s类型的%1$d个对象.',
'UI:Delete:Confirm_Object' => '请确认要删除%1$s.',
'UI:Delete:Confirm_Count_ObjectsOf_Class' => '请确认要删除下列%2$s类型的%1$d个对象.',
- 'UI:WelcomeToITop' => '欢迎使用'.ITOP_APPLICATION, 'UI:DetailsPageTitle' => ITOP_APPLICATION_SHORT.' - %1$s - %2$s 详细内容',
+ 'UI:WelcomeToITop' => '欢迎使用'.ITOP_APPLICATION,
+ 'UI:DetailsPageTitle' => ITOP_APPLICATION_SHORT.' - %1$s - %2$s 详细内容',
'UI:ErrorPageTitle' => ITOP_APPLICATION_SHORT.' - 错误',
'UI:ObjectDoesNotExist' => '抱歉, 此对象不存在 (或无权浏览此对象).',
'UI:ObjectArchived' => '对象已被归档. 请启用归档模式或联系管理员.',
@@ -885,21 +916,20 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:CloneTitle_Class_Object' => '克隆 %1$s: %2$s',
'UI:CreationPageTitle_Class' => ITOP_APPLICATION_SHORT.' - 新建 %1$s',
'UI:CreationTitle_Class' => '新建 %1$s',
- 'UI:SelectTheTypeOf_Class_ToCreate' => '选择 %1$s 的类型:',
+ 'UI:SelectTheTypeOf_Class_ToCreate' => '请选择 %1$s 的类型:',
'UI:Class_Object_NotUpdated' => '未发现变化, %1$s (%2$s) 没有被更新.',
'UI:Class_Object_Updated' => '%1$s (%2$s) 已更新.',
'UI:BulkDeletePageTitle' => ITOP_APPLICATION_SHORT.' - 批量删除',
- 'UI:BulkDeleteTitle' => '选择您要删除的对象:',
+ 'UI:BulkDeleteTitle' => '请选择要删除的对象:',
'UI:PageTitle:ObjectCreated' => ITOP_APPLICATION_SHORT.' 对象已创建.',
'UI:Title:Object_Of_Class_Created' => '%1$s - %2$s已创建.',
- 'UI:Toggle:CustomDashboard' => '自定义',
- 'UI:Toggle:StandardDashboard' => '标准',
'UI:Apply_Stimulus_On_Object_In_State_ToTarget_State' => '应用 %1$s 在对象: %2$s上, 从 %3$s 状态到目标状态: %4$s.',
'UI:ObjectCouldNotBeWritten' => '对象不能写入: %1$s',
'UI:PageTitle:FatalError' => ITOP_APPLICATION_SHORT.' - 致命错误',
'UI:SystemIntrusion' => '访问被禁止. 您正尝试未被许可的操作.',
'UI:FatalErrorMessage' => '致命错误, '.ITOP_APPLICATION_SHORT.'无法继续.',
'UI:Error_Details' => '错误: %1$s.',
+
'UI:PageTitle:ProfileProjections' => ITOP_APPLICATION_SHORT.'用户管理 - 角色映射',
'UI:UserManagement:Class' => '类型',
'UI:UserManagement:Class+' => '对象的类型',
@@ -934,59 +964,69 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:UserManagement:NoLifeCycleApplicable' => '不适用',
'UI:UserManagement:NoLifeCycleApplicable+' => '此类型未定义生命周期',
'UI:UserManagement:GrantMatrix' => '授权矩阵',
+
'Menu:SystemTools' => '系统',
+
'UI:ChangeManagementMenu' => '变更管理',
'UI:ChangeManagementMenu+' => '变更管理',
'UI:ChangeManagementMenu:Title' => '变更概况',
'UI-ChangeManagementMenu-ChangesByType' => '按类别划分的变更',
'UI-ChangeManagementMenu-ChangesByStatus' => '按状态划分的变更',
'UI-ChangeManagementMenu-ChangesNotYetAssigned' => '尚未分配的变更',
+
'UI:ConfigurationManagementMenu' => '配置管理',
'UI:ConfigurationManagementMenu+' => '配置管理',
'UI:ConfigurationManagementMenu:Title' => '基础架构概况',
'UI-ConfigurationManagementMenu-InfraByType' => '按类别划分基础架构对象',
'UI-ConfigurationManagementMenu-InfraByStatus' => '按状态划分基础架构对象',
+
'UI:ConfigMgmtMenuOverview:Title' => '配置管理仪表盘',
'UI-ConfigMgmtMenuOverview-FunctionalCIbyStatus' => '按状态配置项目',
'UI-ConfigMgmtMenuOverview-FunctionalCIByType' => '按类别配置项目',
+
'UI:RequestMgmtMenuOverview:Title' => '需求管理仪表盘',
- 'UI-RequestManagementOverview-RequestByService' => '按服务划分用户需求',
- 'UI-RequestManagementOverview-RequestByPriority' => '按优先级划分用户需求',
- 'UI-RequestManagementOverview-RequestUnassigned' => '尚未分配给办理人的用户需求',
+ 'UI-RequestManagementOverview-RequestByService' => '按服务划分需求',
+ 'UI-RequestManagementOverview-RequestByPriority' => '按优先级划分需求',
+ 'UI-RequestManagementOverview-RequestUnassigned' => '尚未分配给办理人的需求',
+
'UI:IncidentMgmtMenuOverview:Title' => '事件管理仪表盘',
'UI-IncidentManagementOverview-IncidentByService' => '按服务级划分事件',
'UI-IncidentManagementOverview-IncidentByPriority' => '按优先级划分事件',
'UI-IncidentManagementOverview-IncidentUnassigned' => '尚未分配给办理人的事件',
+
'UI:ChangeMgmtMenuOverview:Title' => '变更管理仪表盘',
'UI-ChangeManagementOverview-ChangeByType' => '按类别划分变更',
'UI-ChangeManagementOverview-ChangeUnassigned' => '尚未分配给办理人的变更',
'UI-ChangeManagementOverview-ChangeWithOutage' => '变更引起的停机',
+
'UI:ServiceMgmtMenuOverview:Title' => '服务管理仪表盘',
'UI-ServiceManagementOverview-CustomerContractToRenew' => '客户合同需在30日内更新',
'UI-ServiceManagementOverview-ProviderContractToRenew' => '供应商合同需在30日内更新',
+
'UI:ContactsMenu' => '联系人',
'UI:ContactsMenu+' => '联系人',
'UI:ContactsMenu:Title' => '联系人概况',
'UI-ContactsMenu-ContactsByLocation' => '按地点划分联系人',
'UI-ContactsMenu-ContactsByType' => '按类别划分联系人',
'UI-ContactsMenu-ContactsByStatus' => '按状态划分联系人',
+
'UI:NotificationsMenu:Title' => '配置通知',
'UI:NotificationsMenu:Help' => '帮助',
- 'UI:NotificationsMenu:HelpContent' => '在'.ITOP_APPLICATION_SHORT.'中, 通知可以被自定义. 它们是基于两个对象集: 触发器和操作.
+ 'UI:NotificationsMenu:HelpContent' => '在'.ITOP_APPLICATION_SHORT.'中, 通知可以被自定义. 它们基于两个对象集: 触发器和操作.
触发器定义了什么时候发送通知. '.ITOP_APPLICATION_SHORT.'内核自带一些触发器, 另一些触发器可由扩展提供:
- - 一些触发器执行于指定类型的对象被创建后, 更新后或删除后.
- - 一些触发器执行于指定类型的对象进入或离开ve指定状态.
- - 一些触发器执行于TTO阈值或TTR阈值预设值达到时.
+ - 有的触发器执行于指定类型的对象被创建后, 更新后或删除后.
+ - 有的触发器执行于指定类型的对象进入或离开指定状态.
+ - 有的触发器执行于TTO阈值或TTR阈值预设值达到时.
-操作定义触发器执行时要运行的动作. 目前仅支持2类动作:
+操作定义了触发器执行时要运行的动作. 目前仅支持3类动作:
- 发送电子邮件: 此动作同时需要指定发送的邮件所使用的模板, 以及一些其他参数, 例如收件人, 优先级, 等.
这里有一个专用的页面: email.test.php可用于测试和调试PHP的邮件配置.
- - Sending a newsroom message: Display a news to user directly in the application through the newsroom (bell icon on the left menu)
- - 外部webhook: 允许通过发送结构化数据到指定URL来与第三方应用集成.
+ - 发送新闻消息: 在应用程序中通过新闻室直接向用户显示新闻消息(左侧菜单上的铃铛图标)
+ - 调用外部webhook: 允许通过发送结构化数据到指定URL来与第三方应用集成.
若要执行, 操作必须和触发器相关联.
@@ -1001,18 +1041,22 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:NotificationsMenu:Actions:ActionWebhook' => 'Webhook操作 (外部集成)',
'UI:NotificationsMenu:Actions:Action' => '其它操作',
'UI:NotificationsMenu:AvailableActions' => '有效的操作',
+
'Menu:TagAdminMenu' => '标签配置',
'Menu:TagAdminMenu+' => '标签值管理',
'UI:TagAdminMenu:Title' => '标签配置',
'UI:TagAdminMenu:NoTags' => '未配置标签',
'UI:TagSetFieldData:Error' => '错误: %1$s',
+
'UI:iTopVersion:Short' => '%1$s 版本 %2$s',
'UI:iTopVersion:Long' => '%1$s 版本 %2$s-%3$s 创建于 %4$s',
'UI:PropertiesTab' => '属性',
+
'UI:OpenDocumentInNewWindow_' => '打开',
'UI:DownloadDocument_' => '下载',
'UI:Document:NoPreview' => '此类型文档无法预览',
'UI:Download-CSV' => '下载 %1$s',
+
'UI:DeadlineMissedBy_duration' => '超过 %1$s',
'UI:Deadline_LessThan1Min' => '< 1分钟',
'UI:Deadline_Minutes' => '%1$d分钟',
@@ -1127,14 +1171,15 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:Pagination:PageSize' => '每页%1$s个对象',
'UI:Pagination:PagesLabel' => '页:',
'UI:Pagination:All' => '全部',
- 'UI:HierarchyOf_Class' => '%1$s层级',
- 'UI:Preferences' => '首选项...',
+ 'UI:HierarchyOf_Class' => '%1$s 架构',
+ 'UI:Preferences' => '偏好设置...',
'UI:ArchiveModeOn' => '激活归档模式',
'UI:ArchiveModeOff' => '关闭归档模式',
'UI:ArchiveMode:Banner' => '归档模式',
'UI:ArchiveMode:Banner+' => '已归档的对象可见但不允许修改',
'UI:FavoriteOrganizations' => '快速访问',
- 'UI:FavoriteOrganizations+' => '进入组织下的列表,可实现通过下拉菜单快速访问. 请注意,这并不是一个安全设置, 其它组织的对象依然可以通过选择 "所有组织" 下拉列表看到.',
+ 'UI:FavoriteOrganizations+' => '进入组织下的列表,可实现通过下拉菜单快速访问.'.
+ '请注意,这并不是一个安全设置, 其它组织的对象依然可以通过选择 "所有组织" 下拉列表看到.',
'UI:FavoriteLanguage' => '语言',
'UI:Favorites:SelectYourLanguage' => '选择语言',
'UI:FavoriteOtherSettings' => '其它设置',
@@ -1157,6 +1202,7 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:PrintResolution:LetterLandscape' => '横向信纸',
'UI:Toggle:SwitchToStandardDashboard' => '切换到标准仪表盘',
'UI:Toggle:SwitchToCustomDashboard' => '切换到自定义仪表盘',
+
'UI:ConfigureThisList' => '配置列表...',
'UI:ListConfigurationTitle' => '列表配置',
'UI:ColumnsAndSortOrder' => '列和排序顺序:',
@@ -1172,12 +1218,13 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:ExtField_AsRemoteField' => '%1$s (%2$s)',
'UI:Button:MoveUp' => '上移',
'UI:Button:MoveDown' => '下移',
+
'UI:OQL:UnknownClassAndFix' => '未知类型 "%1$s". 您可以试试 "%2$s".',
'UI:OQL:UnknownClassNoFix' => '未知类型 "%1$s"',
+
'UI:Dashboard:EditCustom' => '编辑自定义版本...',
'UI:Dashboard:CreateCustom' => '新建自定义版本...',
'UI:Dashboard:DeleteCustom' => '删除自定义版本...',
- 'UI:Dashboard:Edit' => '编辑这个页面...',
'UI:Dashboard:RevertConfirm' => '每个地方都会恢复到初始版本. 请确认您要这样做.',
'UI:ExportDashBoard' => '导出到文件',
'UI:ImportDashBoard' => '从文件导入...',
@@ -1185,11 +1232,12 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:ImportDashboardText' => '选择要导入的仪表盘文件:',
'UI:Dashboard:Actions' => '仪表盘操作',
'UI:Dashboard:NotUpToDateUntilContainerSaved' => '此仪表盘显示的信息不包含后续的更新.',
- 'UI:Dashboard:Revert' => '还原到初始版本...',
+
'UI:DashletCreation:Title' => '新建组件',
'UI:DashletCreation:Dashboard' => '仪表盘',
- 'UI:DashletCreation:DashletType' => '组件类型',
+ 'UI:DashletCreation:DashletType' => '仪表类型',
'UI:DashletCreation:EditNow' => '编辑仪表盘',
+
'UI:DashboardEdit:Title' => '仪表盘编辑器',
'UI:DashboardEdit:DashboardTitle' => '标题',
'UI:DashboardEdit:AutoReload' => '自动刷新',
@@ -1197,31 +1245,38 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:DashboardEdit:AutoReloadSec+' => '最小值是 %1$d 秒',
'UI:DashboardEdit:Revert' => '撤回',
'UI:DashboardEdit:Apply' => '应用',
+
'UI:DashboardEdit:Layout' => '布局',
'UI:DashboardEdit:Properties' => '仪表盘属性',
- 'UI:DashboardEdit:Dashlets' => '可用的组件',
- 'UI:DashboardEdit:DashletProperties' => '组件属性',
+ 'UI:DashboardEdit:Dashlets' => '可用的仪表',
+ 'UI:DashboardEdit:DashletProperties' => '仪表属性',
+
'UI:Form:Property' => '属性',
'UI:Form:Value' => '值',
+
'UI:DashletUnknown:Label' => '未知',
'UI:DashletUnknown:Description' => '未知仪表盘 (可能已卸载)',
'UI:DashletUnknown:RenderText:View' => '此仪表盘无法渲染.',
'UI:DashletUnknown:RenderText:Edit' => '此仪表盘无法渲染 (类型 "%1$s"). 请与管理员确认其可用.',
'UI:DashletUnknown:RenderNoDataText:Edit' => '此仪表盘无预览 (类型 "%1$s").',
'UI:DashletUnknown:Prop-XMLConfiguration' => '配置 (显示为纯 XML)',
+
'UI:DashletProxy:Label' => '代理',
- 'UI:DashletProxy:Description' => '代理仪表盘',
+ 'UI:DashletProxy:Description' => '代理仪表',
'UI:DashletProxy:RenderNoDataText:Edit' => '第三方组件无法预览 (类型 "%1$s").',
'UI:DashletProxy:Prop-XMLConfiguration' => '配置 (显示为纯 XML)',
+
'UI:DashletPlainText:Label' => '文本',
'UI:DashletPlainText:Description' => '纯文本 (无格式)',
'UI:DashletPlainText:Prop-Text' => '内容',
'UI:DashletPlainText:Prop-Text:Default' => '请在这里输入内容...',
+
'UI:DashletObjectList:Label' => '对象列表',
'UI:DashletObjectList:Description' => '对象列表仪表盘',
'UI:DashletObjectList:Prop-Title' => '标题',
'UI:DashletObjectList:Prop-Query' => '查询',
'UI:DashletObjectList:Prop-Menu' => '菜单',
+
'UI:DashletGroupBy:Prop-Title' => '标题',
'UI:DashletGroupBy:Prop-Query' => '查询',
'UI:DashletGroupBy:Prop-Style' => '样式',
@@ -1232,22 +1287,28 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:DashletGroupBy:Prop-GroupBy:DayOfMonth' => '%1$s月天数',
'UI:DashletGroupBy:Prop-GroupBy:Select-Hour' => '%1$s (小时)',
'UI:DashletGroupBy:Prop-GroupBy:Select-Month' => '%1$s (月)',
+ 'UI:DashletGroupBy:Prop-GroupBy:Select-Year' => '%1$s (年)',
'UI:DashletGroupBy:Prop-GroupBy:Select-DayOfWeek' => '%1$s (星期数)',
'UI:DashletGroupBy:Prop-GroupBy:Select-DayOfMonth' => '%1$s (月天数)',
'UI:DashletGroupBy:MissingGroupBy' => '请选择对象的分组字段',
+
'UI:DashletGroupByPie:Label' => '饼图',
'UI:DashletGroupByPie:Description' => '饼图',
'UI:DashletGroupByBars:Label' => '柱状图',
'UI:DashletGroupByBars:Description' => '柱状图',
'UI:DashletGroupByTable:Label' => '分组 (表)',
'UI:DashletGroupByTable:Description' => '列表 (以字段分组)',
+
+ // New in 2.5
'UI:DashletGroupBy:Prop-Function' => '聚合函数',
'UI:DashletGroupBy:Prop-FunctionAttribute' => '函数属性',
'UI:DashletGroupBy:Prop-OrderDirection' => '方向',
'UI:DashletGroupBy:Prop-OrderField' => '排序',
'UI:DashletGroupBy:Prop-Limit' => '限制',
+
'UI:DashletGroupBy:Order:asc' => '升序',
'UI:DashletGroupBy:Order:desc' => '降序',
+
'UI:GroupBy:count' => '个数',
'UI:GroupBy:count+' => '项目数',
'UI:GroupBy:sum' => '总数',
@@ -1258,12 +1319,15 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:GroupBy:min+' => '%1$s 最小值',
'UI:GroupBy:max' => '最大',
'UI:GroupBy:max+' => '%1$s 最大值',
+ // ---
+
'UI:DashletHeaderStatic:Label' => '标头',
'UI:DashletHeaderStatic:Description' => '显示水平分隔符',
'UI:DashletHeaderStatic:Prop-Title' => '标题',
'UI:DashletHeaderStatic:Prop-Title:Default' => '联系人',
'UI:DashletHeaderStatic:Prop-Icon' => '图标',
- 'UI:DashletIcon:None' => 'None~',
+ 'UI:DashletIcon:None' => '无',
+
'UI:DashletHeaderDynamic:Label' => '统计标头',
'UI:DashletHeaderDynamic:Description' => '统计标头 (分组...)',
'UI:DashletHeaderDynamic:Prop-Title' => '标题',
@@ -1274,74 +1338,79 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:DashletHeaderDynamic:Prop-Query' => '查询',
'UI:DashletHeaderDynamic:Prop-GroupBy' => '分组依据',
'UI:DashletHeaderDynamic:Prop-Values' => '值',
+
'UI:DashletBadge:Label' => '证件',
'UI:DashletBadge:Description' => '新建/查询的对象图标',
'UI:DashletBadge:Prop-Class' => '类型',
- 'DayOfWeek-Sunday' => '周日',
- 'DayOfWeek-Monday' => '周一',
- 'DayOfWeek-Tuesday' => '周二',
- 'DayOfWeek-Wednesday' => '周三',
- 'DayOfWeek-Thursday' => '周四',
- 'DayOfWeek-Friday' => '周五',
- 'DayOfWeek-Saturday' => '周六',
- 'Month-01' => '一月',
- 'Month-02' => '二月',
- 'Month-03' => '三月',
- 'Month-04' => '四月',
- 'Month-05' => '五月',
- 'Month-06' => '六月',
- 'Month-07' => '七月',
- 'Month-08' => '八月',
- 'Month-09' => '九月',
- 'Month-10' => '十月',
- 'Month-11' => '十一月',
- 'Month-12' => '十二月',
- 'DayOfWeek-Sunday-Min' => '日',
- 'DayOfWeek-Monday-Min' => '一',
- 'DayOfWeek-Tuesday-Min' => '二',
- 'DayOfWeek-Wednesday-Min' => '三',
- 'DayOfWeek-Thursday-Min' => '四',
- 'DayOfWeek-Friday-Min' => '五',
- 'DayOfWeek-Saturday-Min' => '六',
- 'Month-01-Short' => '1月',
- 'Month-02-Short' => '2月',
- 'Month-03-Short' => '3月',
- 'Month-04-Short' => '4月',
- 'Month-05-Short' => '5月',
- 'Month-06-Short' => '6月',
- 'Month-07-Short' => '7月',
- 'Month-08-Short' => '8月',
- 'Month-09-Short' => '9月',
- 'Month-10-Short' => '10月',
- 'Month-11-Short' => '11月',
- 'Month-12-Short' => '12月',
- 'Calendar-FirstDayOfWeek' => '0',
- 'UI:Menu:ShortcutList' => '创建快捷方式...',
- 'UI:Menu:FilterList' => '显示条件查询列表',
- 'UI:ShortcutRenameDlg:Title' => '重命名快捷方式',
- 'UI:ShortcutListDlg:Title' => '为此列表创建快捷方式',
- 'UI:ShortcutDelete:Confirm' => '请确认是否删除该快捷方式.',
- 'UI:ObjectShortcutInsert' => '插入对象的快捷方式',
- 'Class:Shortcut' => '快捷方式',
- 'Class:Shortcut+' => '',
- 'Class:Shortcut/Attribute:name' => '名称',
- 'Class:Shortcut/Attribute:name+' => '用于菜单和页面的标记',
- 'Class:ShortcutOQL' => '搜索结果的快捷方式',
- 'Class:ShortcutOQL+' => '',
- 'Class:ShortcutOQL/Attribute:oql' => '查询',
- 'Class:ShortcutOQL/Attribute:oql+' => '定义执行搜索的对象列表的OQL',
- 'Class:TagSetFieldData/Attribute:finalclass' => '标签类型',
- 'Class:TagSetFieldData/Attribute:obj_attcode' => '字段编码',
- 'Class:TagSetFieldData/Attribute:obj_class' => '对象类型',
- 'Class:ShortcutOQL/Attribute:auto_reload' => '自动刷新',
- 'Class:ShortcutOQL/Attribute:auto_reload/Value:none' => '禁用',
+
+ 'DayOfWeek-Sunday' => '周日',
+ 'DayOfWeek-Monday' => '周一',
+ 'DayOfWeek-Tuesday' => '周二',
+ 'DayOfWeek-Wednesday' => '周三',
+ 'DayOfWeek-Thursday' => '周四',
+ 'DayOfWeek-Friday' => '周五',
+ 'DayOfWeek-Saturday' => '周六',
+ 'Month-01' => '一月',
+ 'Month-02' => '二月',
+ 'Month-03' => '三月',
+ 'Month-04' => '四月',
+ 'Month-05' => '五月',
+ 'Month-06' => '六月',
+ 'Month-07' => '七月',
+ 'Month-08' => '八月',
+ 'Month-09' => '九月',
+ 'Month-10' => '十月',
+ 'Month-11' => '十一月',
+ 'Month-12' => '十二月',
+
+ // Short version for the DatePicker
+ 'DayOfWeek-Sunday-Min' => '日',
+ 'DayOfWeek-Monday-Min' => '一',
+ 'DayOfWeek-Tuesday-Min' => '二',
+ 'DayOfWeek-Wednesday-Min' => '三',
+ 'DayOfWeek-Thursday-Min' => '四',
+ 'DayOfWeek-Friday-Min' => '五',
+ 'DayOfWeek-Saturday-Min' => '六',
+ 'Month-01-Short' => '1月',
+ 'Month-02-Short' => '2月',
+ 'Month-03-Short' => '3月',
+ 'Month-04-Short' => '4月',
+ 'Month-05-Short' => '5月',
+ 'Month-06-Short' => '6月',
+ 'Month-07-Short' => '7月',
+ 'Month-08-Short' => '8月',
+ 'Month-09-Short' => '9月',
+ 'Month-10-Short' => '10月',
+ 'Month-11-Short' => '11月',
+ 'Month-12-Short' => '12月',
+ 'Calendar-FirstDayOfWeek' => '0',
+ // 0 = Sunday, 1 = Monday, etc...
+
+ 'UI:Menu:ShortcutList' => '创建快捷方式...',
+ 'UI:Menu:FilterList' => '显示条件查询列表',
+ 'UI:ShortcutRenameDlg:Title' => '重命名快捷方式',
+ 'UI:ShortcutListDlg:Title' => '为此列表创建快捷方式',
+ 'UI:ShortcutDelete:Confirm' => '请确认是否删除该快捷方式.',
+ 'UI:ObjectShortcutInsert' => '插入对象的快捷方式',
+ 'Class:Shortcut' => '快捷方式',
+ 'Class:Shortcut+' => '',
+ 'Class:Shortcut/Attribute:name' => '名称',
+ 'Class:Shortcut/Attribute:name+' => '用于菜单和页面的标记',
+ 'Class:ShortcutOQL' => '搜索结果的快捷方式',
+ 'Class:ShortcutOQL+' => '',
+ 'Class:ShortcutOQL/Attribute:oql' => '查询',
+ 'Class:ShortcutOQL/Attribute:oql+' => '定义执行搜索的对象列表的OQL',
+ 'Class:ShortcutOQL/Attribute:auto_reload' => '自动刷新',
+ 'Class:ShortcutOQL/Attribute:auto_reload/Value:none' => '禁用',
'Class:ShortcutOQL/Attribute:auto_reload/Value:custom' => '自定义频率',
- 'Class:ShortcutOQL/Attribute:auto_reload_sec' => '自动刷新间隔 (秒)',
- 'Class:ShortcutOQL/Attribute:auto_reload_sec/tip' => '最小值是 %1$d 秒',
+ 'Class:ShortcutOQL/Attribute:auto_reload_sec' => '自动刷新间隔 (秒)',
+ 'Class:ShortcutOQL/Attribute:auto_reload_sec/tip' => '最小值是 %1$d 秒',
+
'UI:FillAllMandatoryFields' => '请填写所有的必填项.',
- 'UI:ValueMustBeSet' => '必填',
+ 'UI:ValueMustBeSet' => '必填',
'UI:ValueMustBeChanged' => '必须修改这个值',
'UI:ValueInvalidFormat' => '格式无效',
+
'UI:CSVImportConfirmTitle' => '请确认本次操作',
'UI:CSVImportConfirmMessage' => '请确认是否继续?',
'UI:CSVImportError_items' => '错误: %1$d',
@@ -1367,21 +1436,26 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
| i | 分 (2位数, 比如 00..59) |
| s | 秒 (2位数, 比如 00..59) |
',
+
'UI:Button:Remove' => '移除',
'UI:AddAnExisting_Class' => '添加 %1$s...',
'UI:SelectionOf_Class' => '选择 %1$s',
+
'UI:AboutBox' => '关于'.ITOP_APPLICATION_SHORT.'...',
'UI:About:Title' => '关于'.ITOP_APPLICATION_SHORT, 'UI:About:DataModel' => '数据模型',
+ 'UI:About:DataModel' => '数据模型',
'UI:About:Support' => '支持信息',
'UI:About:Licenses' => '许可证',
'UI:About:InstallationOptions' => '已安装的模块',
'UI:About:ManualExtensionSource' => '扩展',
'UI:About:Extension_Version' => '版本: %1$s',
'UI:About:RemoteExtensionSource' => '数据',
+
'UI:DisconnectedDlgMessage' => '您已断开. 要继续使用,需要重新验证您的用户名和密码.',
'UI:DisconnectedDlgTitle' => '警告!',
'UI:LoginAgain' => '再次登录',
'UI:StayOnThePage' => '保持在当前页面',
+
'ExcelExporter:ExportMenu' => 'Excel 导出...',
'ExcelExporter:ExportDialogTitle' => 'Excel 导出',
'ExcelExporter:ExportButton' => '导出',
@@ -1393,7 +1467,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'ExcelExport:PreparingExport' => '正在准备导出...',
'ExcelExport:Statistics' => '状态',
'portal:legacy_portal' => '终端用户门户',
- 'portal:backoffice' => ITOP_APPLICATION_SHORT.'后台用户界面',
+ 'portal:backoffice' => ITOP_APPLICATION_SHORT.'后台管理界面',
+
'UI:CurrentObjectIsLockedBy_User' => '对象被锁定, 因为正在修改%1$s.',
'UI:CurrentObjectIsLockedBy_User_Explanation' => '此对象正在被%1$s修改. 您的修改无法提交以避免冲突.',
'UI:CurrentObjectIsSoftLockedBy_User' => '此对象当前正在被%1$s修改. 在其修改结束后您将能提交您的修改.',
@@ -1401,32 +1476,44 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:CurrentObjectLockExpired_Explanation' => '防止对象被并发修改的锁定已失效. 其他用户已允许修改当前对象因此您不能再提交您的修改.',
'UI:ConcurrentLockKilled' => '阻止并发修改当前对象的锁定已被删除.',
'UI:Menu:KillConcurrentLock' => '消除并发修改锁定!',
+
'UI:Menu:ExportPDF' => '导出PDF...',
- 'UI:Menu:PrintableVersion' => '打印',
+ 'UI:Menu:PrintableVersion' => '打印友好的版本',
+
'UI:BrowseInlineImages' => '浏览图片...',
'UI:UploadInlineImageLegend' => '上传新图片',
'UI:SelectInlineImageToUpload' => '选择要上传的图片',
'UI:AvailableInlineImagesLegend' => '可用的图片',
'UI:NoInlineImage' => '服务器上没有图片. 使用上面的 "浏览" 按钮, 从您的电脑上选择并上传到服务器.',
'UI:MissingInlineImage' => '缺少图片',
+
'UI:ToggleFullScreen' => '切换最大化/最小化',
'UI:Button:ResetImage' => '恢复之前的图片',
'UI:Button:RemoveImage' => '移除图片',
'UI:Button:UploadImage' => '从硬盘上传图像',
'UI:UploadNotSupportedInThisMode' => '本模式下不支持修改文件或图片.',
+
'UI:Button:RemoveDocument' => '移除文档',
+
+ // Search form
'UI:Search:Toggle' => '折叠/展开',
'UI:Search:AutoSubmit:DisabledHint' => '此类别已禁用自动提交',
'UI:Search:Obsolescence:DisabledHint' => '根据您的设置, 废弃的数据会被隐藏',
'UI:Search:NoAutoSubmit:ExplainText' => '在搜索框中添加规则, 或者单击对象按钮查看对象.',
'UI:Search:Criterion:MoreMenu:AddCriteria' => '添加条件',
+ // - Add new criteria button
'UI:Search:AddCriteria:List:RecentlyUsed:Title' => '最近使用',
'UI:Search:AddCriteria:List:MostPopular:Title' => '最常用',
'UI:Search:AddCriteria:List:Others:Title' => '其它',
'UI:Search:AddCriteria:List:RecentlyUsed:Placeholder' => '还没有.',
+
+ // - Criteria header actions
'UI:Search:Criteria:Toggle' => '折叠/展开',
'UI:Search:Criteria:Remove' => '移除',
'UI:Search:Criteria:Locked' => '已锁定',
+
+ // - Criteria titles
+ // - Default widget
'UI:Search:Criteria:Title:Default:Any' => '%1$s: 任何',
'UI:Search:Criteria:Title:Default:Empty' => '%1$s 为空',
'UI:Search:Criteria:Title:Default:NotEmpty' => '%1$s 不为空',
@@ -1448,45 +1535,62 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:Search:Criteria:Title:Default:Between:All' => '%1$s: 任何',
'UI:Search:Criteria:Title:Default:Between:From' => '%1$s 从 %2$s',
'UI:Search:Criteria:Title:Default:Between:Until' => '%1$s 到 %2$s',
+ // - Numeric widget
+ // None yet
+ // - DateTime widget
'UI:Search:Criteria:Title:DateTime:Between' => '%2$s <= 1$s <= %3$s',
+ // - Enum widget
'UI:Search:Criteria:Title:Enum:In' => '%1$s: %2$s',
'UI:Search:Criteria:Title:Enum:In:Many' => '%1$s: %2$s 和 %3$s 其他',
'UI:Search:Criteria:Title:Enum:In:All' => '%1$s: 任何',
+ // - TagSet widget
'UI:Search:Criteria:Title:TagSet:Matches' => '%1$s: %2$s',
+ // - External key widget
'UI:Search:Criteria:Title:ExternalKey:Empty' => '%1$s 已定义',
'UI:Search:Criteria:Title:ExternalKey:NotEmpty' => '%1$s 未定义',
'UI:Search:Criteria:Title:ExternalKey:Equals' => '%1$s %2$s',
'UI:Search:Criteria:Title:ExternalKey:In' => '%1$s: %2$s',
'UI:Search:Criteria:Title:ExternalKey:In:Many' => '%1$s: %2$s 和 %3$s 其他',
'UI:Search:Criteria:Title:ExternalKey:In:All' => '%1$s: 任何',
+ // - Hierarchical key widget
'UI:Search:Criteria:Title:HierarchicalKey:Empty' => '%1$s 已定义',
'UI:Search:Criteria:Title:HierarchicalKey:NotEmpty' => '%1$s 未定义',
'UI:Search:Criteria:Title:HierarchicalKey:Equals' => '%1$s %2$s',
'UI:Search:Criteria:Title:HierarchicalKey:In' => '%1$s: %2$s',
'UI:Search:Criteria:Title:HierarchicalKey:In:Many' => '%1$s: %2$s 和 %3$s 其他',
'UI:Search:Criteria:Title:HierarchicalKey:In:All' => '%1$s: 任何',
+
+ // - Criteria operators
+ // - Default widget
'UI:Search:Criteria:Operator:Default:Empty' => '为空',
'UI:Search:Criteria:Operator:Default:NotEmpty' => '非空',
'UI:Search:Criteria:Operator:Default:Equals' => '等于',
'UI:Search:Criteria:Operator:Default:Between' => '之间',
+ // - String widget
'UI:Search:Criteria:Operator:String:Contains' => '包含',
'UI:Search:Criteria:Operator:String:StartsWith' => '起始为',
'UI:Search:Criteria:Operator:String:EndsWith' => '结尾是',
'UI:Search:Criteria:Operator:String:RegExp' => '正则表达式.',
+ // - Numeric widget
'UI:Search:Criteria:Operator:Numeric:Equals' => '等于',
'UI:Search:Criteria:Operator:Numeric:GreaterThan' => '大于',
'UI:Search:Criteria:Operator:Numeric:GreaterThanOrEquals' => '大于/等于',
'UI:Search:Criteria:Operator:Numeric:LessThan' => '小于',
'UI:Search:Criteria:Operator:Numeric:LessThanOrEquals' => '小于/等于',
'UI:Search:Criteria:Operator:Numeric:Different' => '不同',
+ // - Tag Set Widget
'UI:Search:Criteria:Operator:TagSet:Matches' => '匹配',
+
+ // - Other translations
'UI:Search:Value:Filter:Placeholder' => '筛选器...',
'UI:Search:Value:Search:Placeholder' => '搜索...',
'UI:Search:Value:Autocomplete:StartTyping' => '开始输入值.',
'UI:Search:Value:Autocomplete:Wait' => '请稍候...',
'UI:Search:Value:Autocomplete:NoResult' => '没有找到结果.',
- 'UI:Search:Value:Toggler:CheckAllNone' => '全选/不选',
- 'UI:Search:Value:Toggler:CheckAllNoneFiltered' => '全选/不选',
+ 'UI:Search:Value:Toggler:CheckAllNone' => '全选/全不选',
+ 'UI:Search:Value:Toggler:CheckAllNoneFiltered' => '全选/全不选',
+
+ // - Widget other translations
'UI:Search:Criteria:Numeric:From' => '从',
'UI:Search:Criteria:Numeric:Until' => '到',
'UI:Search:Criteria:Numeric:PlaceholderFrom' => '任何',
@@ -1500,9 +1604,13 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'UI:Search:Criteria:DateTime:PlaceholderUntil' => '任何日期',
'UI:Search:Criteria:DateTime:PlaceholderUntilTime' => '任何日期',
'UI:Search:Criteria:HierarchicalKey:ChildrenIncluded:Hint' => '将会包含选中对象的子集.',
+
'UI:Search:Criteria:Raw:Filtered' => '已筛选',
'UI:Search:Criteria:Raw:FilteredOn' => '基于%1$s筛选',
+
'UI:StateChanged' => '状态已改变',
+
+ 'UI:AddSubTree' => '添加条目',
]);
//
@@ -1512,13 +1620,16 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Expression:Operator:AND' => ' 与 ',
'Expression:Operator:OR' => ' 或 ',
'Expression:Operator:=' => ': ',
+
'Expression:Unit:Short:DAY' => '日',
'Expression:Unit:Short:WEEK' => '周',
'Expression:Unit:Short:MONTH' => '月',
'Expression:Unit:Short:YEAR' => '年',
+
'Expression:Unit:Long:DAY' => '日',
'Expression:Unit:Long:HOUR' => '小时',
'Expression:Unit:Long:MINUTE' => '分钟',
+
'Expression:Verb:NOW' => '现在',
'Expression:Verb:ISNULL' => ': 未定义',
]);
@@ -1544,31 +1655,31 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
]);
Dict::Add('ZH CN', 'Chinese', '简体中文', [
- 'Menu:DataSources' => '同步数据源',
- 'Menu:DataSources+' => '所有同步数据源',
- 'Menu:AuditCategories' => '审计类别',
- 'Menu:AuditCategories+' => '审计类别',
- 'Menu:AuditCategories:Title' => '审计设置',
- 'Menu:RunQueriesMenu' => '运行查询',
- 'Menu:RunQueriesMenu+' => '运行任何查询',
- 'Menu:QueryMenu' => '预定义查询',
- 'Menu:QueryMenu+' => '可重复利用的查询语句',
- 'Menu:UniversalSearchMenu' => '全局搜索',
- 'Menu:UniversalSearchMenu+' => '搜索所有...',
- 'Menu:UserManagementMenu' => '用户管理',
- 'Menu:UserManagementMenu+' => '谁可以访问'.ITOP_APPLICATION_SHORT.'以及可以做什么?',
- 'Menu:ProfilesMenu' => '角色',
- 'Menu:ProfilesMenu+' => '查看已有的角色',
- 'Menu:ProfilesMenu:Title' => '角色',
- 'Menu:UserAccountsMenu' => '用户账号',
- 'Menu:UserAccountsMenu+' => '处理 '.ITOP_APPLICATION_SHORT.' 用户及权限',
- 'Menu:UserAccountsMenu:Title' => '用户账号',
- 'Menu:UserManagement' => '用户管理',
- 'Menu:Queries' => '查询',
- 'Menu:ConfigurationTools' => '配置',
- 'Menu:ConfigEditor' => '基本配置',
- 'Menu:ConfigEditor+' => '配置文件编辑器',
- 'Menu:Integrations' => '集成',
- 'Menu:Integrations+' => '~~',
+ 'Menu:DataSources' => '同步数据源',
+ 'Menu:DataSources+' => '所有同步数据源',
+ 'Menu:AuditCategories' => '审计类别',
+ 'Menu:AuditCategories+' => '审计类别',
+ 'Menu:AuditCategories:Title' => '审计设置',
+ 'Menu:RunQueriesMenu' => '运行查询',
+ 'Menu:RunQueriesMenu+' => '运行任何查询',
+ 'Menu:QueryMenu' => '预定义查询',
+ 'Menu:QueryMenu+' => '可重复利用的查询语句',
+ 'Menu:UniversalSearchMenu' => '全局搜索',
+ 'Menu:UniversalSearchMenu+' => '搜索所有...',
+ 'Menu:UserManagementMenu' => '用户管理',
+ 'Menu:UserManagementMenu+' => '谁可以访问'.ITOP_APPLICATION_SHORT.'以及可以做什么?',
+ 'Menu:ProfilesMenu' => '角色',
+ 'Menu:ProfilesMenu+' => '查看已有的角色',
+ 'Menu:ProfilesMenu:Title' => '角色',
+ 'Menu:UserAccountsMenu' => '账号',
+ 'Menu:UserAccountsMenu+' => '处理 '.ITOP_APPLICATION_SHORT.' 用户及权限',
+ 'Menu:UserAccountsMenu:Title' => '账号',
+ 'Menu:UserManagement' => '用户管理',
+ 'Menu:Queries' => '查询',
+ 'Menu:ConfigurationTools' => '配置',
+ 'Menu:ConfigEditor' => '基本配置',
+ 'Menu:ConfigEditor+' => '配置文件编辑器',
+ 'Menu:Integrations' => '集成',
+ 'Menu:Integrations+' => '',
]);
diff --git a/lib/autoload.php b/lib/autoload.php
index 9861c4c24c..1b6f5ac129 100644
--- a/lib/autoload.php
+++ b/lib/autoload.php
@@ -14,7 +14,10 @@ if (PHP_VERSION_ID < 50600) {
echo $err;
}
}
- throw new RuntimeException($err);
+ trigger_error(
+ $err,
+ E_USER_ERROR
+ );
}
require_once __DIR__ . '/composer/autoload_real.php';
diff --git a/lib/composer/autoload_classmap.php b/lib/composer/autoload_classmap.php
index 49bbb7ea6a..107de11d40 100644
--- a/lib/composer/autoload_classmap.php
+++ b/lib/composer/autoload_classmap.php
@@ -131,6 +131,7 @@ return array(
'Collator' => $vendorDir . '/symfony/polyfill-intl-icu/Resources/stubs/Collator.php',
'Combodo\\iTop\\Application\\Branding' => $baseDir . '/sources/Application/Branding.php',
'Combodo\\iTop\\Application\\EventRegister\\ApplicationEvents' => $baseDir . '/sources/Application/EventRegister/ApplicationEvents.php',
+ 'Combodo\\iTop\\Application\\Helper\\BulkHelper' => $baseDir . '/sources/Application/Helper/BulkHelper.php',
'Combodo\\iTop\\Application\\Helper\\CKEditorHelper' => $baseDir . '/sources/Application/Helper/CKEditorHelper.php',
'Combodo\\iTop\\Application\\Helper\\ExceptionHandlerHelper' => $baseDir . '/sources/Application/Helper/ExceptionHandlerHelper.php',
'Combodo\\iTop\\Application\\Helper\\ExportHelper' => $baseDir . '/sources/Application/Helper/ExportHelper.php',
@@ -138,6 +139,7 @@ return array(
'Combodo\\iTop\\Application\\Helper\\ImportHelper' => $baseDir . '/sources/Application/Helper/ImportHelper.php',
'Combodo\\iTop\\Application\\Helper\\SearchHelper' => $baseDir . '/sources/Application/Helper/SearchHelper.php',
'Combodo\\iTop\\Application\\Helper\\Session' => $baseDir . '/sources/Application/Helper/Session.php',
+ 'Combodo\\iTop\\Application\\Helper\\SynchroReplicaHelper' => $baseDir . '/sources/Application/Helper/SynchroReplicaHelper.php',
'Combodo\\iTop\\Application\\Helper\\WebResourcesHelper' => $baseDir . '/sources/Application/Helper/WebResourcesHelper.php',
'Combodo\\iTop\\Application\\Newsroom\\iTopNewsroomProvider' => $baseDir . '/sources/Application/Newsroom/iTopNewsroomProvider.php',
'Combodo\\iTop\\Application\\Search\\AjaxSearchException' => $baseDir . '/sources/Application/Search/ajaxsearchexception.class.inc.php',
@@ -640,6 +642,7 @@ return array(
'Combodo\\iTop\\Service\\Router\\Exception\\RouteNotFoundException' => $baseDir . '/sources/Service/Router/Exception/RouteNotFoundException.php',
'Combodo\\iTop\\Service\\Router\\Exception\\RouterException' => $baseDir . '/sources/Service/Router/Exception/RouterException.php',
'Combodo\\iTop\\Service\\Router\\Router' => $baseDir . '/sources/Service/Router/Router.php',
+ 'Combodo\\iTop\\Service\\Startup\\StartupService' => $baseDir . '/sources/Service/Startup/StartupService.php',
'Combodo\\iTop\\Service\\SummaryCard\\SummaryCardService' => $baseDir . '/sources/Service/SummaryCard/SummaryCardService.php',
'Combodo\\iTop\\Service\\TemporaryObjects\\TemporaryObjectConfig' => $baseDir . '/sources/Service/TemporaryObjects/TemporaryObjectConfig.php',
'Combodo\\iTop\\Service\\TemporaryObjects\\TemporaryObjectGC' => $baseDir . '/sources/Service/TemporaryObjects/TemporaryObjectGC.php',
diff --git a/lib/composer/autoload_static.php b/lib/composer/autoload_static.php
index 9d1ba0d725..77991b9ab6 100644
--- a/lib/composer/autoload_static.php
+++ b/lib/composer/autoload_static.php
@@ -28,12 +28,12 @@ class ComposerStaticInitfc0e9e9dea11dcbb6272414776c30685
);
public static $prefixLengthsPsr4 = array (
- 'T' =>
+ 'T' =>
array (
'Twig\\' => 5,
'TheNetworg\\OAuth2\\Client\\' => 25,
),
- 'S' =>
+ 'S' =>
array (
'Symfony\\Runtime\\Symfony\\Component\\' => 34,
'Symfony\\Polyfill\\Php83\\' => 23,
@@ -85,7 +85,7 @@ class ComposerStaticInitfc0e9e9dea11dcbb6272414776c30685
'ScssPhp\\ScssPhp\\' => 16,
'Sabberworm\\CSS\\' => 15,
),
- 'P' =>
+ 'P' =>
array (
'Psr\\Log\\' => 8,
'Psr\\Http\\Message\\' => 17,
@@ -96,310 +96,310 @@ class ComposerStaticInitfc0e9e9dea11dcbb6272414776c30685
'PhpParser\\' => 10,
'Pelago\\Emogrifier\\' => 18,
),
- 'L' =>
+ 'L' =>
array (
'League\\OAuth2\\Client\\' => 21,
),
- 'G' =>
+ 'G' =>
array (
'GuzzleHttp\\Psr7\\' => 16,
'GuzzleHttp\\Promise\\' => 19,
'GuzzleHttp\\' => 11,
),
- 'F' =>
+ 'F' =>
array (
'Firebase\\JWT\\' => 13,
),
- 'E' =>
+ 'E' =>
array (
'Egulias\\EmailValidator\\' => 23,
),
- 'D' =>
+ 'D' =>
array (
'Doctrine\\Common\\Lexer\\' => 22,
),
);
public static $prefixDirsPsr4 = array (
- 'Twig\\' =>
+ 'Twig\\' =>
array (
0 => __DIR__ . '/..' . '/twig/twig/src',
),
- 'TheNetworg\\OAuth2\\Client\\' =>
+ 'TheNetworg\\OAuth2\\Client\\' =>
array (
0 => __DIR__ . '/..' . '/thenetworg/oauth2-azure/src',
),
- 'Symfony\\Runtime\\Symfony\\Component\\' =>
+ 'Symfony\\Runtime\\Symfony\\Component\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/runtime/Internal',
),
- 'Symfony\\Polyfill\\Php83\\' =>
+ 'Symfony\\Polyfill\\Php83\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/polyfill-php83',
),
- 'Symfony\\Polyfill\\Mbstring\\' =>
+ 'Symfony\\Polyfill\\Mbstring\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/polyfill-mbstring',
),
- 'Symfony\\Polyfill\\Intl\\Normalizer\\' =>
+ 'Symfony\\Polyfill\\Intl\\Normalizer\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/polyfill-intl-normalizer',
),
- 'Symfony\\Polyfill\\Intl\\Idn\\' =>
+ 'Symfony\\Polyfill\\Intl\\Idn\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/polyfill-intl-idn',
),
- 'Symfony\\Polyfill\\Intl\\Icu\\' =>
+ 'Symfony\\Polyfill\\Intl\\Icu\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/polyfill-intl-icu',
),
- 'Symfony\\Polyfill\\Intl\\Grapheme\\' =>
+ 'Symfony\\Polyfill\\Intl\\Grapheme\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/polyfill-intl-grapheme',
),
- 'Symfony\\Polyfill\\Ctype\\' =>
+ 'Symfony\\Polyfill\\Ctype\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/polyfill-ctype',
),
- 'Symfony\\Contracts\\Translation\\' =>
+ 'Symfony\\Contracts\\Translation\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/translation-contracts',
),
- 'Symfony\\Contracts\\Service\\' =>
+ 'Symfony\\Contracts\\Service\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/service-contracts',
),
- 'Symfony\\Contracts\\EventDispatcher\\' =>
+ 'Symfony\\Contracts\\EventDispatcher\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/event-dispatcher-contracts',
),
- 'Symfony\\Contracts\\Cache\\' =>
+ 'Symfony\\Contracts\\Cache\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/cache-contracts',
),
- 'Symfony\\Component\\Yaml\\' =>
+ 'Symfony\\Component\\Yaml\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/yaml',
),
- 'Symfony\\Component\\VarExporter\\' =>
+ 'Symfony\\Component\\VarExporter\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/var-exporter',
),
- 'Symfony\\Component\\VarDumper\\' =>
+ 'Symfony\\Component\\VarDumper\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/var-dumper',
),
- 'Symfony\\Component\\Validator\\' =>
+ 'Symfony\\Component\\Validator\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/validator',
),
- 'Symfony\\Component\\String\\' =>
+ 'Symfony\\Component\\String\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/string',
),
- 'Symfony\\Component\\Stopwatch\\' =>
+ 'Symfony\\Component\\Stopwatch\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/stopwatch',
),
- 'Symfony\\Component\\Security\\Csrf\\' =>
+ 'Symfony\\Component\\Security\\Csrf\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/security-csrf',
),
- 'Symfony\\Component\\Security\\Core\\' =>
+ 'Symfony\\Component\\Security\\Core\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/security-core',
),
- 'Symfony\\Component\\Runtime\\' =>
+ 'Symfony\\Component\\Runtime\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/runtime',
),
- 'Symfony\\Component\\Routing\\' =>
+ 'Symfony\\Component\\Routing\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/routing',
),
- 'Symfony\\Component\\PropertyInfo\\' =>
+ 'Symfony\\Component\\PropertyInfo\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/property-info',
),
- 'Symfony\\Component\\PropertyAccess\\' =>
+ 'Symfony\\Component\\PropertyAccess\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/property-access',
),
- 'Symfony\\Component\\PasswordHasher\\' =>
+ 'Symfony\\Component\\PasswordHasher\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/password-hasher',
),
- 'Symfony\\Component\\OptionsResolver\\' =>
+ 'Symfony\\Component\\OptionsResolver\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/options-resolver',
),
- 'Symfony\\Component\\Mime\\' =>
+ 'Symfony\\Component\\Mime\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/mime',
),
- 'Symfony\\Component\\Mailer\\' =>
+ 'Symfony\\Component\\Mailer\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/mailer',
),
- 'Symfony\\Component\\HttpKernel\\' =>
+ 'Symfony\\Component\\HttpKernel\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/http-kernel',
),
- 'Symfony\\Component\\HttpFoundation\\' =>
+ 'Symfony\\Component\\HttpFoundation\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/http-foundation',
),
- 'Symfony\\Component\\Form\\' =>
+ 'Symfony\\Component\\Form\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/form',
),
- 'Symfony\\Component\\Finder\\' =>
+ 'Symfony\\Component\\Finder\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/finder',
),
- 'Symfony\\Component\\Filesystem\\' =>
+ 'Symfony\\Component\\Filesystem\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/filesystem',
),
- 'Symfony\\Component\\EventDispatcher\\' =>
+ 'Symfony\\Component\\EventDispatcher\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/event-dispatcher',
),
- 'Symfony\\Component\\ErrorHandler\\' =>
+ 'Symfony\\Component\\ErrorHandler\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/error-handler',
),
- 'Symfony\\Component\\Dotenv\\' =>
+ 'Symfony\\Component\\Dotenv\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/dotenv',
),
- 'Symfony\\Component\\DependencyInjection\\' =>
+ 'Symfony\\Component\\DependencyInjection\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/dependency-injection',
),
- 'Symfony\\Component\\CssSelector\\' =>
+ 'Symfony\\Component\\CssSelector\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/css-selector',
),
- 'Symfony\\Component\\Console\\' =>
+ 'Symfony\\Component\\Console\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/console',
),
- 'Symfony\\Component\\Config\\' =>
+ 'Symfony\\Component\\Config\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/config',
),
- 'Symfony\\Component\\Cache\\' =>
+ 'Symfony\\Component\\Cache\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/cache',
),
- 'Symfony\\Bundle\\WebProfilerBundle\\' =>
+ 'Symfony\\Bundle\\WebProfilerBundle\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/web-profiler-bundle',
),
- 'Symfony\\Bundle\\TwigBundle\\' =>
+ 'Symfony\\Bundle\\TwigBundle\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/twig-bundle',
),
- 'Symfony\\Bundle\\FrameworkBundle\\' =>
+ 'Symfony\\Bundle\\FrameworkBundle\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/framework-bundle',
),
- 'Symfony\\Bundle\\DebugBundle\\' =>
+ 'Symfony\\Bundle\\DebugBundle\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/debug-bundle',
),
- 'Symfony\\Bridge\\Twig\\' =>
+ 'Symfony\\Bridge\\Twig\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/twig-bridge',
),
- 'Soundasleep\\' =>
+ 'Soundasleep\\' =>
array (
0 => __DIR__ . '/..' . '/soundasleep/html2text/src',
),
- 'ScssPhp\\ScssPhp\\' =>
+ 'ScssPhp\\ScssPhp\\' =>
array (
0 => __DIR__ . '/..' . '/scssphp/scssphp/src',
),
- 'Sabberworm\\CSS\\' =>
+ 'Sabberworm\\CSS\\' =>
array (
0 => __DIR__ . '/..' . '/sabberworm/php-css-parser/src',
),
- 'Psr\\Log\\' =>
+ 'Psr\\Log\\' =>
array (
0 => __DIR__ . '/..' . '/psr/log/src',
),
- 'Psr\\Http\\Message\\' =>
+ 'Psr\\Http\\Message\\' =>
array (
0 => __DIR__ . '/..' . '/psr/http-factory/src',
1 => __DIR__ . '/..' . '/psr/http-message/src',
),
- 'Psr\\Http\\Client\\' =>
+ 'Psr\\Http\\Client\\' =>
array (
0 => __DIR__ . '/..' . '/psr/http-client/src',
),
- 'Psr\\EventDispatcher\\' =>
+ 'Psr\\EventDispatcher\\' =>
array (
0 => __DIR__ . '/..' . '/psr/event-dispatcher/src',
),
- 'Psr\\Container\\' =>
+ 'Psr\\Container\\' =>
array (
0 => __DIR__ . '/..' . '/psr/container/src',
),
- 'Psr\\Cache\\' =>
+ 'Psr\\Cache\\' =>
array (
0 => __DIR__ . '/..' . '/psr/cache/src',
),
- 'PhpParser\\' =>
+ 'PhpParser\\' =>
array (
0 => __DIR__ . '/..' . '/nikic/php-parser/lib/PhpParser',
),
- 'Pelago\\Emogrifier\\' =>
+ 'Pelago\\Emogrifier\\' =>
array (
0 => __DIR__ . '/..' . '/pelago/emogrifier/src',
),
- 'League\\OAuth2\\Client\\' =>
+ 'League\\OAuth2\\Client\\' =>
array (
0 => __DIR__ . '/..' . '/league/oauth2-google/src',
1 => __DIR__ . '/..' . '/league/oauth2-client/src',
),
- 'GuzzleHttp\\Psr7\\' =>
+ 'GuzzleHttp\\Psr7\\' =>
array (
0 => __DIR__ . '/..' . '/guzzlehttp/psr7/src',
),
- 'GuzzleHttp\\Promise\\' =>
+ 'GuzzleHttp\\Promise\\' =>
array (
0 => __DIR__ . '/..' . '/guzzlehttp/promises/src',
),
- 'GuzzleHttp\\' =>
+ 'GuzzleHttp\\' =>
array (
0 => __DIR__ . '/..' . '/guzzlehttp/guzzle/src',
),
- 'Firebase\\JWT\\' =>
+ 'Firebase\\JWT\\' =>
array (
0 => __DIR__ . '/..' . '/firebase/php-jwt/src',
),
- 'Egulias\\EmailValidator\\' =>
+ 'Egulias\\EmailValidator\\' =>
array (
0 => __DIR__ . '/..' . '/egulias/email-validator/src',
),
- 'Doctrine\\Common\\Lexer\\' =>
+ 'Doctrine\\Common\\Lexer\\' =>
array (
0 => __DIR__ . '/..' . '/doctrine/lexer/src',
),
);
public static $prefixesPsr0 = array (
- 'C' =>
+ 'C' =>
array (
- 'Console' =>
+ 'Console' =>
array (
0 => __DIR__ . '/..' . '/pear/console_getopt',
),
),
- 'A' =>
+ 'A' =>
array (
- 'Archive_Tar' =>
+ 'Archive_Tar' =>
array (
0 => __DIR__ . '/..' . '/pear/archive_tar',
),
@@ -532,6 +532,7 @@ class ComposerStaticInitfc0e9e9dea11dcbb6272414776c30685
'Collator' => __DIR__ . '/..' . '/symfony/polyfill-intl-icu/Resources/stubs/Collator.php',
'Combodo\\iTop\\Application\\Branding' => __DIR__ . '/../..' . '/sources/Application/Branding.php',
'Combodo\\iTop\\Application\\EventRegister\\ApplicationEvents' => __DIR__ . '/../..' . '/sources/Application/EventRegister/ApplicationEvents.php',
+ 'Combodo\\iTop\\Application\\Helper\\BulkHelper' => __DIR__ . '/../..' . '/sources/Application/Helper/BulkHelper.php',
'Combodo\\iTop\\Application\\Helper\\CKEditorHelper' => __DIR__ . '/../..' . '/sources/Application/Helper/CKEditorHelper.php',
'Combodo\\iTop\\Application\\Helper\\ExceptionHandlerHelper' => __DIR__ . '/../..' . '/sources/Application/Helper/ExceptionHandlerHelper.php',
'Combodo\\iTop\\Application\\Helper\\ExportHelper' => __DIR__ . '/../..' . '/sources/Application/Helper/ExportHelper.php',
@@ -539,6 +540,7 @@ class ComposerStaticInitfc0e9e9dea11dcbb6272414776c30685
'Combodo\\iTop\\Application\\Helper\\ImportHelper' => __DIR__ . '/../..' . '/sources/Application/Helper/ImportHelper.php',
'Combodo\\iTop\\Application\\Helper\\SearchHelper' => __DIR__ . '/../..' . '/sources/Application/Helper/SearchHelper.php',
'Combodo\\iTop\\Application\\Helper\\Session' => __DIR__ . '/../..' . '/sources/Application/Helper/Session.php',
+ 'Combodo\\iTop\\Application\\Helper\\SynchroReplicaHelper' => __DIR__ . '/../..' . '/sources/Application/Helper/SynchroReplicaHelper.php',
'Combodo\\iTop\\Application\\Helper\\WebResourcesHelper' => __DIR__ . '/../..' . '/sources/Application/Helper/WebResourcesHelper.php',
'Combodo\\iTop\\Application\\Newsroom\\iTopNewsroomProvider' => __DIR__ . '/../..' . '/sources/Application/Newsroom/iTopNewsroomProvider.php',
'Combodo\\iTop\\Application\\Search\\AjaxSearchException' => __DIR__ . '/../..' . '/sources/Application/Search/ajaxsearchexception.class.inc.php',
@@ -1041,6 +1043,7 @@ class ComposerStaticInitfc0e9e9dea11dcbb6272414776c30685
'Combodo\\iTop\\Service\\Router\\Exception\\RouteNotFoundException' => __DIR__ . '/../..' . '/sources/Service/Router/Exception/RouteNotFoundException.php',
'Combodo\\iTop\\Service\\Router\\Exception\\RouterException' => __DIR__ . '/../..' . '/sources/Service/Router/Exception/RouterException.php',
'Combodo\\iTop\\Service\\Router\\Router' => __DIR__ . '/../..' . '/sources/Service/Router/Router.php',
+ 'Combodo\\iTop\\Service\\Startup\\StartupService' => __DIR__ . '/../..' . '/sources/Service/Startup/StartupService.php',
'Combodo\\iTop\\Service\\SummaryCard\\SummaryCardService' => __DIR__ . '/../..' . '/sources/Service/SummaryCard/SummaryCardService.php',
'Combodo\\iTop\\Service\\TemporaryObjects\\TemporaryObjectConfig' => __DIR__ . '/../..' . '/sources/Service/TemporaryObjects/TemporaryObjectConfig.php',
'Combodo\\iTop\\Service\\TemporaryObjects\\TemporaryObjectGC' => __DIR__ . '/../..' . '/sources/Service/TemporaryObjects/TemporaryObjectGC.php',
diff --git a/lib/composer/platform_check.php b/lib/composer/platform_check.php
index f6cf0ea27c..bb733000d3 100644
--- a/lib/composer/platform_check.php
+++ b/lib/composer/platform_check.php
@@ -36,7 +36,8 @@ if ($issues) {
echo 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . str_replace('You are running '.PHP_VERSION.'.', '', implode(PHP_EOL, $issues)) . PHP_EOL.PHP_EOL;
}
}
- throw new \RuntimeException(
- 'Composer detected issues in your platform: ' . implode(' ', $issues)
+ trigger_error(
+ 'Composer detected issues in your platform: ' . implode(' ', $issues),
+ E_USER_ERROR
);
}
diff --git a/pages/UI.php b/pages/UI.php
index a2c949b313..32008146e5 100644
--- a/pages/UI.php
+++ b/pages/UI.php
@@ -5,12 +5,13 @@
* @license http://opensource.org/licenses/AGPL-3.0
*/
+use Combodo\iTop\Application\Helper\BulkHelper;
use Combodo\iTop\Application\Helper\SearchHelper;
use Combodo\iTop\Application\Helper\Session;
+use Combodo\iTop\Application\Helper\SynchroReplicaHelper;
use Combodo\iTop\Application\TwigBase\Twig\TwigHelper;
use Combodo\iTop\Application\UI\Base\Component\Button\ButtonUIBlockFactory;
use Combodo\iTop\Application\UI\Base\Component\DataTable\DataTableUIBlockFactory;
-use Combodo\iTop\Application\UI\Base\Component\Form\Form;
use Combodo\iTop\Application\UI\Base\Component\GlobalSearch\GlobalSearchHelper;
use Combodo\iTop\Application\UI\Base\Component\Input\InputUIBlockFactory;
use Combodo\iTop\Application\UI\Base\Component\Panel\PanelUIBlockFactory;
@@ -577,18 +578,35 @@ try {
///////////////////////////////////////////////////////////////////////////////////////////
case 'select_for_modify_all': // Select the list of objects to be modified (bulk modify)
- UI::OperationSelectForModifyAll($oP);
+ BulkHelper::OperationSelectForModifyAll($oP);
break;
///////////////////////////////////////////////////////////////////////////////////////////
case 'form_for_modify_all': // Form to modify multiple objects (bulk modify)
- UI::OperationFormForModifyAll($oP, $oAppContext);
+ BulkHelper::OperationFormForModifyAll($oP, $oAppContext);
+ break;
+
+ case 'form_for_unlink_all': // Form to modify multiple objects (bulk modify)
+ SynchroReplicaHelper::OperationUnlinkAll($oP, $oAppContext, 'unlink');
+ break;
+ case 'form_for_unlinksynchro_all': // Form to modify multiple objects (bulk modify)
+ SynchroReplicaHelper::OperationUnlinkAll($oP, $oAppContext, 'unlinksynchro');
+ break;
+ case 'form_for_synchro_all': // Form to modify multiple objects (bulk modify)
+ SynchroReplicaHelper::OperationUnlinkAll($oP, $oAppContext, 'synchro');
+ break;
+
+ case 'form_for_allowdelete_all': // Form to modify multiple objects (bulk modify)
+ SynchroReplicaHelper::OperationUnlinkAll($oP, $oAppContext, 'allowdelete');
+ break;
+ case 'form_for_denydelete_all': // Form to modify multiple objects (bulk modify)
+ SynchroReplicaHelper::OperationUnlinkAll($oP, $oAppContext, 'denydelete');
break;
///////////////////////////////////////////////////////////////////////////////////////////
case 'preview_or_modify_all': // Preview or apply bulk modify
- UI::OperationPreviewOrModifyAll($oP, $oAppContext);
+ BulkHelper::OperationPreviewOrModifyAll($oP, $oAppContext);
break;
///////////////////////////////////////////////////////////////////////////////////////////
@@ -627,7 +645,7 @@ try {
'title' => Dict::S('UI:BulkDeleteTitle'),
];
$oChecker = new ActionChecker($oFilter, UR_ACTION_BULK_DELETE);
- DisplayMultipleSelectionForm($oP, $oFilter, 'bulk_delete', $oChecker, [], $aDisplayParams);
+ BulkHelper::DisplayMultipleSelectionForm($oP, $oFilter, 'bulk_delete', $oChecker, [], $aDisplayParams);
break;
///////////////////////////////////////////////////////////////////////////////////////////
@@ -1307,100 +1325,3 @@ try {
'operation' => ($operation ?? 'N/A'),
]);
}
-
-class UI
-{
- /**
- * Operation select_for_modify_all
- *
- * @param iTopWebPage $oP
- *
- * @throws \ApplicationException
- * @throws \ArchivedObjectException
- * @throws \CoreException
- * @throws \OQLException
- */
- public static function OperationSelectForModifyAll(iTopWebPage $oP): void
- {
- $oP->DisableBreadCrumb();
- $oP->set_title(Dict::S('UI:ModifyAllPageTitle'));
- $sFilter = utils::ReadParam('filter', '', false, utils::ENUM_SANITIZATION_FILTER_RAW_DATA);
- if (empty($sFilter)) {
- throw new ApplicationException(Dict::Format('UI:Error:1ParametersMissing', 'filter'));
- }
- $oFilter = DBObjectSearch::unserialize($sFilter); //TODO : check that the filter is valid
- // Add user filter
- $oFilter->UpdateContextFromUser();
- $oChecker = new ActionChecker($oFilter, UR_ACTION_BULK_MODIFY);
- $sClass = $oFilter->GetClass();
- $sClassName = MetaModel::GetName($sClass);
-
- $aDisplayParams = [
- 'icon' => MetaModel::GetClassIcon($sClass, false),
- 'title' => Dict::Format('UI:Modify_ObjectsOf_Class', $sClassName),
- ];
- DisplayMultipleSelectionForm($oP, $oFilter, 'form_for_modify_all', $oChecker, [], $aDisplayParams);
- }
-
- /**
- * Operation form_for_modify_all
- *
- * @param iTopWebPage $oP
- * @param \ApplicationContext $oAppContext
- *
- * @throws \ArchivedObjectException
- * @throws \CoreException
- * @throws \CoreUnexpectedValue
- * @throws \MySQLException
- * @throws \OQLException
- */
- public static function OperationFormForModifyAll(iTopWebPage $oP, ApplicationContext $oAppContext): void
- {
- $oP->DisableBreadCrumb();
- $sFilter = utils::ReadParam('filter', '', false, utils::ENUM_SANITIZATION_FILTER_RAW_DATA);
- $sClass = utils::ReadParam('class', '', false, utils::ENUM_SANITIZATION_FILTER_CLASS);
- $oFullSetFilter = DBObjectSearch::unserialize($sFilter);
- // Add user filter
- $oFullSetFilter->UpdateContextFromUser();
- $aSelectedObj = utils::ReadMultipleSelection($oFullSetFilter);
- $sCancelUrl = "./UI.php?operation=search&filter=".urlencode($sFilter).$oAppContext->GetForLink(true);
- $aContext = ['filter' => utils::EscapeHtml($sFilter)];
- cmdbAbstractObject::DisplayBulkModifyForm($oP, $sClass, $aSelectedObj, 'preview_or_modify_all', $sCancelUrl, [], $aContext);
- }
-
- /**
- * Operation preview_or_modify_all
- *
- * @param iTopWebPage $oP
- * @param \ApplicationContext $oAppContext
- *
- * @throws \ApplicationException
- * @throws \ArchivedObjectException
- * @throws \CoreCannotSaveObjectException
- * @throws \CoreException
- * @throws \DictExceptionMissingString
- * @throws \OQLException
- */
- public static function OperationPreviewOrModifyAll(iTopWebPage $oP, ApplicationContext $oAppContext): void
- {
- $oP->DisableBreadCrumb();
- $sFilter = utils::ReadParam('filter', '', false, 'raw_data');
- $oFilter = DBObjectSearch::unserialize($sFilter); // TO DO : check that the filter is valid
- // Add user filter
- $oFilter->UpdateContextFromUser();
-
- $sClass = utils::ReadParam('class', '', false, 'class');
- $bPreview = utils::ReadParam('preview_mode', '');
- $sSelectedObj = utils::ReadParam('selectObj', '', false, 'raw_data');
- if (empty($sClass) || empty($sSelectedObj)) { // TO DO: check that the class name is valid !
- throw new ApplicationException(Dict::Format('UI:Error:2ParametersMissing', 'class', 'selectObj'));
- }
- $aSelectedObj = explode(',', $sSelectedObj);
- $sCancelUrl = "./UI.php?operation=search&filter=".urlencode($sFilter).$oAppContext->GetForLink(true);
- $aContext = [
- 'filter' => utils::EscapeHtml($sFilter),
- 'selectObj' => $sSelectedObj,
- ];
- cmdbAbstractObject::DoBulkModify($oP, $sClass, $aSelectedObj, 'preview_or_modify_all', $bPreview, $sCancelUrl, $aContext);
- }
-}
diff --git a/setup/ajax.dataloader.php b/setup/ajax.dataloader.php
index 53c672faa2..7c88f301cd 100644
--- a/setup/ajax.dataloader.php
+++ b/setup/ajax.dataloader.php
@@ -35,6 +35,7 @@
* 'percent': integer 0..100 the percentage of completion once the file has been loaded
*/
+use Combodo\iTop\Application\Helper\Session;
use Combodo\iTop\Application\WebPage\AjaxPage;
$bBypassMaintenance = true; // Reset maintenance mode in case of problem
@@ -123,13 +124,19 @@ require_once('./xmldataloader.class.inc.php');
// Never cache this page
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Fri, 17 Jul 1970 05:00:00 GMT"); // Date in the past
+$oCtx = new ContextTag(ContextTag::TAG_SETUP);
/**
* Main program
*/
$sOperation = utils::ReadParam('operation', '');
try {
- SetupUtils::CheckSetupToken();
+ Session::Start();
+ if (!SetupUtils::IsSessionSetupTokenValid()) {
+ throw new SecurityException("Invalid session token");
+ }
+
+ $oContextTag = new ContextTag(ContextTag::TAG_SETUP);
switch ($sOperation) {
case 'async_action':
@@ -150,14 +157,7 @@ try {
/** @var WizardStep $oStep */
$oStep = new $sClass($oDummyController, $sState);
$sConfigFile = utils::GetConfigFilePath(ITOP_DEFAULT_ENV);
- if (file_exists($sConfigFile) && !is_writable($sConfigFile) && $oStep->RequiresWritableConfig()) {
- $sRelativePath = utils::GetConfigFilePathRelative(ITOP_DEFAULT_ENV);
- $sErrorMsg = "Error: the configuration file '".$sRelativePath."' already exists and cannot be overwritten.";
- $sErrorMsg .= "The wizard cannot modify the configuration file for you. If you want to upgrade ".ITOP_APPLICATION.", make sure that the file '".$sRelativePath."' can be modified by the web server.";
- throw new Exception($sErrorMsg);
- } else {
- $oStep->AsyncAction($oPage, $sActionCode, $aParams);
- }
+ $oStep->AsyncAction($oPage, $sActionCode, $aParams);
}
$oPage->output();
break;
diff --git a/setup/compiler.class.inc.php b/setup/compiler.class.inc.php
index a51cd4862d..16a8d0992c 100644
--- a/setup/compiler.class.inc.php
+++ b/setup/compiler.class.inc.php
@@ -20,7 +20,6 @@
use Combodo\iTop\Application\Branding;
use Combodo\iTop\Application\WebPage\iTopWebPage;
-use Combodo\iTop\Application\WebPage\Page;
use Combodo\iTop\DesignDocument;
use Combodo\iTop\DesignElement;
use Combodo\iTop\PropertyType\PropertyTypeDesign;
@@ -264,14 +263,13 @@ class MFCompiler
* Compile the data model into PHP files and data structures
*
* @param string $sTargetDir The target directory where to put the resulting files
- * @param Page $oP For some output...
* @param bool $bUseSymbolicLinks
* @param bool $bSkipTempDir
*
* @return void
* @throws Exception
*/
- public function Compile($sTargetDir, $oP = null, $bUseSymbolicLinks = null, $bSkipTempDir = false, $bEnterMaintenanceMode = true)
+ public function Compile($sTargetDir, $bUseSymbolicLinks = null, $bSkipTempDir = false)
{
if (is_null($bUseSymbolicLinks)) {
$bUseSymbolicLinks = false;
@@ -283,16 +281,7 @@ class MFCompiler
}
$sFinalTargetDir = $sTargetDir;
- $bIsAlreadyInMaintenanceMode = SetupUtils::IsInMaintenanceMode();
- $sConfigFilePath = utils::GetConfigFilePath($this->sEnvironment);
- if (is_file($sConfigFilePath)) {
- $oConfig = new Config($sConfigFilePath);
- } else {
- $oConfig = null;
- }
- if (($this->sEnvironment == ITOP_DEFAULT_ENV) && !$bIsAlreadyInMaintenanceMode && $bEnterMaintenanceMode) {
- SetupUtils::EnterMaintenanceMode($oConfig);
- }
+
if ($bUseSymbolicLinks || $bSkipTempDir) {
// Skip the creation of a temporary dictionary, not compatible with symbolic links
$sTempTargetDir = $sFinalTargetDir;
@@ -307,15 +296,13 @@ class MFCompiler
}
try {
- $this->DoCompile($sTempTargetDir, $sFinalTargetDir, $oP = null, $bUseSymbolicLinks);
+ $this->DoCompile($sTempTargetDir, $sFinalTargetDir, $bUseSymbolicLinks);
} catch (Exception $e) {
if ($sTempTargetDir != $sFinalTargetDir) {
// Cleanup the temporary directory
SetupUtils::rrmdir($sTempTargetDir);
}
- if (($this->sEnvironment == ITOP_DEFAULT_ENV) && !$bIsAlreadyInMaintenanceMode && $bEnterMaintenanceMode) {
- SetupUtils::ExitMaintenanceMode();
- }
+
throw $e;
}
@@ -323,9 +310,6 @@ class MFCompiler
// Move the results to the target directory
SetupUtils::movedir($sTempTargetDir, $sFinalTargetDir);
}
- if (($this->sEnvironment == ITOP_DEFAULT_ENV) && !$bIsAlreadyInMaintenanceMode && $bEnterMaintenanceMode) {
- SetupUtils::ExitMaintenanceMode();
- }
// Reset the opcache since otherwise the PHP "model" files may still be cached !!
// In case of bad luck (this happens **sometimes** - see N. 550), we may analyze the database structure
@@ -343,13 +327,14 @@ class MFCompiler
/**
* Perform the actual "Compilation" of all modules
+ *
* @param string $sTempTargetDir
* @param string $sFinalTargetDir
- * @param Page $oP
* @param bool $bUseSymbolicLinks
+ *
* @throws Exception
*/
- protected function DoCompile($sTempTargetDir, $sFinalTargetDir, $oP = null, $bUseSymbolicLinks = false)
+ protected function DoCompile($sTempTargetDir, $sFinalTargetDir, $bUseSymbolicLinks = false)
{
$aAllClasses = []; // flat list of classes
$aModulesInfo = []; // Hash array of module_name => array('version' => string, 'root_dir' => string)
@@ -538,7 +523,7 @@ EOF;
}
try {
/** @var iTopWebPage $oP */
- $aMenuLines = $this->CompileMenu($oMenuNode, $sTempTargetDir, $sFinalTargetDir, $sRelativeDir, $oP);
+ $aMenuLines = $this->CompileMenu($oMenuNode, $sTempTargetDir, $sFinalTargetDir, $sRelativeDir);
} catch (DOMFormatException $e) {
throw new Exception("Failed to process menu '$sMenuId', from '$sModuleRootDir': ".$e->getMessage());
}
@@ -2581,13 +2566,12 @@ CSS;
* @param string $sTempTargetDir
* @param string $sFinalTargetDir
* @param string $sModuleRelativeDir
- * @param iTopWebPage $oP
*
* @return array
* @throws \DOMException
* @throws \DOMFormatException
*/
- protected function CompileMenu($oMenu, $sTempTargetDir, $sFinalTargetDir, $sModuleRelativeDir, $oP)
+ protected function CompileMenu($oMenu, $sTempTargetDir, $sFinalTargetDir, $sModuleRelativeDir)
{
$this->CompileFiles($oMenu, $sTempTargetDir.'/'.$sModuleRelativeDir, $sFinalTargetDir.'/'.$sModuleRelativeDir, $sModuleRelativeDir);
diff --git a/setup/extensionsmap.class.inc.php b/setup/extensionsmap.class.inc.php
index f8388ead9a..b5d603797a 100644
--- a/setup/extensionsmap.class.inc.php
+++ b/setup/extensionsmap.class.inc.php
@@ -14,6 +14,8 @@ require_once(APPROOT.'/setup/moduleinstaller.class.inc.php');
*/
class iTopExtensionsMap
{
+ private static array $aInstancesByEnvironment = [];
+
/**
* The list of all discovered extensions
* @var array $aExtensions
@@ -30,25 +32,36 @@ class iTopExtensionsMap
* The list of directories browsed using the ReadDir method when building the map
* @var string[]
*/
- protected $aScannedDirs;
+ protected array $aScannedDirs;
/** @var bool $bHasXmlInstallationFile : false when legacy 1.x package with no installation.xml */
protected $bHasXmlInstallationFile = true;
- //extension dirs apart from package
- protected array $aExtraDirs = [];
+ /**
+ * @throws \Exception
+ */
+ public static function GetExtensionsMap(string $sFromEnvironment = ITOP_DEFAULT_ENV, ?string $sAppRootForTests = null): iTopExtensionsMap
+ {
+ if (!is_null($sAppRootForTests)) {
+ return new iTopExtensionsMap($sFromEnvironment, $sAppRootForTests);
+ }
+
+ if (!isset(self::$aInstancesByEnvironment[$sFromEnvironment])) {
+ self::$aInstancesByEnvironment[$sFromEnvironment] = new iTopExtensionsMap($sFromEnvironment);
+ }
+
+ return self::$aInstancesByEnvironment[$sFromEnvironment];
+ }
/**
* The list of all discovered extensions
*
* @param string $sFromEnvironment The environment to scan
- * @param array $aExtraDirs extensions dir to scan
- * @param array $aExtraDirs extensions dir to scan
- * @param string|null $sAppRootForTests
+ * @param string|null $sAppRootForTests
*
- * @return void
+ * @throws \Exception
*/
- public function __construct(string $sFromEnvironment = ITOP_DEFAULT_ENV, array $aExtraDirs = [], ?string $sAppRootForTests = null)
+ private function __construct(string $sFromEnvironment = ITOP_DEFAULT_ENV, ?string $sAppRootForTests = null)
{
$this->aExtensions = [];
$this->aExtensionsByCode = [];
@@ -56,18 +69,6 @@ class iTopExtensionsMap
$sAppRoot = $sAppRootForTests ?? APPROOT;
$this->ScanDisk($sFromEnvironment, $sAppRoot);
-
- $this->aExtraDirs = $aExtraDirs;
- if (is_dir($sAppRoot.'extensions')) {
- $this->aExtraDirs [] = $sAppRoot.'extensions';
- }
- if (is_dir($sAppRoot.'data/'.$sFromEnvironment.'-modules')) {
- $this->aExtraDirs [] = $sAppRoot.'data/'.$sFromEnvironment.'-modules';
- }
-
- foreach ($aExtraDirs as $sDir) {
- $this->ReadDir($sDir, iTopExtension::SOURCE_REMOTE);
- }
$this->CheckDependencies($sAppRoot);
}
@@ -83,13 +84,15 @@ class iTopExtensionsMap
if (!$this->ReadInstallationWizard($sAppRoot.'/datamodels/2.x')) {
$this->bHasXmlInstallationFile = false;
//no installation xml found in 2.x: let's read all extensions in 2.x first
- if (!$this->ReadDir($sAppRoot.'datamodels/2.x', iTopExtension::SOURCE_WIZARD)) {
+ if (!$this->ReadDir($sAppRoot.'datamodels/2.x', iTopExtension::SOURCE_WIZARD, bIsRootDir: true)) {
//nothing found in 2.x : fallback read in 1.x (flat structure)
- $this->ReadDir($sAppRoot.'datamodels/1.x', iTopExtension::SOURCE_WIZARD);
+ $this->ReadDir($sAppRoot.'datamodels/1.x', iTopExtension::SOURCE_WIZARD, bIsRootDir: true);
}
+ } else {
+ $this->aScannedDirs[] = $sAppRoot.'datamodels/2.x';
}
- $this->ReadDir($sAppRoot.'extensions', iTopExtension::SOURCE_MANUAL);
- $this->ReadDir($sAppRoot.'data/'.$sEnvironment.'-modules', iTopExtension::SOURCE_REMOTE);
+ $this->ReadDir($sAppRoot.'extensions', iTopExtension::SOURCE_MANUAL, bIsRootDir: true);
+ $this->ReadDir($sAppRoot.'data/'.$sEnvironment.'-modules', iTopExtension::SOURCE_REMOTE, bIsRootDir: true);
}
/**
@@ -274,14 +277,14 @@ class iTopExtensionsMap
*
* @return boolean false if we cannot open dir
*/
- protected function ReadDir($sSearchDir, $sSource, $sParentExtensionId = null)
+ protected function ReadDir($sSearchDir, $sSource, $sParentExtensionId = null, bool $bIsRootDir = false)
{
if (!is_readable($sSearchDir)) {
return false;
}
$hDir = opendir($sSearchDir);
if ($hDir !== false) {
- if ($sParentExtensionId == null) {
+ if ($bIsRootDir) {
// We're not recursing, let's add the directory to the list of scanned dirs
$this->aScannedDirs[] = $sSearchDir;
}
@@ -478,16 +481,8 @@ class iTopExtensionsMap
*/
protected function CheckDependencies(string $sAppRoot)
{
- $aSearchDirs = [];
-
- if (is_dir($sAppRoot.'/datamodels/2.x')) {
- $aSearchDirs[] = $sAppRoot.'/datamodels/2.x';
- } elseif (is_dir($sAppRoot.'/datamodels/1.x')) {
- $aSearchDirs[] = $sAppRoot.'/datamodels/1.x';
- }
- $aSearchDirs = array_merge($aSearchDirs, $this->aScannedDirs);
try {
- ModuleDiscovery::GetModulesOrderedByDependencies($aSearchDirs, true);
+ ModuleDiscovery::GetModulesOrderedByDependencies($this->aScannedDirs, true);
} catch (MissingDependencyException $e) {
// Some modules have missing dependencies
// Let's check what is the impact at the "extensions" level
@@ -536,7 +531,7 @@ class iTopExtensionsMap
public function GetAllExtensionsToDisplayInSetup(bool $bKeepExtensionsHavingMissingDependencies = false, bool $bRemoteExtensionsShouldBeMandatory = true): array
{
// all extensions are loaded at first screen when no installation xml: flat display
- //otherwhile wizard screen displays choice screens along extension tree (cf installation.xml)
+ // otherwhile wizard screen displays choice screens along extension tree (cf installation.xml)
$aRes = [];
foreach ($this->GetAllExtensionsWithPreviouslyInstalled() as $oExtension) {
/** @var \iTopExtension $oExtension */
@@ -596,7 +591,7 @@ class iTopExtensionsMap
{
$oExtension = $this->GetFromExtensionCode($sExtensionCode);
if (!is_null($oExtension)) {
- $oExtension->bMarkedAsChosen = $bMark;
+ $oExtension->MarkAsChosen($bMark);
}
}
@@ -609,7 +604,7 @@ class iTopExtensionsMap
{
$oExtension = $this->GetFromExtensionCode($sExtensionCode);
if (!is_null($oExtension)) {
- return $oExtension->bMarkedAsChosen;
+ return $oExtension->IsMarkedAsChosen();
}
return false;
@@ -636,8 +631,9 @@ class iTopExtensionsMap
public function GetChoices()
{
$aResult = [];
+ /** @var \iTopExtension $oExtension */
foreach ($this->aExtensions as $oExtension) {
- if ($oExtension->bMarkedAsChosen) {
+ if ($oExtension->IsMarkedAsChosen()) {
$aResult[] = $oExtension;
}
}
@@ -736,7 +732,6 @@ class iTopExtensionsMap
public function GetSelectedExtensions(Config $oConfig, array $aAddedExtensions, array $aRemovedExtensions): array
{
$aDbChoices = self::GetChoicesFromDatabase($oConfig);
-
foreach ($aDbChoices as $i => $sChoice) {
if (in_array($sChoice, $aRemovedExtensions)) {
unset($aDbChoices[$i]);
@@ -746,11 +741,6 @@ class iTopExtensionsMap
return array_merge($aDbChoices, $aAddedExtensions);
}
- public function GetExtraDirs(): array
- {
- return $this->aExtraDirs;
- }
-
/**
* Tells if the given module name is "chosen" since it is part of a "chosen" extension (in the specified source dir)
* @param string $sModuleNameToFind
@@ -760,13 +750,17 @@ class iTopExtensionsMap
public function ModuleIsChosenAsPartOfAnExtension($sModuleNameToFind, $sInSourceOnly = iTopExtension::SOURCE_REMOTE)
{
foreach ($this->GetAllExtensions() as $oExtension) {
- if (($oExtension->sSource == $sInSourceOnly) &&
- ($oExtension->bMarkedAsChosen == true) &&
+ if ($oExtension->IsMarkedAsChosen() &&
(array_key_exists($sModuleNameToFind, $oExtension->aModuleVersion))) {
return true;
}
}
+
return false;
}
+ public function GetScannedModulesRootDirs(): array
+ {
+ return $this->aScannedDirs;
+ }
}
diff --git a/setup/feature_removal/DryRemovalRuntimeEnvironment.php b/setup/feature_removal/DryRemovalRuntimeEnvironment.php
index 4cb8d1d42f..fc4ffd84c2 100644
--- a/setup/feature_removal/DryRemovalRuntimeEnvironment.php
+++ b/setup/feature_removal/DryRemovalRuntimeEnvironment.php
@@ -2,22 +2,24 @@
namespace Combodo\iTop\Setup\FeatureRemoval;
-use iTopExtensionsMap;
+use Config;
use RunTimeEnvironment;
use SetupUtils;
class DryRemovalRuntimeEnvironment extends RunTimeEnvironment
{
protected array $aExtensionsToRemoveByCode;
+ protected array $aExtensionCodesToAddByCode;
/**
* Toolset for building a run-time environment
*
* @param string $sSourceEnv: environment from which setup is inspired to simulate extension removal and usee CompileFrom...
*/
- public function __construct($sSourceEnv = 'production', array $aExtensionCodesToRemove = [])
+ public function __construct($sSourceEnv = ITOP_DEFAULT_ENV, array $aExtensionCodesToAdd = [], array $aExtensionCodesToRemove = [])
{
parent::__construct($sSourceEnv, false);
+ $this->aExtensionCodesToAddByCode = $aExtensionCodesToAdd;
$this->aExtensionsToRemoveByCode = $aExtensionCodesToRemove;
$this->Prepare($sSourceEnv, $this->sBuildEnv);
}
@@ -34,13 +36,18 @@ class DryRemovalRuntimeEnvironment extends RunTimeEnvironment
SetupUtils::copydir(APPROOT."/data/$sSourceEnv-modules", APPROOT."/data/$sBuildEnv-modules");
SetupUtils::copydir(APPROOT."/conf/$sSourceEnv", APPROOT."/conf/$sBuildEnv");
- $this->DeclareExtensionAsRemoved($this->aExtensionsToRemoveByCode);
- }
+ $oSourceConfig = new Config(APPCONF.$sSourceEnv.'/'.ITOP_CONFIG_FILE);
+ $sSourceDir = $oSourceConfig->Get('source_dir');
+ list($aExtraDirs, ) = $this->GetDirsToCompile($sSourceDir, $sSourceEnv);
- private function DeclareExtensionAsRemoved(array $aExtensionCodes): void
- {
- $oExtensionsMap = new iTopExtensionsMap($this->sBuildEnv);
- $oExtensionsMap->DeclareExtensionAsRemoved($aExtensionCodes);
+ $this->InitExtensionMap($aExtraDirs, $oSourceConfig);
+ $this->GetExtensionMap()->DeclareExtensionAsRemoved($this->aExtensionsToRemoveByCode);
+
+ foreach ($this->GetExtensionMap()->GetAllExtensions() as $oExtension) {
+ if (array_key_exists($oExtension->sCode, $this->aExtensionCodesToAddByCode)) {
+ $oExtension->MarkAsChosen();
+ }
+ }
}
public function Cleanup(): void
diff --git a/setup/feature_removal/SetupAudit.php b/setup/feature_removal/SetupAudit.php
index 35c4628d9b..9e842b4a45 100644
--- a/setup/feature_removal/SetupAudit.php
+++ b/setup/feature_removal/SetupAudit.php
@@ -17,6 +17,11 @@ class SetupAudit extends AbstractSetupAudit
$this->sEnvAfter = $sEnvAfter ?? "$sEnvBefore-build";
}
+ public function GetEnvAfter(): string
+ {
+ return $this->sEnvAfter;
+ }
+
public function ComputeClasses(): void
{
if ($this->bClassesInitialized) {
diff --git a/setup/itopextension.class.inc.php b/setup/itopextension.class.inc.php
index e2d7302c0b..681f8e4850 100644
--- a/setup/itopextension.class.inc.php
+++ b/setup/itopextension.class.inc.php
@@ -1,8 +1,5 @@
sSource === self::SOURCE_REMOTE;
}
+
+ public function IsMarkedAsChosen(): bool
+ {
+ return $this->bMarkedAsChosen;
+ }
+
+ public function MarkAsChosen(bool $bMarkedAsChosen = true): void
+ {
+ $this->bMarkedAsChosen = $bMarkedAsChosen;
+ }
}
diff --git a/setup/moduleinstallation/ModuleInstallationRepository.php b/setup/moduleinstallation/ModuleInstallationRepository.php
index 149899171e..f139941d2e 100644
--- a/setup/moduleinstallation/ModuleInstallationRepository.php
+++ b/setup/moduleinstallation/ModuleInstallationRepository.php
@@ -68,7 +68,12 @@ WHERE
parent_id='$iRootId'
OR id='$iRootId'
SQL;
- return CMDBSource::QueryToArray($sSQL);
+ try {
+ return CMDBSource::QueryToArray($sSQL);
+ } catch (MySQLException $e) {
+ SetupLog::Exception(__METHOD__, $e);
+ throw $e;
+ }
}
private function GetTableWithPrefix(Config $oConfig)
diff --git a/setup/runtimeenv.class.inc.php b/setup/runtimeenv.class.inc.php
index ec28de9b56..758cc92a91 100644
--- a/setup/runtimeenv.class.inc.php
+++ b/setup/runtimeenv.class.inc.php
@@ -71,15 +71,37 @@ class RunTimeEnvironment
return $this->oExtensionsMap;
}
- public function InitExtensionMap($aExtraDirs, $oSourceConfig)
+ protected function GetDirsToCompile(string $sSourceDir, string $sSourceEnv): array
{
- // Actually read the modules available for the build environment,
- // but get the selection from the source environment and finally
- // mark as (automatically) chosen all the "remote" modules present in the
- // build environment (data/-modules)
- // The actual choices will be recorded by RecordInstallation below
- $this->oExtensionsMap = new iTopExtensionsMap($this->sBuildEnv, $aExtraDirs);
- $this->oExtensionsMap->LoadChoicesFromDatabase($oSourceConfig);
+ $sSourceDirFull = APPROOT.$sSourceDir;
+ if (!is_dir($sSourceDirFull)) {
+ throw new Exception("The source directory '$sSourceDirFull' does not exist (or could not be read)");
+ }
+ $aDirsToCompile = [$sSourceDirFull];
+ if (is_dir(APPROOT.'extensions')) {
+ $aDirsToCompile[] = APPROOT.'extensions';
+ }
+ $sExtraDir = utils::GetDataPath().$this->sBuildEnv.'-modules/';
+ if (is_dir($sExtraDir)) {
+ $aDirsToCompile[] = $sExtraDir;
+ }
+
+ $aExtraDirs = $this->GetExtraDirsToScan($aDirsToCompile);
+ $aDirsToCompile = array_merge($aDirsToCompile, $aExtraDirs);
+ return [$aExtraDirs, $aDirsToCompile];
+ }
+
+ public function InitExtensionMap(array $aExtraDirs, Config $oSourceConfig)
+ {
+ if (is_null($this->oExtensionsMap)) {
+ // Actually read the modules available for the build environment,
+ // but get the selection from the source environment and finally
+ // mark as (automatically) chosen all the "remote" modules present in the
+ // build environment (data/-modules)
+ // The actual choices will be recorded by RecordInstallation below
+ $this->oExtensionsMap = iTopExtensionsMap::GetExtensionsMap($this->sBuildEnv);
+ $this->oExtensionsMap->LoadChoicesFromDatabase($oSourceConfig);
+ }
}
/**
@@ -168,7 +190,7 @@ class RunTimeEnvironment
MetaModel::Startup($oConfig, $bModelOnly, $bUseCache, false, $this->sBuildEnv);
if ($this->oExtensionsMap === null) {
- $this->oExtensionsMap = new iTopExtensionsMap($this->sBuildEnv);
+ $this->oExtensionsMap = iTopExtensionsMap::GetExtensionsMap($this->sBuildEnv);
}
}
@@ -396,9 +418,11 @@ class RunTimeEnvironment
$sBuildConfigFile = APPCONF.$this->sBuildEnv.'/'.ITOP_CONFIG_FILE;
// Write the config file
- @chmod($sBuildConfigFile, 0770); // In case it exists: RWX for owner and group, nothing for others
+ if (is_file($sBuildConfigFile)) {
+ chmod($sBuildConfigFile, 0770); // In case it exists: RWX for owner and group, nothing for others
+ }
$oConfig->WriteToFile($sBuildConfigFile);
- @chmod($sBuildConfigFile, 0440); // Read-only for owner and group, nothing for others
+ chmod($sBuildConfigFile, 0440); // Read-only for owner and group, nothing for others
}
/**
@@ -442,32 +466,12 @@ class RunTimeEnvironment
/**
* Get the installed modules (only the installed ones)
+ * @return \MFModule[]
*/
- protected function GetMFModulesToCompile($sSourceEnv, $sSourceDir)
+ protected function GetMFModulesToCompile($sSourceEnv, $sSourceDir): array
{
- $sSourceDirFull = APPROOT.$sSourceDir;
- if (!is_dir($sSourceDirFull)) {
- throw new Exception("The source directory '$sSourceDirFull' does not exist (or could not be read)");
- }
- $aDirsToCompile = [$sSourceDirFull];
- if (is_dir(APPROOT.'extensions')) {
- $aDirsToCompile[] = APPROOT.'extensions';
- }
- $sExtraDir = utils::GetDataPath().$this->sBuildEnv.'-modules/';
- if (is_dir($sExtraDir)) {
- $aDirsToCompile[] = $sExtraDir;
- }
-
- $aExtraDirs = $this->GetExtraDirsToScan($aDirsToCompile);
- $aDirsToCompile = array_merge($aDirsToCompile, $aExtraDirs);
-
+ list($aExtraDirs, $aDirsToCompile) = $this->GetDirsToCompile($sSourceDir, $sSourceEnv);
$oSourceConfig = new Config(APPCONF.$sSourceEnv.'/'.ITOP_CONFIG_FILE);
-
- // Actually read the modules available for the build environment,
- // but get the selection from the source environment and finally
- // mark as (automatically) chosen all the "remote" modules present in the
- // build environment (data/-modules)
- // The actual choices will be recorded by RecordInstallation below
$this->InitExtensionMap($aExtraDirs, $oSourceConfig);
$this->GetExtensionMap()->LoadChoicesFromDatabase($oSourceConfig);
foreach ($this->GetExtensionMap()->GetAllExtensions() as $oExtension) {
@@ -475,12 +479,10 @@ class RunTimeEnvironment
$this->GetExtensionMap()->MarkAsChosen($oExtension->sCode);
}
}
-
$aModulesToLoad = $this->GetModulesToLoad($this->sFinalEnv, $aDirsToCompile);
$aAvailableModules = $this->AnalyzeInstallation($oSourceConfig, $aDirsToCompile, true, $aModulesToLoad);
// Do load the required modules
- //
$oDictModule = new MFDictModule('dictionaries', 'iTop Dictionaries', APPROOT.'dictionaries');
$aRet = [];
@@ -1030,7 +1032,8 @@ class RunTimeEnvironment
@chmod($sFinalConfig, 0770); // In case it exists: RWX for owner and group, nothing for others
$this->CommitFile($sBuildConfig, $sFinalConfig);
@chmod($sFinalConfig, 0440); // Read-only for owner and group, nothing for others
- @rmdir(dirname($sBuildConfig)); // Cleanup the temporary build dir if empty
+
+ SetupUtils::rrmdir(dirname($sBuildConfig)); // Cleanup the temporary build dir if empty
if (! isset($_SESSION)) {
//used in all UI setups (not unattended)
@@ -1331,11 +1334,12 @@ class RunTimeEnvironment
public function DataToCleanupAudit()
{
- $oSetupAudit = new SetupAudit(ITOP_DEFAULT_ENV, $this->sBuildEnv);
+ $oSetupAudit = new SetupAudit($this->GetFinalEnv(), $this->GetBuildEnv());
//Make sure the MetaModel is started before analysing for issues
- $sConfFile = utils::GetConfigFilePath(ITOP_DEFAULT_ENV);
- MetaModel::Startup($sConfFile, false, false); // Start on production environment
+ $sFinalEnv = $this->GetFinalEnv();
+ $sConfFile = utils::GetConfigFilePath($sFinalEnv);
+ MetaModel::Startup($sConfFile, false, false, false, $sFinalEnv); // Start on environment
$oSetupAudit->RunDataAudit(true);
$iCount = $oSetupAudit->GetDataToCleanupCount();
@@ -1350,15 +1354,11 @@ class RunTimeEnvironment
$sDestinationEnv = $this->sBuildEnv;
if ($sDestinationEnv != $sSourceEnv) {
+ if (file_exists(utils::GetDataPath().$sDestinationEnv.'.delta.xml')) {
+ unlink(utils::GetDataPath().$sDestinationEnv.'.delta.xml');
+ }
SetupUtils::CopyFile(utils::GetDataPath().$sSourceEnv.'.delta.xml', utils::GetDataPath().$sDestinationEnv.'.delta.xml');
SetupUtils::copydir(utils::GetDataPath().$sSourceEnv.'-modules/', utils::GetDataPath().$sDestinationEnv.'-modules/');
-
- // Copy the config file
- //
- $sFinalConfig = APPCONF.$sDestinationEnv.'/config-itop.php';
- if (is_file($sFinalConfig)) {
- chmod($sFinalConfig, 0770); // In case it exists: RWX for owner and group, nothing for others
- }
SetupUtils::copydir(APPCONF.$sSourceEnv, APPCONF.$sDestinationEnv);
MetaModel::ResetAllCaches($sDestinationEnv);
}
@@ -1409,7 +1409,7 @@ class RunTimeEnvironment
self::MakeDirSafe($sBuildDir);
$bSkipTempDir = ($this->sFinalEnv != $this->sBuildEnv); // No need for a temporary directory if sBuildEnv is already a temporary directory
$oMFCompiler = new MFCompiler($oFactory, $this->sFinalEnv);
- $oMFCompiler->Compile($sBuildDir, null, $bUseSymLinks, $bSkipTempDir);
+ $oMFCompiler->Compile($sBuildDir, $bUseSymLinks, $bSkipTempDir);
MetaModel::ResetAllCaches($this->sBuildEnv);
@@ -1417,10 +1417,9 @@ class RunTimeEnvironment
}
/**
+ * @param array $aSelectedExtensionCodes
* @param array $aRemovedExtensionCodes
* @param array $aSelectedModules
- * @param string $sSourceDir
- * @param string $sExtensionDir
* @param boolean $bUseSymbolicLinks
*
* @return void
@@ -1428,33 +1427,13 @@ class RunTimeEnvironment
* @throws \CoreException
*
*/
- public function DoCompile(array $aRemovedExtensionCodes, array $aSelectedModules, string $sSourceDir, string $sExtensionDir, bool $bUseSymbolicLinks = false): void
+ public function DoCompile(array $aSelectedExtensionCodes, array $aRemovedExtensionCodes, array $aSelectedModules, bool $bUseSymbolicLinks = false): void
{
SetupLog::Info('Compiling data model.');
$sEnvironment = $this->sBuildEnv;
$sBuildPath = $this->GetBuildDir();
- $sSourcePath = APPROOT.$sSourceDir;
- $aDirsToScan = [$sSourcePath];
- $sExtensionsPath = APPROOT.$sExtensionDir;
- if (is_dir($sExtensionsPath)) {
- // if the extensions dir exists, scan it for additional modules as well
- $aDirsToScan[] = $sExtensionsPath;
- }
- $sExtraPath = APPROOT.'/data/'.$sEnvironment.'-modules/';
- if (is_dir($sExtraPath)) {
- // if the extra dir exists, scan it for additional modules as well
- $aDirsToScan[] = $sExtraPath;
- }
-
- if (!is_dir($sSourcePath)) {
- $sErrorMessage = "Failed to find the source directory '$sSourcePath', please check the rights of the web server";
- $e = new CoreException($sErrorMessage);
- IssueLog::Exception($sErrorMessage, $e);
- throw $e;
- }
-
if (!is_dir($sBuildPath)) {
if (!mkdir($sBuildPath)) {
$sErrorMessage = "Failed to create directory '$sBuildPath', please check the rights of the web server";
@@ -1471,22 +1450,47 @@ class RunTimeEnvironment
SetupUtils::tidydir($sBuildPath);
}
- $oExtensionsMap = new iTopExtensionsMap(ITOP_DEFAULT_ENV, $aDirsToScan);
+ $oExtensionsMap = iTopExtensionsMap::GetExtensionsMap($this->GetFinalEnv());
// Removed modules are stored as static for FindModules()
$oExtensionsMap->DeclareExtensionAsRemoved($aRemovedExtensionCodes);
// Check that all the extensions have a code
+ $aNoCodeExtensionSourceDirs = [];
+ $bSetupFailure = false;
+ $aNoCodeExtensionLabelsThatBreakSetup = [];
foreach ($oExtensionsMap->GetAllExtensions() as $oExtension) {
+ if (in_array($oExtension->sCode, $aSelectedExtensionCodes)) {
+ $oExtension->MarkAsChosen();
+ }
+
if (empty($oExtension->sCode)) {
- $sExtensionLabel = !empty($oExtension->sLabel) ? $oExtension->sLabel : $oExtension->sSourceDir;
- $sErrorMessage = sprintf('Extension "%s" cannot be installed: Missing extension code', $sExtensionLabel);
- $e = new CoreException($sErrorMessage);
- IssueLog::Exception($sErrorMessage, $e);
- throw $e;
+ if (empty($oExtension->sLabel)) {
+ $sExtensionLabel = $oExtension->sSourceDir;
+ $aNoCodeExtensionSourceDirs [] = $oExtension->sSourceDir;
+ } else {
+ $sExtensionLabel = $oExtension->sLabel;
+ $aNoCodeExtensionSourceDirs [$sExtensionLabel] = $oExtension->sSourceDir;
+ }
+
+ if ($oExtension->IsMarkedAsChosen()) {
+ $aNoCodeExtensionLabelsThatBreakSetup[] = $sExtensionLabel;
+ $bSetupFailure = true;
+ }
}
}
- $oFactory = new ModelFactory($aDirsToScan);
+ if (count($aNoCodeExtensionSourceDirs) > 0) {
+ if ($bSetupFailure) {
+ $sErrorMessage = sprintf('Selected extension(s) cannot be installed: Missing extension code (%s)', implode(',', $aNoCodeExtensionLabelsThatBreakSetup));
+ $e = new CoreException($sErrorMessage);
+ SetupLog::Exception($sErrorMessage, $e, null, $aNoCodeExtensionSourceDirs);
+ throw $e;
+ } else {
+ SetupLog::Warning("Non selected extension(s) cannot be installed: Missing extension code", null, $aNoCodeExtensionSourceDirs);
+ }
+ }
+
+ $oFactory = new ModelFactory($oExtensionsMap->GetScannedModulesRootDirs());
$oDictModule = new MFDictModule('dictionaries', 'iTop Dictionaries', APPROOT.'dictionaries');
$oFactory->LoadModule($oDictModule);
@@ -1522,7 +1526,7 @@ class RunTimeEnvironment
}
$oMFCompiler = new MFCompiler($oFactory, $sEnvironment);
- $oMFCompiler->Compile($sBuildPath, null, $bUseSymbolicLinks, false, false);
+ $oMFCompiler->Compile($sBuildPath, $bUseSymbolicLinks, false);
SetupLog::Info("Data model successfully compiled to '$sBuildPath'.");
$sCacheDir = APPROOT.'/data/cache-'.$sEnvironment.'/';
@@ -1572,7 +1576,7 @@ class RunTimeEnvironment
public function EnterReadOnlyMode(Config $oConfig)
{
- if ($this->GetFinalEnv() != 'production') {
+ if ($this->GetFinalEnv() != ITOP_DEFAULT_ENV) {
return;
}
@@ -1592,7 +1596,7 @@ class RunTimeEnvironment
public function ExitReadOnlyMode()
{
- if ($this->GetFinalEnv() != 'production') {
+ if ($this->GetFinalEnv() != ITOP_DEFAULT_ENV) {
return;
}
@@ -1675,21 +1679,29 @@ class RunTimeEnvironment
}
$aExtensionDirs = [];
+ $aFromSelectedExtensionModules = [];
foreach ($this->GetExtensionMap()->GetAllExtensions() as $oExtension) {
- if ($oExtension->bMarkedAsChosen && is_dir($oExtension->sSourceDir)) {
+ if ($oExtension->IsMarkedAsChosen() && is_dir($oExtension->sSourceDir)) {
$aExtensionDirs [] = $oExtension->sSourceDir;
+ $aFromSelectedExtensionModules = array_merge($aFromSelectedExtensionModules, $oExtension->aModules);
}
}
SetupLog::Info(__METHOD__, null, ['ext_dirs' => $aExtensionDirs]);
$aModuleIdsToLoad = InstallationChoicesToModuleConverter::GetInstance()->GetModules($aChoices, $aSearchDirs, $sInstallFilePath, $aExtensionDirs);
$aModulesToLoad = [];
+
foreach ($aModuleIdsToLoad as $sModuleId) {
$oModule = new Module($sModuleId);
$sModuleName = $oModule->GetModuleName();
$aModulesToLoad[] = $sModuleName;
}
+ foreach ($aFromSelectedExtensionModules as $sModuleName) {
+ if (! in_array($sModuleName, $aModulesToLoad)) {
+ $aModulesToLoad[] = $sModuleName;
+ }
+ }
return $aModulesToLoad;
}
diff --git a/setup/sequencers/DataAuditSequencer.php b/setup/sequencers/DataAuditSequencer.php
index c6172d4c2e..2b68cfb560 100644
--- a/setup/sequencers/DataAuditSequencer.php
+++ b/setup/sequencers/DataAuditSequencer.php
@@ -67,13 +67,13 @@ class DataAuditSequencer extends StepSequencer
$sSourceDir = $this->oParams->Get('source_dir', 'datamodels/latest');
$sExtensionDir = $this->oParams->Get('extensions_dir', 'extensions');
$aRemovedExtensionCodes = $this->oParams->Get('removed_extensions', []);
+ $aSelectedExtensionCodes = $this->oParams->Get('selected_extensions', []);
$bUseSymbolicLinks = $this->oParams->Get('use_symbolic_links', null) === 'on';
MetaModel::ResetAllCaches($this->oRunTimeEnvironment->GetBuildEnv());
$this->oRunTimeEnvironment->DoCompile(
+ $aSelectedExtensionCodes,
$aRemovedExtensionCodes,
$aSelectedModules,
- $sSourceDir,
- $sExtensionDir,
$bUseSymbolicLinks
);
return $this->ComputeNextStep($sStep);
diff --git a/setup/sequencers/StepSequencer.php b/setup/sequencers/StepSequencer.php
index 455c9aaea7..58e9583e6b 100644
--- a/setup/sequencers/StepSequencer.php
+++ b/setup/sequencers/StepSequencer.php
@@ -42,7 +42,7 @@ abstract class StepSequencer
public function __construct(Parameters $oParams, ?RunTimeEnvironment $oRunTimeEnvironment = null, string $sSourceDesc = 'Setup')
{
if (is_null($oRunTimeEnvironment)) {
- $sEnvironment = $oParams->Get('target_env', 'production');
+ $sEnvironment = $oParams->Get('target_env', ITOP_DEFAULT_ENV);
$this->oRunTimeEnvironment = new RunTimeEnvironment($sEnvironment, false);
} else {
$this->oRunTimeEnvironment = $oRunTimeEnvironment;
@@ -171,12 +171,13 @@ abstract class StepSequencer
protected function GetConfig()
{
if (! is_null($this->oTestConfig)) {
+ // For unit tests
return $this->oTestConfig;
}
// Caching config here is a bad idea, the first config loaded does not contain module settings
- $sTargetEnvironment = $this->oRunTimeEnvironment->GetBuildEnv();
- $sConfigFile = APPCONF.$sTargetEnvironment.'/'.ITOP_CONFIG_FILE;
+ $sBuildEnvironment = $this->oRunTimeEnvironment->GetBuildEnv();
+ $sConfigFile = APPCONF.$sBuildEnvironment.'/'.ITOP_CONFIG_FILE;
try {
if (file_exists($sConfigFile)) {
$oConfig = new Config($sConfigFile);
diff --git a/setup/setup.js b/setup/setup.js
index 26026dddd0..f385f08b00 100644
--- a/setup/setup.js
+++ b/setup/setup.js
@@ -2,9 +2,8 @@ function WizardAsyncAction(sActionCode, oParams, OnErrorFunction)
{
var sStepClass = $('#_class').val();
var sStepState = $('#_state').val();
- var sAuthent = $('#authent_token').val();
- var oMap = { operation: 'async_action', step_class: sStepClass, step_state: sStepState, code: sActionCode, authent : sAuthent, params: oParams };
+ var oMap = { operation: 'async_action', step_class: sStepClass, step_state: sStepState, code: sActionCode, params: oParams };
var ErrorFn = OnErrorFunction;
$(document).ajaxError(function(event, request, settings) {
diff --git a/setup/setuputils.class.inc.php b/setup/setuputils.class.inc.php
index 776861168d..20700605e4 100644
--- a/setup/setuputils.class.inc.php
+++ b/setup/setuputils.class.inc.php
@@ -527,11 +527,15 @@ class SetupUtils
*
* @since 3.0.0 N°2214 replace SetupLog::Log calls by CheckResult::TRACE
*/
- public static function CheckBackupPrerequisites($sDBBackupPath, $sMySQLBinDir = null)
+ public static function CheckBackupPrerequisites($sDBBackupPath, $sMySQLBinDir = null, string $sEnvironment = ITOP_DEFAULT_ENV)
{
$aResult = [];
$aResult[] = new CheckResult(CheckResult::TRACE, 'Info - CheckBackupPrerequisites');
+ if ($sEnvironment !== ITOP_DEFAULT_ENV) {
+ $aResult[] = new CheckResult(CheckResult::ERROR, "Can only backup ".ITOP_DEFAULT_ENV." environment");
+ }
+
// zip extension
//
if (!extension_loaded('phar')) {
@@ -1592,13 +1596,13 @@ JS
if (is_dir($oWizard->GetParameter('copy_extensions_from'))) {
$aDirsToScan[] = $oWizard->GetParameter('copy_extensions_from');
}
- $sExtraDir = utils::GetDataPath().'production-modules/';
+ $sExtraDir = utils::GetDataPath().$oWizard->GetParameter('target_env', ITOP_DEFAULT_ENV).'-modules/';
if (is_dir($sExtraDir)) {
$aDirsToScan[] = $sExtraDir;
}
- $oProductionEnv = new RunTimeEnvironment();
+ $oProductionEnv = new RunTimeEnvironment($oWizard->GetParameter('target_env', ITOP_DEFAULT_ENV));
$aRemovedExtensionCodes = json_decode($oWizard->GetParameter('removed_extensions'), true) ?? [];
- $oExtensionsMap = new iTopExtensionsMap(ITOP_DEFAULT_ENV, $aDirsToScan);
+ $oExtensionsMap = iTopExtensionsMap::GetExtensionsMap($oWizard->GetParameter('target_env', ITOP_DEFAULT_ENV));
$oExtensionsMap->DeclareExtensionAsRemoved($aRemovedExtensionCodes);
$aAvailableModules = $oProductionEnv->AnalyzeInstallation($oConfig, $aDirsToScan, $bAbortOnMissingDependency, $aModulesToLoad);
@@ -1615,9 +1619,12 @@ JS
}
/**
+ * Get version of production application
+ *
* @param WizardController $oWizard
*
* @return array|bool
+ * @throws \CoreException
*/
public static function GetApplicationVersion($oWizard)
{
diff --git a/setup/unattended-install/InstallationFileService.php b/setup/unattended-install/InstallationFileService.php
index 1b05151cfe..33de7dac52 100644
--- a/setup/unattended-install/InstallationFileService.php
+++ b/setup/unattended-install/InstallationFileService.php
@@ -56,7 +56,7 @@ class InstallationFileService
public function GetProductionEnv(): RunTimeEnvironment
{
if (is_null($this->oProductionEnv)) {
- $this->oProductionEnv = new RunTimeEnvironment();
+ $this->oProductionEnv = new RunTimeEnvironment($this->sTargetEnvironment);
}
return $this->oProductionEnv;
}
@@ -79,7 +79,7 @@ class InstallationFileService
public function GetItopExtensionsMap(): iTopExtensionsMap
{
if (is_null($this->oItopExtensionsMap)) {
- $this->oItopExtensionsMap = new iTopExtensionsMap($this->sTargetEnvironment);
+ $this->oItopExtensionsMap = iTopExtensionsMap::GetExtensionsMap($this->sTargetEnvironment);
}
return $this->oItopExtensionsMap;
}
@@ -258,8 +258,9 @@ class InstallationFileService
public function ProcessDefaultModules(): void
{
$sProductionModuleDir = APPROOT.'data/'.$this->sTargetEnvironment.'-modules/';
+ $oConfig = new Config(APPCONF.$this->sTargetEnvironment.'/'.ITOP_CONFIG_FILE, false);
- $aAvailableModules = $this->GetProductionEnv()->AnalyzeInstallation(MetaModel::GetConfig(), $this->GetExtraDirs());
+ $aAvailableModules = $this->GetProductionEnv()->AnalyzeInstallation($oConfig, $this->GetExtraDirs());
$this->aAutoSelectModules = [];
foreach ($aAvailableModules as $sModuleId => $aModule) {
diff --git a/setup/wizard.php b/setup/wizard.php
index f48fda0c29..b1f6e4c0dd 100644
--- a/setup/wizard.php
+++ b/setup/wizard.php
@@ -61,13 +61,41 @@ if (!function_exists('json_decode')) {
//N°3671 setup context: force $bForceTrustProxy to be persisted in next calls
utils::GetAbsoluteUrlAppRoot(true);
$oWizard = new WizardController('WizStepWelcome');
+$oCtx = new ContextTag(ContextTag::TAG_SETUP);
//N°3952
if (SetupUtils::IsSessionSetupTokenValid()) {
// Normal operation
$oWizard->Run();
} else {
SetupUtils::ExitMaintenanceMode(false);
- // Force initializing the setup
- $oWizard->Start();
+
+ $sConfigFile = utils::GetConfigFilePath(ITOP_DEFAULT_ENV);
+ if (file_exists($sConfigFile)) {
+ // The configuration file already exists
+ if (!is_writable($sConfigFile)) {
+ SetupUtils::ExitReadOnlyMode(false); // Reset readonly mode in case of problem
+ SetupUtils::EraseSetupToken();
+ $sRelativePath = utils::GetConfigFilePathRelative(ITOP_DEFAULT_ENV);
+ $oP = new SetupPage('Installation Cannot Continue');
+ $oP->add("Fatal error
\n");
+ $oP->error("Error: the configuration file '".$sRelativePath."' already exists and cannot be overwritten.");
+ $oP->p("The wizard cannot modify the configuration file for you. If you want to upgrade ".ITOP_APPLICATION.", make sure that the file '".$sRelativePath."' can be modified by the web server.");
+
+ $sButtonsHtml = <<Reload
+HTML;
+ $oP->p($sButtonsHtml);
+
+ $oP->output();
+ // Prevent token creation
+ exit;
+ } else {
+ chmod($sConfigFile, 0440);
+ }
+ }
+
SetupUtils::CreateSetupToken();
+
+ // Start the setup
+ $oWizard->Start();
}
diff --git a/setup/wizardcontroller.class.inc.php b/setup/wizardcontroller.class.inc.php
index 97cd4a4255..3015b35a69 100644
--- a/setup/wizardcontroller.class.inc.php
+++ b/setup/wizardcontroller.class.inc.php
@@ -195,31 +195,9 @@ class WizardController
{
SetupLog::Info("=== Setup screen: ".$oStep->GetTitle().' ('.get_class($oStep).')');
$oPage = new SetupPage($oStep->GetTitle());
- if ($oStep->RequiresWritableConfig()) {
- $sConfigFile = utils::GetConfigFilePath(ITOP_DEFAULT_ENV);
- if (file_exists($sConfigFile)) {
- // The configuration file already exists
- if (!is_writable($sConfigFile)) {
- SetupUtils::ExitReadOnlyMode(false); // Reset readonly mode in case of problem
- SetupUtils::EraseSetupToken();
- $sRelativePath = utils::GetConfigFilePathRelative(ITOP_DEFAULT_ENV);
- $oP = new SetupPage('Installation Cannot Continue');
- $oP->add("Fatal error
\n");
- $oP->error("Error: the configuration file '".$sRelativePath."' already exists and cannot be overwritten.");
- $oP->p("The wizard cannot modify the configuration file for you. If you want to upgrade ".ITOP_APPLICATION.", make sure that the file '".$sRelativePath."' can be modified by the web server.");
-
- $sButtonsHtml = <<Reload
-HTML;
- $oP->p($sButtonsHtml);
-
- $oP->output();
- // Prevent token creation
- exit;
- }
- }
- }
$oPage->LinkScriptFromAppRoot('setup/setup.js');
+ $oStep->PreFormDisplay($oPage);
+
$oPage->add('