@charset "UTF-8";
/***** Normalize.css *****/
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

main {
  display: block;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

/***** Base *****/
* {
  box-sizing: border-box;
}

body {
  background-color: #FFFFFF;
  color: #2F3941;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
@media (min-width: 1024px) {
  body > main {
    min-height: 65vh;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
  margin-top: 0;
}

h1 {
  font-size: 32px;
}

h2 {
  font-size: 22px;
}

h3 {
  font-size: 18px;
  font-weight: 600;
}

h4 {
  font-size: 16px;
}

a {
  color: #1F73B7;
  text-decoration: none;
}
a:visited {
  color: #9358B0;
}
a:hover, a:active, a:focus {
  text-decoration: underline;
}

.hbs-form input,
.hbs-form textarea, .search input,
.search textarea {
  color: #000;
  font-size: 14px;
}
.hbs-form input, .search input {
  max-width: 100%;
  box-sizing: border-box;
  transition: border 0.12s ease-in-out;
  /* We use the :where selector to not increase the specificity of the selector */
}
.hbs-form input:where(:not([type=checkbox])), .search input:where(:not([type=checkbox])) {
  outline: none;
}
.hbs-form input:where(:not([type=checkbox])):focus, .search input:where(:not([type=checkbox])):focus {
  border: 1px solid #2850DC;
}
.hbs-form input[disabled], .search input[disabled] {
  background-color: #ddd;
}
.hbs-form select, .search select {
  -webkit-appearance: none;
  -moz-appearance: none;
  background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23CCC' d='M0 0h10L5 6 0 0z'/%3E%3C/svg%3E%0A") no-repeat #fff;
  background-position: right 10px center;
  border: 1px solid #848F99;
  border-radius: 4px;
  padding: 8px 30px 8px 10px;
  outline: none;
  color: #555;
  width: 100%;
}
.hbs-form select:focus, .search select:focus {
  border: 1px solid #2850DC;
}
.hbs-form select::-ms-expand, .search select::-ms-expand {
  display: none;
}
.hbs-form textarea, .search textarea {
  border: 1px solid #848F99;
  border-radius: 2px;
  resize: vertical;
  width: 100%;
  outline: none;
  padding: 10px;
}
.hbs-form textarea:focus, .search textarea:focus {
  border: 1px solid #2850DC;
}

.container {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 5%;
}
@media (min-width: 1160px) {
  .container {
    padding: 0;
    width: 90%;
  }
}

.container-divider {
  border-top: 1px solid #ddd;
  margin-bottom: 20px;
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.error-page {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 5%;
}
@media (min-width: 1160px) {
  .error-page {
    padding: 0;
    width: 90%;
  }
}

.visibility-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}

/***** Buttons *****/
.button, .pagination-next-link, .pagination-prev-link, .pagination-first-link, .pagination-last-link, .subscriptions-subscribe button, .requests-table-toolbar .organization-subscribe button, .community-follow button, .article-subscribe button, .section-subscribe button, .split-button button {
  background-color: transparent;
  border: 1px solid #2850DC;
  border-radius: 4px;
  color: #2850DC;
  cursor: pointer;
  display: inline-block;
  font-size: 12px;
  line-height: 2.34;
  margin: 0;
  padding: 0 20px;
  text-align: center;
  transition: background-color 0.12s ease-in-out, border-color 0.12s ease-in-out, color 0.15s ease-in-out;
  user-select: none;
  white-space: nowrap;
  width: 100%;
  -webkit-touch-callout: none;
}
@media (min-width: 768px) {
  .button, .pagination-next-link, .pagination-prev-link, .pagination-first-link, .pagination-last-link, .subscriptions-subscribe button, .requests-table-toolbar .organization-subscribe button, .community-follow button, .article-subscribe button, .section-subscribe button, .split-button button {
    width: auto;
  }
}
.button:visited, .pagination-next-link:visited, .pagination-prev-link:visited, .pagination-first-link:visited, .pagination-last-link:visited, .subscriptions-subscribe button:visited, .requests-table-toolbar .organization-subscribe button:visited, .community-follow button:visited, .article-subscribe button:visited, .section-subscribe button:visited, .split-button button:visited {
  color: #2850DC;
}
.button:hover, .pagination-next-link:hover, .pagination-prev-link:hover, .pagination-first-link:hover, .pagination-last-link:hover, .subscriptions-subscribe button:hover, .requests-table-toolbar .organization-subscribe button:hover, .community-follow button:hover, .article-subscribe button:hover, .section-subscribe button:hover, .split-button button:hover, .button:active, .pagination-next-link:active, .pagination-prev-link:active, .pagination-first-link:active, .pagination-last-link:active, .subscriptions-subscribe button:active, .requests-table-toolbar .organization-subscribe button:active, .community-follow button:active, .article-subscribe button:active, .section-subscribe button:active, .split-button button:active, .button:focus, .pagination-next-link:focus, .pagination-prev-link:focus, .pagination-first-link:focus, .pagination-last-link:focus, .subscriptions-subscribe button:focus, .requests-table-toolbar .organization-subscribe button:focus, .community-follow button:focus, .article-subscribe button:focus, .section-subscribe button:focus, .split-button button:focus, .button.button-primary, .button-primary.pagination-next-link, .button-primary.pagination-prev-link, .button-primary.pagination-first-link, .button-primary.pagination-last-link, .subscriptions-subscribe button.button-primary, .subscriptions-subscribe button[data-selected=true], .requests-table-toolbar .organization-subscribe button.button-primary, .requests-table-toolbar .organization-subscribe button[data-selected=true], .community-follow button.button-primary, .article-subscribe button.button-primary, .article-subscribe button[data-selected=true], .section-subscribe button.button-primary, .section-subscribe button[data-selected=true], .split-button button.button-primary {
  background-color: #2850DC;
  color: #FFFFFF;
  text-decoration: none;
}
.button.button-primary:hover, .button-primary.pagination-next-link:hover, .button-primary.pagination-prev-link:hover, .button-primary.pagination-first-link:hover, .button-primary.pagination-last-link:hover, .subscriptions-subscribe button.button-primary:hover, .subscriptions-subscribe button[data-selected=true]:hover, .requests-table-toolbar .organization-subscribe button.button-primary:hover, .requests-table-toolbar .organization-subscribe button[data-selected=true]:hover, .community-follow button.button-primary:hover, .article-subscribe button.button-primary:hover, .article-subscribe button[data-selected=true]:hover, .section-subscribe button.button-primary:hover, .section-subscribe button[data-selected=true]:hover, .split-button button:hover, .button.button-primary:focus, .button-primary.pagination-next-link:focus, .button-primary.pagination-prev-link:focus, .button-primary.pagination-first-link:focus, .button-primary.pagination-last-link:focus, .subscriptions-subscribe button.button-primary:focus, .subscriptions-subscribe button[data-selected=true]:focus, .requests-table-toolbar .organization-subscribe button.button-primary:focus, .requests-table-toolbar .organization-subscribe button[data-selected=true]:focus, .community-follow button.button-primary:focus, .article-subscribe button.button-primary:focus, .article-subscribe button[data-selected=true]:focus, .section-subscribe button.button-primary:focus, .section-subscribe button[data-selected=true]:focus, .split-button button.button-primary:focus, .button.button-primary:active, .button-primary.pagination-next-link:active, .button-primary.pagination-prev-link:active, .button-primary.pagination-first-link:active, .button-primary.pagination-last-link:active, .subscriptions-subscribe button.button-primary:active, .subscriptions-subscribe button[data-selected=true]:active, .requests-table-toolbar .organization-subscribe button.button-primary:active, .requests-table-toolbar .organization-subscribe button[data-selected=true]:active, .community-follow button.button-primary:active, .article-subscribe button.button-primary:active, .article-subscribe button[data-selected=true]:active, .section-subscribe button.button-primary:active, .section-subscribe button[data-selected=true]:active, .split-button button.button-primary:active {
  background-color: #162f88;
  border-color: #162f88;
}
.button[data-disabled], [data-disabled].pagination-next-link, [data-disabled].pagination-prev-link, [data-disabled].pagination-first-link, [data-disabled].pagination-last-link, .subscriptions-subscribe button[data-disabled], .requests-table-toolbar .organization-subscribe button[data-disabled], .community-follow button[data-disabled], .article-subscribe button[data-disabled], .section-subscribe button[data-disabled], .split-button button[data-disabled] {
  cursor: default;
}

.button-large, .hbs-form input[type=submit] {
  cursor: pointer;
  background-color: #2850DC;
  border: 0;
  border-radius: 4px;
  color: #FFFFFF;
  font-size: 14px;
  line-height: 2.72;
  min-width: 190px;
  padding: 0 1.9286em;
  width: 100%;
}
@media (min-width: 768px) {
  .button-large, .hbs-form input[type=submit] {
    width: auto;
  }
}
.button-large:visited, .hbs-form input[type=submit]:visited {
  color: #FFFFFF;
}
.button-large:hover, .button-large:active, .button-large:focus, .hbs-form input[type=submit]:hover, .hbs-form input[type=submit]:active, .hbs-form input[type=submit]:focus {
  background-color: #162f88;
}
.button-large[disabled], .hbs-form input[type=submit][disabled] {
  background-color: #ddd;
}

.button-secondary {
  color: #5a6d7c;
  border: 1px solid #848F99;
  background-color: transparent;
}
.button-secondary:visited {
  color: #5a6d7c;
}
.button-secondary:hover, .button-secondary:focus, .button-secondary:active {
  color: #2F3941;
  border: 1px solid #848F99;
  background-color: #f7f7f7;
}

/***** Split button *****/
.split-button {
  display: flex;
}

.split-button button {
  background-color: #2850DC;
  border: 0;
  color: #FFFFFF;
  height: 32px;
  line-height: 16px;
  outline-color: #2850DC;
}

[dir=rtl] .split-button button:not(:only-child):first-child {
  border-left: 1px solid #FFFFFF;
  border-top-left-radius: unset;
  border-bottom-left-radius: unset;
}
[dir=ltr] .split-button button:not(:only-child):first-child {
  border-right: 1px solid #FFFFFF;
  border-top-right-radius: unset;
  border-bottom-right-radius: unset;
}
.split-button button:not(:only-child):last-child {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 26px;
  min-width: 26px;
  max-width: 26px;
  padding: 0;
}
[dir=rtl] .split-button button:not(:only-child):last-child {
  border-top-right-radius: unset;
  border-bottom-right-radius: unset;
}
[dir=ltr] .split-button button:not(:only-child):last-child {
  border-top-left-radius: unset;
  border-bottom-left-radius: unset;
}

/***** Tables *****/
.table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
}
@media (min-width: 768px) {
  .table {
    table-layout: auto;
  }
}
.table th,
.table th a {
  color: #5a6d7c;
  font-size: 13px;
  text-align: left;
}
[dir=rtl] .table th,
[dir=rtl] .table th a {
  text-align: right;
}
.table tr {
  border-bottom: 1px solid #ddd;
  display: block;
  padding: 20px 0;
}
@media (min-width: 768px) {
  .table tr {
    display: table-row;
  }
}
.table td {
  display: block;
}
@media (min-width: 768px) {
  .table td {
    display: table-cell;
  }
}
@media (min-width: 1024px) {
  .table td, .table th {
    padding: 20px 30px;
  }
}
@media (min-width: 768px) {
  .table td, .table th {
    padding: 10px 20px;
    height: 60px;
  }
}

/***** Forms *****/
.form {
  max-width: 650px;
}

.form-field ~ .form-field {
  margin-top: 25px;
}

.form-field label {
  display: block;
  font-size: 13px;
  margin-bottom: 5px;
}

.form-field input {
  border: 1px solid #848F99;
  border-radius: 4px;
  padding: 10px;
  width: 100%;
}
.form-field input:focus {
  border: 1px solid #2850DC;
}

.form-field input[type=text] {
  border: 1px solid #848F99;
  border-radius: 4px;
}
.form-field input[type=text]:focus {
  border: 1px solid #2850DC;
}

.form-field input[type=checkbox] {
  width: auto;
}

.form-field .nesty-input {
  border-radius: 4px;
  border: 1px solid #848F99;
  height: 40px;
  line-height: 40px;
  outline: none;
  vertical-align: middle;
}
.form-field .nesty-input:focus {
  border: 1px solid #2850DC;
  text-decoration: none;
}

.form-field .hc-multiselect-toggle {
  border: 1px solid #848F99;
}

.form-field .hc-multiselect-toggle:focus {
  outline: none;
  border: 1px solid #2850DC;
  text-decoration: none;
}

.form-field textarea {
  vertical-align: middle;
}

.form-field input[type=checkbox] + label {
  margin: 0 0 0 10px;
}

.form-field .optional {
  color: #5a6d7c;
  margin-left: 4px;
}

.form-field p {
  color: #5a6d7c;
  font-size: 12px;
  margin: 5px 0;
}

.form footer {
  margin-top: 40px;
  padding-top: 30px;
}

.form footer a {
  color: #5a6d7c;
  cursor: pointer;
  margin-right: 15px;
}

.form .suggestion-list {
  font-size: 13px;
  margin-top: 30px;
}
.form .suggestion-list label {
  border-bottom: 1px solid #ddd;
  display: block;
  padding-bottom: 5px;
}
.form .suggestion-list li {
  padding: 10px 0;
}
.form .suggestion-list li a:visited {
  color: #9358B0;
}

/***** Header *****/
.header {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 5%;
  position: relative;
  align-items: center;
  display: flex;
  height: 71px;
  justify-content: space-between;
}
@media (min-width: 1160px) {
  .header {
    padding: 0;
    width: 90%;
  }
}

.logo img {
  max-height: 37px;
  vertical-align: middle;
}

.logo span {
  margin: 0 10px;
  color: #2850DC;
}

.logo a {
  display: inline-block;
}

.logo a:hover, .logo a:focus, .logo a:active {
  text-decoration: none;
}

.user-nav {
  display: inline-block;
  position: absolute;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .user-nav {
    position: relative;
  }
}
.user-nav[aria-expanded=true] {
  background-color: #fff;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.15), 0 4px 10px 0 rgba(0, 0, 0, 0.1);
  border: solid 1px #ddd;
  right: 0;
  left: 0;
  top: 71px;
  z-index: 1;
}
.user-nav[aria-expanded=true] > a {
  display: block;
  margin: 20px;
}
.user-nav[aria-expanded=true] > .user-nav-list li {
  display: block;
}
.user-nav[aria-expanded=true] > .user-nav-list a {
  display: block;
  margin: 20px;
}

.user-nav-list {
  display: block;
  list-style: none;
}
.user-nav-list > li {
  display: inline-block;
}

@media (max-width: 768px) {
  .nav-wrapper-desktop {
    display: none;
  }
}
@media (min-width: 768px) {
  .nav-wrapper-desktop {
    display: none;
  }
}
@media (min-width: 1024px) {
  .nav-wrapper-desktop {
    display: inline-block;
  }
}
.nav-wrapper-desktop a {
  border: 0;
  color: #1F73B7;
  display: none;
  font-size: 14px;
  padding: 0 20px 0 0;
  width: auto;
}
@media (min-width: 768px) {
  .nav-wrapper-desktop a {
    display: inline-block;
  }
}
[dir=rtl] .nav-wrapper-desktop a {
  padding: 0 0 0 20px;
}
.nav-wrapper-desktop a:hover, .nav-wrapper-desktop a:focus, .nav-wrapper-desktop a:active {
  background-color: transparent;
  color: #1F73B7;
  text-decoration: underline;
}

@media (min-width: 1024px) {
  .nav-wrapper-mobile {
    display: none;
  }
}
.nav-wrapper-mobile .menu-button-mobile {
  background: none;
  border: 0;
  width: auto;
  min-width: 71px;
  cursor: pointer;
}
.nav-wrapper-mobile .menu-button-mobile .icon-menu {
  padding: 7px;
  vertical-align: middle;
  width: 30px;
  height: 30px;
  border-radius: 50%;
}
.nav-wrapper-mobile .menu-button-mobile[aria-expanded=true] .icon-menu {
  background: #f3f3f3;
}
.nav-wrapper-mobile .menu-list-mobile {
  position: absolute;
  background-color: #fff;
  box-shadow: 0 10px 10px 0 rgba(0, 0, 0, 0.15);
  border-top: solid 1px #ddd;
  border-bottom: solid 1px #ddd;
  right: 0;
  left: 0;
  top: 71px;
  z-index: 2;
}
.nav-wrapper-mobile .menu-list-mobile[aria-expanded=false] {
  display: none;
}
.nav-wrapper-mobile .menu-list-mobile[aria-expanded=true] {
  display: block;
}
.nav-wrapper-mobile .menu-list-mobile-items .item {
  margin: 4px 0;
}
.nav-wrapper-mobile .menu-list-mobile-items li:empty:not(.nav-divider) {
  display: none;
}
.nav-wrapper-mobile .menu-list-mobile-items .nav-divider {
  border-bottom: 0.1px solid #ddd;
  padding: 0;
}
.nav-wrapper-mobile .menu-list-mobile-items .nav-divider:last-child {
  display: none;
}
.nav-wrapper-mobile .menu-list-mobile-items button {
  background: none;
  border: none;
  padding: 8px 24px;
  width: 100%;
  height: 100%;
  color: #2F3941;
  cursor: pointer;
  text-align: start;
}
.nav-wrapper-mobile .menu-list-mobile-items button:active, .nav-wrapper-mobile .menu-list-mobile-items button:focus, .nav-wrapper-mobile .menu-list-mobile-items button:hover {
  background-color: #f3f3f3;
  text-decoration: underline;
}
.nav-wrapper-mobile .menu-list-mobile-items a {
  display: block;
  padding: 8px 24px;
  width: 100%;
  height: 100%;
  color: #2F3941;
}
.nav-wrapper-mobile .menu-list-mobile-items a:active, .nav-wrapper-mobile .menu-list-mobile-items a:focus, .nav-wrapper-mobile .menu-list-mobile-items a:hover {
  background-color: #f3f3f3;
}
.nav-wrapper-mobile .menu-list-mobile-items .my-profile {
  display: flex;
  line-height: 1.5;
}
.nav-wrapper-mobile .menu-list-mobile-items .my-profile .my-profile-tooltip {
  font-size: 12px;
  color: #68737D;
}
.nav-wrapper-mobile .menu-list-mobile-items .menu-profile-avatar {
  height: 20px;
  width: 20px;
  border-radius: 50%;
  display: inline-block;
  margin-right: 8px;
  margin-top: 1px;
}
[dir=rtl] .nav-wrapper-mobile .menu-list-mobile-items .menu-profile-avatar {
  margin-right: 0;
  margin-left: 8px;
}

.skip-navigation {
  align-items: center;
  background-color: black;
  color: white;
  display: flex;
  font-size: 14px;
  justify-content: center;
  left: -999px;
  margin: 20px;
  padding: 20px;
  overflow: hidden;
  position: absolute;
  top: auto;
  z-index: -999;
}
[dir=rtl] .skip-navigation {
  left: initial;
  right: -999px;
}
.skip-navigation:focus, .skip-navigation:active {
  left: auto;
  overflow: auto;
  text-align: center;
  text-decoration: none;
  top: auto;
  z-index: 999;
}
[dir=rtl] .skip-navigation:focus, [dir=rtl] .skip-navigation:active {
  left: initial;
  right: auto;
}

#zd-modal-container ~ .skip-navigation {
  display: none;
}

.ask-ai {
  align-items: center;
  background-color: #1F73B7;
  border: 1px solid #1F73B7;
  border-radius: 4px;
  color: #FFFFFF;
  display: inline-flex;
  font-size: 14px;
  font-weight: 600;
  gap: 6px;
  line-height: 1.4286;
  padding: 6px 14px;
}
.ask-ai:visited {
  color: #FFFFFF;
}
.ask-ai .ask-ai-icon {
  flex-shrink: 0;
}

.nav-wrapper-desktop .ask-ai {
  margin-inline-end: 16px;
  padding: 6px 14px;
}
.nav-wrapper-desktop .ask-ai, .nav-wrapper-desktop .ask-ai:visited {
  color: #FFFFFF;
}
.nav-wrapper-desktop .ask-ai:hover, .nav-wrapper-desktop .ask-ai:focus, .nav-wrapper-desktop .ask-ai:active {
  background-color: #0F3554;
  border-color: #0F3554;
  color: #FFFFFF;
  text-decoration: none;
}

.nav-wrapper-mobile .ask-ai {
  margin: 4px 24px;
  padding: 6px 14px;
  width: auto;
  height: auto;
}
.nav-wrapper-mobile .ask-ai, .nav-wrapper-mobile .ask-ai:visited {
  color: #FFFFFF;
}
.nav-wrapper-mobile .ask-ai:hover, .nav-wrapper-mobile .ask-ai:focus, .nav-wrapper-mobile .ask-ai:active {
  background-color: #0F3554;
  border-color: #0F3554;
  color: #FFFFFF;
  text-decoration: none;
}

/***** User info in header *****/
.user-info {
  display: inline-block;
}
.user-info .dropdown-toggle::after {
  display: none;
}
@media (min-width: 768px) {
  .user-info .dropdown-toggle::after {
    display: inline-block;
  }
}
.user-info > button {
  border: 0;
  color: #1F73B7;
  min-width: 0;
  padding: 0;
  white-space: nowrap;
}
.user-info > button:hover, .user-info > button:focus {
  color: #1F73B7;
  background-color: transparent;
}
.user-info > button::after {
  color: #1F73B7;
  padding-right: 15px;
}
[dir=rtl] .user-info > button::after {
  padding-left: 15px;
  padding-right: 0;
}

#user #user-name {
  display: none;
  font-size: 14px;
}
@media (min-width: 768px) {
  #user #user-name {
    display: inline-block;
  }
}
#user #user-name:hover {
  text-decoration: underline;
}

/***** User avatar *****/
.user-avatar {
  height: 25px;
  width: 25px;
  border-radius: 50%;
  display: inline-block;
  vertical-align: middle;
}

.avatar {
  display: inline-block;
  position: relative;
}
.avatar img {
  height: 40px;
  width: 40px;
}
.avatar .icon-agent {
  color: #2850DC;
  border: 2px solid #fff;
  border-radius: 50%;
  bottom: -4px;
  background-color: #FFFFFF;
  font-size: 17px;
  height: 17px;
  line-height: 17px;
  position: absolute;
  right: -2px;
  text-align: center;
  width: 17px;
}

/***** Footer *****/
.footer {
  border-top: 1px solid #ddd;
  margin-top: 60px;
  padding: 30px 0;
}
.footer a {
  color: #5a6d7c;
}
.footer-inner {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 5%;
  display: flex;
  justify-content: space-between;
}
@media (min-width: 1160px) {
  .footer-inner {
    padding: 0;
    width: 90%;
  }
}
.footer-language-selector button {
  color: #5a6d7c;
  display: inline-block;
}

.powered-by-zendesk a,
.powered-by-zendesk a:visited {
  color: #5a6d7c;
}

/***** Breadcrumbs *****/
.breadcrumbs {
  margin: 0 0 15px 0;
  padding: 0;
  display: flex;
}
@media (min-width: 768px) {
  .breadcrumbs {
    margin: 0;
  }
}
.breadcrumbs li {
  display: inline-block;
  color: #5a6d7c;
  font-size: 13px;
  max-width: 450px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.breadcrumbs li + li::before {
  content: ">";
  margin: 0 4px;
}
.breadcrumbs li a:visited {
  color: #1F73B7;
}

/***** Search field *****/
.search-container {
  position: relative;
}

.search {
  border-color: #848F99;
  border-radius: 30px;
  border-style: solid;
  border-width: 1px;
  display: flex;
  position: relative;
  transition: border 0.12s ease-in-out;
}
.search:focus-within {
  border-color: #2850DC;
}
.search input[type=search],
.search .clear-button {
  background-color: #fff;
  border-radius: 30px;
  border: none;
}
.search-full input[type=search], .search-full .clear-button {
  border-color: #fff;
}
.search input[type=search] {
  appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  color: #666;
  flex: 1 1 auto;
  height: 40px;
  width: 100%;
}
.search input[type=search]:focus {
  color: #555;
}
.search input[type=search]::-webkit-search-decoration, .search input[type=search]::-webkit-search-cancel-button, .search input[type=search]::-webkit-search-results-button, .search input[type=search]::-webkit-search-results-decoration {
  -webkit-appearance: none;
}
.search input[type=search]:-webkit-autofill, .search input[type=search]:-webkit-autofill:hover, .search input[type=search]:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px #fff inset;
}
.search .clear-button {
  align-items: center;
  box-sizing: border-box;
  color: #777;
  cursor: pointer;
  display: none;
  flex: none;
  justify-content: center;
  padding: 0 15px;
}
.search .clear-button:hover {
  background-color: #2850DC;
  color: #fff;
}
.search .clear-button:focus {
  outline: 0;
  box-shadow: 0 0 0 3px #2850DC;
}
.search-has-value .clear-button {
  display: flex;
}

[dir=ltr] .search input[type=search] {
  padding-left: 40px;
  padding-right: 20px;
}
[dir=ltr] .search-has-value input[type=search] {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
  border-right-color: transparent;
}
[dir=ltr] .search-has-value input[type=search]:focus {
  border-right-color: #2850DC;
}
[dir=ltr] .search .clear-button {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
  border-left-color: transparent;
}
[dir=ltr] .search .clear-button:focus {
  border-left-color: #2850DC;
}

[dir=rtl] .search input[type=search] {
  padding-left: 20px;
  padding-right: 40px;
}
[dir=rtl] .search-has-value input[type=search] {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
  border-left-color: transparent;
}
[dir=rtl] .search-has-value input[type=search]:focus {
  border-left-color: #2850DC;
}
[dir=rtl] .search .clear-button {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
  border-right-color: transparent;
}
[dir=rtl] .search .clear-button:focus {
  border-right-color: #2850DC;
}

.search-icon {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
  left: 15px;
  z-index: 1;
  width: 18px;
  height: 18px;
  color: #777;
  pointer-events: none;
}
[dir=rtl] .search-icon {
  left: auto;
  right: 15px;
}

/***** Hero component *****/
.hero {
  background-image: url(/hc/theming_assets/01J2H3HW40NWP4JCMM6FC7Y8VY);
  background-position: center;
  background-size: cover;
  height: 300px;
  padding: 0 20px;
  text-align: center;
  width: 100%;
}
.hero-inner {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  max-width: 610px;
  margin: 0 auto;
}

.page-header {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 10px 0;
}
@media (min-width: 768px) {
  .page-header {
    align-items: baseline;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 16px;
    margin: 0;
  }
}
.page-header .section-subscribe {
  flex-shrink: 0;
  margin-bottom: 10px;
}
@media (min-width: 768px) {
  .page-header .section-subscribe {
    margin-bottom: 0;
  }
}
.page-header h1 {
  flex-grow: 1;
  margin-bottom: 10px;
}
.page-header-description {
  font-style: italic;
  margin: 0 0 30px 0;
  word-break: break-word;
}
@media (min-width: 1024px) {
  .page-header-description {
    flex-basis: 100%;
  }
}
.page-header .icon-lock {
  height: 20px;
  width: 20px;
  position: relative;
  left: -5px;
  vertical-align: baseline;
}

.sub-nav {
  align-items: baseline;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 15px 30px;
  justify-content: space-between;
  margin-bottom: 55px;
}
@media (min-width: 768px) {
  .sub-nav {
    flex-direction: row;
  }
}
.sub-nav .breadcrumbs {
  margin: 0;
}
.sub-nav .search-container {
  max-width: 300px;
  width: 100%;
}
@media (min-width: 768px) {
  .sub-nav .search-container {
    flex: 0 1 300px;
  }
}
.sub-nav input[type=search]::after {
  font-size: 15px;
}

/***** Blocks *****/
/* Used in Homepage#categories and Community#topics */
.blocks-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  list-style: none;
  padding: 0;
}
@media (min-width: 768px) {
  .blocks-list {
    margin: 0 -15px;
  }
}
.blocks-item {
  border: 1px solid #2850DC;
  border-radius: 4px;
  box-sizing: border-box;
  color: #2850DC;
  display: flex;
  flex: 1 0 340px;
  margin: 0 0 30px;
  max-width: 100%;
  text-align: center;
}
@media (min-width: 768px) {
  .blocks-item {
    margin: 0 15px 30px;
  }
}
.blocks-item:hover, .blocks-item:focus, .blocks-item:active {
  background-color: #2850DC;
}
.blocks-item:hover *, .blocks-item:focus *, .blocks-item:active * {
  color: #FFFFFF;
  text-decoration: none;
}
.blocks-item-internal {
  background-color: transparent;
  border: 1px solid #ddd;
}
.blocks-item-internal .icon-lock {
  height: 15px;
  width: 15px;
  bottom: 5px;
  position: relative;
}
.blocks-item-internal a {
  color: #2F3941;
}
.blocks-item-link {
  color: #2850DC;
  padding: 20px 30px;
  display: flex;
  flex-direction: column;
  flex: 1;
  justify-content: center;
  border-radius: inherit;
}
.blocks-item-link:visited, .blocks-item-link:hover, .blocks-item-link:active {
  color: inherit;
  text-decoration: none;
}
.blocks-item-link:focus {
  outline: 0;
  box-shadow: 0 0 0 3px #2850DC;
  text-decoration: none;
}
.blocks-item-title {
  margin-bottom: 0;
  font-size: 16px;
}
.blocks-item-description {
  margin: 0;
}
.blocks-item-description:not(:empty) {
  margin-top: 10px;
}

/***** Homepage *****/
.section {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .section {
    margin-bottom: 60px;
  }
}

.home-section h2 {
  margin-bottom: 10px;
  text-align: center;
}

/***** Promoted articles *****/
.promoted-articles {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}
@media (min-width: 1024px) {
  .promoted-articles {
    flex-direction: row;
  }
}
.promoted-articles-item {
  flex: 1 0 auto;
}
@media (min-width: 1024px) {
  .promoted-articles-item {
    align-self: flex-end;
    flex: 0 0 auto;
    padding-right: 30px;
    width: 33%; /* Three columns on desktop */
  }
  [dir=rtl] .promoted-articles-item {
    padding: 0 0 0 30px;
  }
}
.promoted-articles-item:nth-child(3n) {
  padding-right: 0;
}
.promoted-articles-item a {
  display: block;
  border-bottom: 1px solid #ddd;
  padding: 15px 0;
}
.promoted-articles-item .icon-lock {
  vertical-align: baseline;
}
.promoted-articles-item:last-child a {
  border: 0;
}
@media (min-width: 1024px) {
  .promoted-articles-item:last-child a {
    border-bottom: 1px solid #ddd;
  }
}

/***** Community section in homepage *****/
.community {
  text-align: center;
}
.community-image {
  min-height: 300px;
  margin-top: 32px;
  background-image: url(/hc/theming_assets/01J2H3HX0509NX8RGE8FVFP2M8);
  background-position: center;
  background-repeat: no-repeat;
  max-width: 100%;
}
.community a {
  color: #1F73B7;
  text-decoration: underline;
}
.community a:visited {
  color: #9358B0;
}
.community a:hover, .community a:active, .community a:focus {
  color: #0F3554;
}

.community,
.activity {
  border-top: 1px solid #ddd;
  padding: 30px 0;
}

/***** Recent activity *****/
.recent-activity-header {
  margin-bottom: 10px;
  text-align: center;
}
.recent-activity-list {
  padding: 0;
}
.recent-activity-item {
  border-bottom: 1px solid #ddd;
  overflow: auto;
  padding: 20px 0;
}
.recent-activity-item h3 {
  margin: 0;
}
.recent-activity-item-parent {
  font-size: 16px;
  font-weight: 600;
}
.recent-activity-item-parent, .recent-activity-item-link {
  margin: 6px 0;
  display: inline-block;
  width: 100%;
}
@media (min-width: 768px) {
  .recent-activity-item-parent, .recent-activity-item-link {
    width: 70%;
    margin: 0;
  }
}
.recent-activity-item-link {
  font-size: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.recent-activity-item-meta {
  color: #2F3941;
  margin: 15px 0 0 0;
  float: none;
}
@media (min-width: 768px) {
  .recent-activity-item-meta {
    margin: 0;
    float: right;
  }
  [dir=rtl] .recent-activity-item-meta {
    float: left;
  }
}
.recent-activity-item-time, .recent-activity-item-comment {
  display: inline-block;
  font-size: 13px;
}
.recent-activity-item-comment {
  padding-left: 5px;
}
[dir=rtl] .recent-activity-item-comment {
  padding: 0 5px 0 0;
}
.recent-activity-item-comment::before {
  display: inline-block;
}
.recent-activity-controls {
  padding-top: 15px;
}
.recent-activity-controls a {
  color: #1F73B7;
  text-decoration: underline;
}
.recent-activity-controls a:visited {
  color: #9358B0;
}
.recent-activity-controls a:hover, .recent-activity-controls a:active, .recent-activity-controls a:focus {
  color: #0F3554;
}
.recent-activity-accessibility-label {
  border: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.recent-activity-comment-icon svg {
  vertical-align: middle;
  color: #2850DC;
  width: 16px;
  height: 16px;
}
.recent-activity-comment-icon:after {
  content: attr(data-comment-count);
  margin-left: 3px;
}
[dir=rtl] .recent-activity-comment-icon:after {
  margin-left: 0;
  margin-right: 3px;
}

/***** Category pages *****/
.category-container {
  display: flex;
  justify-content: flex-end;
}
.category-content {
  flex: 1;
  max-width: 100%;
}
@media (min-width: 1024px) {
  .category-content {
    flex: 0 0 80%;
  }
}

.section-tree {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media (min-width: 768px) {
  .section-tree {
    flex-direction: row;
  }
}
.section-tree .section {
  flex: initial;
  max-width: 100%;
}
@media (min-width: 768px) {
  .section-tree .section {
    flex: 0 0 45%; /* Two columns for tablet and desktop. Leaving 5% separation between columns */
  }
}
.section-tree-title {
  margin-bottom: 0;
  font-size: 18px;
  font-weight: 600;
}
.section-tree-title a {
  color: #2F3941;
}
.section-tree .see-all-articles {
  display: block;
  padding: 15px 0;
}

.article-list-item {
  font-size: 16px;
  padding: 15px 0;
  text-overflow: ellipsis;
  overflow: hidden;
}
.article-list-item a {
  color: #2F3941;
}

.icon-star {
  color: #2850DC;
  font-size: 18px;
}

/***** Section pages *****/
.section-container {
  display: flex;
  justify-content: flex-end;
}
.section-content {
  flex: 1;
  max-width: 100%;
}
@media (min-width: 1024px) {
  .section-content {
    flex: 0 0 80%;
  }
}
.section-list {
  margin: 40px 0;
}

.section-list-item {
  border-bottom: 1px solid #ddd;
  font-size: 16px;
  padding: 15px 0;
}
.section-list-item:first-child {
  border-top: 1px solid #ddd;
}
.section-list-item a {
  align-items: center;
  color: #2F3941;
  display: flex;
  justify-content: space-between;
}

.see-all-sections-trigger {
  cursor: pointer;
  display: block;
  padding: 15px;
  text-align: center;
}
.see-all-sections-trigger[aria-hidden=true] {
  display: none;
}

/***** Article *****/
.article {
  /*
  * The article grid is defined this way to optimize readability:
  * Sidebar | Content | Free space
  * 17%     | 66%     | 17%
  */
  flex: 1 0 auto;
}
@media (min-width: 1024px) {
  .article {
    flex: 1 0 66%;
    max-width: 66%;
    min-width: 640px;
    padding: 0 30px;
  }
}
.article-container {
  display: flex;
  flex-direction: column;
}
@media (min-width: 1024px) {
  .article-container {
    flex-direction: row;
  }
}
.article-header {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 40px;
  margin-top: 20px;
}
@media (min-width: 768px) {
  .article-header {
    flex-direction: row;
    margin-top: 0;
  }
}
.article-avatar {
  margin-right: 10px;
}
.article-author {
  margin-bottom: 10px;
}
.article-title {
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
@media (min-width: 768px) {
  .article-title {
    flex-basis: 100%; /* Take entire row */
  }
}
.article-title .icon-lock {
  position: relative;
  left: -5px;
  vertical-align: baseline;
}
.article [role=button] {
  flex-shrink: 0; /*Avoid collapsing elements in Safari (https://github.com/philipwalton/flexbugs#1-minimum-content-sizing-of-flex-items-not-honored)*/
  width: 100%;
}
@media (min-width: 768px) {
  .article [role=button] {
    width: auto;
  }
}
.article-info {
  max-width: 100%;
}
.article-meta {
  display: inline-block;
  vertical-align: middle;
}
.article-body {
  display: flow-root;
}
.article-body a {
  color: #1F73B7;
  text-decoration: underline;
}
.article-body a:visited {
  color: #9358B0;
}
.article-body a:hover, .article-body a:active, .article-body a:focus {
  color: #0F3554;
}
.article-body img {
  height: auto;
  max-width: 100%;
}
.article-body p > img.image-style-align-left {
  float: left;
  margin: 8px 20px 6px 0;
}
.article-body p > img.image-style-align-right {
  float: right;
  margin: 8px 0px 6px 20px;
}
.article-body p > img.image-style-block-align-right {
  margin-left: auto;
  margin-right: 0;
}
.article-body p > img.image-style-block-align-left {
  margin-left: 0;
  margin-right: auto;
}
.article-body figure.image {
  display: table;
  margin: 0 auto;
}
.article-body figure.image > img {
  display: block;
  width: 100%;
}
.article-body figure.image.image-style-align-left {
  float: left;
  margin: 8px 20px 6px 0;
}
.article-body figure.image.image-style-align-right {
  float: right;
  margin: 8px 0px 6px 20px;
}
.article-body figure.image.image-style-block-align-right {
  margin-left: auto;
  margin-right: 0;
}
.article-body figure.image.image-style-block-align-left {
  margin-left: 0;
  margin-right: auto;
}
.article-body figcaption {
  padding: 10px 0;
  font-size: 12px;
  text-align: center;
  background-color: #f2f2f2;
}
.article-body ul,
.article-body ol {
  padding-left: 20px;
  list-style-position: outside;
  margin: 20px 0 20px 20px;
}
[dir=rtl] .article-body ul,
[dir=rtl] .article-body ol {
  padding-right: 20px;
  padding-left: 0;
  margin-left: 0;
  margin-right: 20px;
}
.article-body ul > ul,
.article-body ol > ol,
.article-body ol > ul,
.article-body ul > ol,
.article-body li > ul,
.article-body li > ol {
  margin: 0;
}
.article-body ul {
  list-style-type: disc;
}
.article-body :not(pre) > code {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 0 5px;
  margin: 0 2px;
}
.article-body pre {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 10px 15px;
  overflow: auto;
  white-space: pre;
  direction: ltr;
}
.article-body blockquote {
  border-left: 1px solid #ddd;
  color: #5a6d7c;
  font-style: italic;
  padding: 0 15px;
}
.article-body > p:last-child {
  margin-bottom: 0;
}
.article-content {
  line-height: 1.6;
  margin: 40px 0;
  word-wrap: break-word;
}
.article-footer {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding-bottom: 20px;
}
.article-comment-count {
  color: #5a6d7c;
}
.article-comment-count:hover {
  text-decoration: none;
}
.article-comment-count-icon {
  vertical-align: middle;
  color: #2850DC;
  width: 18px;
  height: 18px;
}
.article-sidebar {
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  flex: 1 0 auto;
  margin-bottom: 20px;
  padding: 0;
}
@media (min-width: 1024px) {
  .article-sidebar {
    border: 0;
    flex: 0 0 17%;
    height: auto;
    max-width: 17%;
  }
}
.article-relatives {
  border-top: 1px solid #ddd;
  display: flex;
  flex-direction: column;
  padding: 20px 0;
}
@media (min-width: 768px) {
  .article-relatives {
    flex-direction: row;
  }
}
.article-relatives > * {
  flex: 1 0 50%;
  min-width: 50%;
  overflow-wrap: break-word;
  margin-right: 0;
}
.article-relatives > *:last-child {
  padding: 0;
}
@media (min-width: 768px) {
  .article-relatives > * {
    padding-right: 20px;
  }
}
.article-votes {
  border-top: 1px solid #ddd;
  padding: 30px 0;
  text-align: center;
}
.article-votes-question {
  font-size: 15px;
  font-weight: normal;
  margin-bottom: 0;
}
.article-vote {
  margin: 10px 5px;
  min-width: 90px;
  width: auto;
}
.article-more-questions {
  margin: 10px 0 20px;
  text-align: center;
}
.article-more-questions a {
  color: #1F73B7;
  text-decoration: underline;
}
.article-more-questions a:visited {
  color: #9358B0;
}
.article-more-questions a:hover, .article-more-questions a:active, .article-more-questions a:focus {
  color: #0F3554;
}
.article-return-to-top {
  border-top: 1px solid #848F99;
}
@media (min-width: 1024px) {
  .article-return-to-top {
    display: none;
  }
}
.article-return-to-top a {
  color: #2F3941;
  display: block;
  padding: 20px 0;
}
.article-return-to-top a:hover, .article-return-to-top a:focus {
  text-decoration: none;
}
.article-return-to-top-icon {
  transform: rotate(0.5turn);
}
.article td > p:first-child,
.article th > p:first-child {
  margin-top: 0;
}
.article td > p:last-child,
.article th > p:last-child {
  margin-bottom: 0;
}

.sidenav-title {
  font-size: 15px;
  position: relative;
  font-weight: 600;
}
.sidenav-item {
  display: block;
  margin-top: 10px;
  margin-bottom: 16px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.recent-articles li,
.related-articles li {
  margin-bottom: 15px;
}

/***** Attachments *****/
/* Styles attachments inside posts, articles and comments */
.attachments .attachment-item {
  padding-left: 20px;
  position: relative;
  margin-bottom: 10px;
}
.attachments .attachment-item:last-child {
  margin-bottom: 0;
}
.attachments .attachment-item .attachment-icon {
  color: #2F3941;
  left: 0;
  position: absolute;
  top: 5px;
}
[dir=rtl] .attachments .attachment-item {
  padding-left: 0;
  padding-right: 20px;
}
[dir=rtl] .attachments .attachment-item .attachment-icon {
  left: auto;
  right: 0;
}

.upload-dropzone span {
  color: #5a6d7c;
}

/***** Social share links *****/
.share {
  padding: 0;
  white-space: nowrap;
}

.share li, .share a {
  display: inline-block;
}

.share li {
  height: 25px;
  width: 25px;
}

.share a {
  color: #5a6d7c;
}
.share a:hover {
  text-decoration: none;
  color: #2850DC;
}
.share a svg {
  height: 18px;
  width: 18px;
  display: block;
}

/***** Comments *****/
/* Styles comments inside articles, posts and requests */
.comment {
  border-bottom: 1px solid #ddd;
  padding: 20px 0;
}
.comment-heading, .recent-articles-title,
.related-articles-title {
  margin-bottom: 5px;
  margin-top: 0;
  font-size: 18px;
  font-weight: 600;
}
.comment-overview {
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  padding: 20px 0;
}
.comment-overview p {
  margin-top: 0;
}
.comment-callout {
  color: #5a6d7c;
  display: inline-block;
  font-size: 13px;
  margin-bottom: 0;
}
.comment-callout a {
  color: #1F73B7;
  text-decoration: underline;
}
.comment-callout a:visited {
  color: #9358B0;
}
.comment-callout a:hover, .comment-callout a:active, .comment-callout a:focus {
  color: #0F3554;
}
.comment-sorter {
  display: inline-block;
  float: right;
}
.comment-sorter .dropdown-toggle {
  color: #5a6d7c;
  font-size: 13px;
}
[dir=rtl] .comment-sorter {
  float: left;
}
.comment-wrapper {
  display: flex;
  position: relative;
}
.comment-wrapper.comment-official {
  border: 1px solid #2850DC;
  padding: 40px 20px 20px;
}
@media (min-width: 768px) {
  .comment-wrapper.comment-official {
    padding-top: 20px;
  }
}
.comment-info {
  min-width: 0;
  padding-right: 20px;
  width: 100%;
}
[dir=rtl] .comment-info {
  padding-right: 0;
  padding-left: 20px;
}
.comment-author {
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
@media (min-width: 768px) {
  .comment-author {
    justify-content: space-between;
  }
}
.comment-avatar {
  margin-right: 10px;
}
[dir=rtl] .comment-avatar {
  margin-left: 10px;
  margin-right: 0;
}
.comment-meta {
  flex: 1 1 auto;
}
.comment-labels {
  flex-basis: 100%;
}
@media (min-width: 768px) {
  .comment-labels {
    flex-basis: auto;
  }
}
.comment .status-label:not(.status-label-official) {
  margin-top: 10px;
}
@media (min-width: 768px) {
  .comment .status-label:not(.status-label-official) {
    margin-top: 0;
  }
}
.comment-form {
  display: flex;
  padding-top: 30px;
  word-wrap: break-word;
}
.comment-container {
  width: 100%;
}
.comment-form-controls {
  display: none;
  margin-top: 10px;
  text-align: left;
}
@media (min-width: 768px) {
  [dir=ltr] .comment-form-controls {
    text-align: right;
  }
}
.comment-form-controls input[type=submit] {
  margin-top: 15px;
}
@media (min-width: 1024px) {
  .comment-form-controls input[type=submit] {
    margin-left: 15px;
  }
  [dir=rtl] .comment-form-controls input[type=submit] {
    margin-left: 0;
    margin-right: 15px;
  }
}
.comment-form-controls input[type=checkbox] {
  margin-right: 5px;
}
.comment-form-controls input[type=checkbox] [dir=rtl] {
  margin-left: 5px;
}
.comment-ccs {
  display: none;
}
.comment-ccs + textarea {
  margin-top: 10px;
}
.comment-attachments {
  margin-top: 10px;
}
.comment-attachments a {
  color: #2850DC;
}
.comment-body {
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  word-break: break-word;
  word-wrap: break-word;
  display: flow-root;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
  line-height: 1.6;
  overflow-x: auto;
}
.comment-body a {
  color: #1F73B7;
  text-decoration: underline;
}
.comment-body a:visited {
  color: #9358B0;
}
.comment-body a:hover, .comment-body a:active, .comment-body a:focus {
  color: #0F3554;
}
.comment-body img {
  height: auto;
  max-width: 100%;
}
.comment-body p > img.image-style-align-left {
  float: left;
  margin: 8px 20px 6px 0;
}
.comment-body p > img.image-style-align-right {
  float: right;
  margin: 8px 0px 6px 20px;
}
.comment-body p > img.image-style-block-align-right {
  margin-left: auto;
  margin-right: 0;
}
.comment-body p > img.image-style-block-align-left {
  margin-left: 0;
  margin-right: auto;
}
.comment-body figure.image {
  display: table;
  margin: 0 auto;
}
.comment-body figure.image > img {
  display: block;
  width: 100%;
}
.comment-body figure.image.image-style-align-left {
  float: left;
  margin: 8px 20px 6px 0;
}
.comment-body figure.image.image-style-align-right {
  float: right;
  margin: 8px 0px 6px 20px;
}
.comment-body figure.image.image-style-block-align-right {
  margin-left: auto;
  margin-right: 0;
}
.comment-body figure.image.image-style-block-align-left {
  margin-left: 0;
  margin-right: auto;
}
.comment-body figcaption {
  padding: 10px 0;
  font-size: 12px;
  text-align: center;
  background-color: #f2f2f2;
}
.comment-body ul,
.comment-body ol {
  padding-left: 20px;
  list-style-position: outside;
  margin: 20px 0 20px 20px;
}
[dir=rtl] .comment-body ul,
[dir=rtl] .comment-body ol {
  padding-right: 20px;
  padding-left: 0;
  margin-left: 0;
  margin-right: 20px;
}
.comment-body ul > ul,
.comment-body ol > ol,
.comment-body ol > ul,
.comment-body ul > ol,
.comment-body li > ul,
.comment-body li > ol {
  margin: 0;
}
.comment-body ul {
  list-style-type: disc;
}
.comment-body :not(pre) > code {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 0 5px;
  margin: 0 2px;
}
.comment-body pre {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 10px 15px;
  overflow: auto;
  white-space: pre;
  direction: ltr;
}
.comment-body blockquote {
  border-left: 1px solid #ddd;
  color: #5a6d7c;
  font-style: italic;
  padding: 0 15px;
}
.comment-mark-as-solved {
  display: inline-block;
}

/***** Vote *****/
/* Used in article comments, post comments and post */
.vote {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.vote a:active, .vote a:hover, .vote a:focus {
  text-decoration: none;
}

.vote-sum {
  color: #5a6d7c;
  display: block;
  margin: 3px 0;
}
[dir=rtl] .vote-sum {
  direction: ltr;
  unicode-bidi: bidi-override;
}

.vote-up svg {
  transform: scale(1, -1);
}

.vote-up:hover,
.vote-down:hover {
  color: #2850DC;
}

.vote-up, .vote-down {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  border: none;
  color: #5a6d7c;
  cursor: pointer;
  min-height: 35px;
  min-width: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.vote-voted {
  color: #2850DC;
}

.vote-voted:hover {
  color: #162f88;
}

/***** Actions *****/
/* Styles admin and en user actions(edit, delete, change status) in comments and posts */
.actions {
  text-align: center;
  flex-shrink: 0; /*Avoid collapsing elements in Safari*/
}
.actions button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  border: none;
  cursor: pointer;
  min-height: 35px;
  min-width: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/***** Community *****/
.community-hero {
  background-image: url(/hc/theming_assets/01J2H3HWJGPH3E77J71Y4DDYC3);
  margin-bottom: 10px;
}
.community-footer {
  padding-top: 50px;
  text-align: center;
}
.community-footer-title {
  font-size: 16px;
  margin-bottom: 20px;
}
.community-featured-posts .title {
  font-size: 18px;
  font-weight: 600;
}
.community-featured-posts, .community-activity {
  padding-top: 40px;
  width: 100%;
}
.community-header {
  margin-bottom: 30px;
}
.community-header .title {
  margin-bottom: 0;
  font-size: 16px;
}

.post-to-community {
  margin-top: 10px;
}
@media (min-width: 768px) {
  .post-to-community {
    margin: 0;
  }
}

/* Community topics grid */
.topics {
  max-width: none;
  width: 100%;
}
.topics-item .meta-group {
  justify-content: center;
  margin-top: 20px;
}

/* Community topic page */
.topic-header {
  border-bottom: 1px solid #ddd;
  font-size: 13px;
}
@media (min-width: 768px) {
  .topic-header {
    padding-bottom: 10px;
  }
}
.topic-header .dropdown {
  display: block;
  border-top: 1px solid #ddd;
  padding: 10px 0;
}
@media (min-width: 768px) {
  .topic-header .dropdown {
    border-top: 0;
    display: inline-block;
    margin-right: 20px;
    padding: 0;
  }
}

.no-posts-with-filter {
  margin-top: 20px;
  margin-bottom: 20px;
}

/* Topic, post and user follow button */
.community-follow {
  margin-bottom: 10px;
  width: 100%;
}
@media (min-width: 768px) {
  .community-follow {
    margin-bottom: 0;
    width: auto;
  }
}
.community-follow button {
  line-height: 30px;
  padding: 0 10px 0 15px;
  position: relative;
  width: 100%;
}
@media (min-width: 768px) {
  .community-follow button {
    width: auto;
  }
}
.community-follow button:hover {
  background-color: #2850DC;
}
.community-follow button:hover::after, .community-follow button:focus::after {
  border-color: #FFFFFF;
  color: #FFFFFF;
}
.community-follow button[data-selected=true] {
  background-color: #2850DC;
  color: #FFFFFF;
}
.community-follow button[data-selected=true]::after {
  border-left: 1px solid #FFFFFF;
  color: #FFFFFF;
}
.community-follow button[data-selected=true]:hover {
  background-color: #162f88;
  border-color: #162f88;
}
.community-follow button::after {
  border-left: 1px solid #2850DC;
  content: attr(data-follower-count);
  color: #2850DC;
  display: inline-block;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
  margin-left: 15px;
  padding-left: 10px;
  position: absolute;
  right: 10px;
}
@media (min-width: 768px) {
  .community-follow button::after {
    position: static;
  }
}
[dir=rtl] .community-follow button::after {
  border-left: 0;
  border-right: 1px solid #2850DC;
  margin: 0 10px 0 0;
  padding: 0 10px 0 0;
}

/***** Striped list *****/
/* Used in community posts list and requests list */
.striped-list {
  padding: 0;
}
.striped-list-item {
  align-items: flex-start;
  border-bottom: 1px solid #ddd;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px 0;
}
@media (min-width: 768px) {
  .striped-list-item {
    align-items: center;
    flex-direction: row;
  }
}
.striped-list-info {
  flex: 2;
}
.striped-list-title {
  color: #1F73B7;
  margin-bottom: 10px;
  margin-right: 5px;
}
.striped-list-title:hover, .striped-list-title:focus, .striped-list-title:active {
  text-decoration: underline;
}
.striped-list-title:visited {
  color: #9358B0;
}
.striped-list .meta-group {
  margin: 5px 0;
}
.striped-list-count {
  color: #5a6d7c;
  font-size: 13px;
  justify-content: flex-start;
  text-transform: capitalize;
}
@media (min-width: 768px) {
  .striped-list-count {
    display: flex;
    flex: 1;
    justify-content: space-around;
  }
}
.striped-list-count-item::after {
  content: "·";
  display: inline-block;
  padding: 0 5px;
}
@media (min-width: 768px) {
  .striped-list-count-item::after {
    display: none;
  }
}
.striped-list-count-item:last-child::after {
  display: none;
}
.striped-list-number {
  text-align: center;
}
@media (min-width: 768px) {
  .striped-list-number {
    color: #2F3941;
    display: block;
  }
}

/***** Status labels *****/
/* Styles labels used in posts, articles and requests */
.status-label {
  background-color: #038153;
  border-radius: 4px;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  margin-right: 2px;
  padding: 3px 10px;
  vertical-align: middle;
  white-space: nowrap;
  display: inline-block;
}
.status-label:hover, .status-label:active, .status-label:focus {
  text-decoration: none;
}
.status-label-pinned, .status-label-featured, .status-label-official {
  background-color: #2850DC;
}
.status-label-official {
  border-radius: 0;
  margin-right: 0;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 100%;
}
@media (min-width: 768px) {
  .status-label-official {
    border-radius: 0 0 4px 4px;
    right: 30px;
    width: auto;
  }
}
[dir=rtl] .status-label-official {
  left: 30px;
  right: auto;
}
.status-label-not-planned, .status-label-closed {
  background-color: #e9ebed;
  color: #5a6d7c;
}
.status-label-pending, .status-label-pending-moderation {
  background-color: #1f73b7;
  text-align: center;
}
.status-label-open {
  background-color: #c72a1c;
}
.status-label-solved {
  background-color: #68737d;
}
.status-label-new {
  background-color: #ffb648;
  color: #703b15;
}
.status-label-hold {
  background-color: #000;
}
.status-label-request {
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (max-width: 768px) {
  .status-label-request {
    max-width: 150px;
  }
}

/***** Post *****/
/*
* The post grid is defined this way:
* Content | Sidebar
* 70%     | 30%
*/
.post {
  flex: 1;
  margin-bottom: 10px;
}
@media (min-width: 1024px) {
  .post {
    flex: 1 0 70%;
    max-width: 70%;
  }
}
.post-container {
  display: flex;
  flex-direction: column;
}
@media (min-width: 1024px) {
  .post-container {
    flex-direction: row;
  }
}
.post-header {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-bottom: 10px;
}
@media (min-width: 768px) {
  .post-header {
    align-items: baseline;
    flex-direction: row;
  }
}
.post-header .status-label {
  vertical-align: super;
}
.post-title {
  margin-bottom: 20px;
  width: 100%;
}
@media (min-width: 768px) {
  .post-title {
    margin-bottom: 0;
    padding-right: 10px;
  }
}
.post-title h1 {
  display: inline;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .post-title h1 {
    margin-right: 5px;
  }
}
.post-author {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
}
.post-avatar {
  margin-bottom: 30px;
}
.post-content {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
  line-height: 1.6;
  word-break: break-word;
}
.post-info-container {
  display: flex;
  margin-bottom: 40px;
}
.post-info {
  min-width: 0;
  padding-right: 20px;
  width: 100%;
}
[dir=rtl] .post-info {
  padding-right: 0;
  padding-left: 20px;
}
.post-meta {
  display: inline-block;
  flex: 1;
  margin-left: 10px;
  vertical-align: middle;
}
[dir=rtl] .post-meta {
  margin-left: 0;
  margin-right: 10px;
}
.post-body {
  display: flow-root;
}
.post-body a {
  color: #1F73B7;
  text-decoration: underline;
}
.post-body a:visited {
  color: #9358B0;
}
.post-body a:hover, .post-body a:active, .post-body a:focus {
  color: #0F3554;
}
.post-body img {
  height: auto;
  max-width: 100%;
}
.post-body p > img.image-style-align-left {
  float: left;
  margin: 8px 20px 6px 0;
}
.post-body p > img.image-style-align-right {
  float: right;
  margin: 8px 0px 6px 20px;
}
.post-body p > img.image-style-block-align-right {
  margin-left: auto;
  margin-right: 0;
}
.post-body p > img.image-style-block-align-left {
  margin-left: 0;
  margin-right: auto;
}
.post-body figure.image {
  display: table;
  margin: 0 auto;
}
.post-body figure.image > img {
  display: block;
  width: 100%;
}
.post-body figure.image.image-style-align-left {
  float: left;
  margin: 8px 20px 6px 0;
}
.post-body figure.image.image-style-align-right {
  float: right;
  margin: 8px 0px 6px 20px;
}
.post-body figure.image.image-style-block-align-right {
  margin-left: auto;
  margin-right: 0;
}
.post-body figure.image.image-style-block-align-left {
  margin-left: 0;
  margin-right: auto;
}
.post-body figcaption {
  padding: 10px 0;
  font-size: 12px;
  text-align: center;
  background-color: #f2f2f2;
}
.post-body ul,
.post-body ol {
  padding-left: 20px;
  list-style-position: outside;
  margin: 20px 0 20px 20px;
}
[dir=rtl] .post-body ul,
[dir=rtl] .post-body ol {
  padding-right: 20px;
  padding-left: 0;
  margin-left: 0;
  margin-right: 20px;
}
.post-body ul > ul,
.post-body ol > ol,
.post-body ol > ul,
.post-body ul > ol,
.post-body li > ul,
.post-body li > ol {
  margin: 0;
}
.post-body ul {
  list-style-type: disc;
}
.post-body :not(pre) > code {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 0 5px;
  margin: 0 2px;
}
.post-body pre {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 10px 15px;
  overflow: auto;
  white-space: pre;
  direction: ltr;
}
.post-body blockquote {
  border-left: 1px solid #ddd;
  color: #5a6d7c;
  font-style: italic;
  padding: 0 15px;
}
.post-footer {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding-bottom: 20px;
}
.post-comment-count {
  color: #5a6d7c;
}
.post-comment-count:hover {
  text-decoration: none;
}
.post-comment-count .icon-comments {
  color: #2850DC;
  display: inline-block;
  width: 18px;
  height: 18px;
  margin: 5px;
  vertical-align: middle;
}
.post-sidebar {
  border-top: 1px solid #ddd;
  flex: 1;
  padding: 30px 0;
  text-align: center;
}
@media (min-width: 1024px) {
  .post-sidebar {
    border: 0;
    flex: 1 0 30%;
    padding: 0 0 0 50px;
    text-align: initial;
  }
  [dir=rtl] .post-sidebar {
    padding: 0 50px 0 0;
  }
}
.post-sidebar-title {
  font-size: 18px;
  font-weight: 600;
}
.post-comments {
  margin-bottom: 20px;
}
@media (min-width: 1024px) {
  .post-comments {
    margin-bottom: 0;
  }
}

/***** Community Badges *****/
/* Styles labels used next to the authors of article comments, community posts, and community comments */
.community-badge-title {
  background-color: #04444d;
  border-radius: 4px;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  padding: 0px 8px;
  vertical-align: top;
  white-space: nowrap;
  display: inline-block;
  line-height: 18px;
  vertical-align: middle;
}

.community-badge-titles {
  display: inline;
}

.community-badge-achievement {
  display: block;
  height: 16px;
  white-space: nowrap;
  width: 16px;
}
.community-badge-achievement img {
  width: 100%;
  height: 100%;
}

.community-badge-achievements {
  display: flex;
}

.community-badge-achievements-rest {
  font-size: 12px;
  font-weight: 600;
  line-height: 20px;
  text-align: center;
  vertical-align: top;
}

.community-badge {
  margin: 2px;
}

.profile-info .community-badge-title {
  padding: 2px 8px;
  line-height: 20px;
}
.profile-info .community-badge-achievement {
  height: 40px;
  width: 40px;
}
.profile-info .community-badge-achievements-rest {
  line-height: 40px;
  font-size: 20px;
}

/* Navigation element that collapses on mobile */
.collapsible-nav {
  flex-direction: column;
  font-size: 14px;
  position: relative;
}
@media (min-width: 768px) {
  .collapsible-nav {
    flex-direction: row;
  }
}

.collapsible-nav-border {
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
}
@media (min-width: 768px) {
  .collapsible-nav-border {
    border-top: 0;
  }
}

.collapsible-nav-toggle {
  top: 22.5px;
  transform: translateY(-50%);
  position: absolute;
  right: 0;
  padding: 0;
  border: 0;
  background: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
}
@media (min-width: 768px) {
  .collapsible-nav-toggle {
    display: none;
  }
}
[dir=rtl] .collapsible-nav-toggle {
  left: 0;
  right: auto;
}
.collapsible-nav-toggle-icon {
  display: none;
}
.collapsible-nav-toggle[aria-expanded=false] .chevron-icon {
  display: inline-block;
}
.collapsible-nav-toggle[aria-expanded=true] .x-icon {
  display: inline-block;
}
.collapsible-nav-toggle:focus {
  outline: none;
  border: 1px solid #2850DC;
}

.collapsible-nav-list {
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  .collapsible-nav-list {
    flex-direction: row;
  }
}
.collapsible-nav-list li {
  color: #2F3941;
  line-height: 45px;
  order: 1;
}
@media (min-width: 768px) {
  .collapsible-nav-list li {
    line-height: normal;
    margin-right: 30px;
  }
  [dir=rtl] .collapsible-nav-list li {
    margin-left: 30px;
    margin-right: 0;
  }
  .collapsible-nav-list li a {
    text-decoration: none;
    padding: 15px 0;
  }
}
.collapsible-nav-list li a {
  color: #2F3941;
  display: block;
}
@media (min-width: 768px) {
  .collapsible-nav-list li:hover {
    border-bottom: 4px solid #ddd;
  }
  .collapsible-nav-list li:hover a:not([aria-current=page]) {
    padding: 15px 0 11px 0;
    text-decoration: none;
  }
}
.collapsible-nav-list li:not([aria-selected=true]),
.collapsible-nav-list li:not(.current) {
  display: none;
}
@media (min-width: 768px) {
  .collapsible-nav-list li:not([aria-selected=true]),
  .collapsible-nav-list li:not(.current) {
    display: block;
  }
}
@media (min-width: 768px) {
  .collapsible-nav-list li[aria-selected=true] {
    padding: 15px 0 11px 0;
  }
}
.collapsible-nav-list li[aria-selected=true],
.collapsible-nav-list li.current {
  order: 0;
  position: relative;
}
@media (min-width: 768px) {
  .collapsible-nav-list li[aria-selected=true],
  .collapsible-nav-list li.current {
    border-bottom: 4px solid #2850DC;
    order: 1;
  }
}
.collapsible-nav-list li[aria-selected=true] a,
.collapsible-nav-list li.current a {
  color: #2F3941;
}

.collapsible-nav[aria-expanded=true] li:not([aria-selected=true]),
.collapsible-nav[aria-expanded=true] li:not(.current) {
  display: block;
}

/* Sidebar navigation that collapses on mobile */
.collapsible-sidebar {
  flex: 1;
  max-height: 45px;
  overflow: hidden;
  padding: 10px 0;
  position: relative;
}
@media (min-width: 1024px) {
  .collapsible-sidebar {
    max-height: none;
    padding: 0;
  }
}
.collapsible-sidebar-title {
  margin-top: 0;
}
.collapsible-sidebar-toggle {
  position: absolute;
  top: 22.5px;
  transform: translateY(-50%);
  right: 0;
  padding: 0;
  border: 0;
  background: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
}
@media (min-width: 1024px) {
  .collapsible-sidebar-toggle {
    display: none;
  }
}
[dir=rtl] .collapsible-sidebar-toggle {
  left: 0;
  right: auto;
}
.collapsible-sidebar-toggle-icon {
  display: none;
}
.collapsible-sidebar-toggle[aria-expanded=false] .chevron-icon {
  display: inline-block;
}
.collapsible-sidebar-toggle[aria-expanded=true] .x-icon {
  display: inline-block;
}
.collapsible-sidebar-toggle:focus {
  outline: none;
  border: 1px solid #2850DC;
}
.collapsible-sidebar-body {
  display: none;
}
@media (min-width: 1024px) {
  .collapsible-sidebar-body {
    display: block;
  }
}
.collapsible-sidebar[aria-expanded=true] {
  max-height: none;
}
.collapsible-sidebar[aria-expanded=true] .collapsible-sidebar-body {
  display: block;
}

/***** My activities *****/
.my-activities-nav {
  background-color: #f2f2f2;
  margin-bottom: 20px;
}
.my-activities-sub-nav {
  margin-bottom: 30px;
}
.my-activities-table .striped-list-title { /* My activities tables */
  display: block;
  margin-bottom: 10px;
  max-width: 350px;
  white-space: normal;
}
@media (min-width: 1024px) {
  .my-activities-table .striped-list-title {
    margin-bottom: 0;
    max-width: 500px;
    min-width: 350px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}
.my-activities-table thead {
  display: none;
}
@media (min-width: 768px) {
  .my-activities-table thead {
    display: table-header-group;
  }
}
.my-activities-table th:first-child,
.my-activities-table td:first-child {
  padding-left: 0;
}
@media (min-width: 1024px) {
  .my-activities-table th:first-child,
  .my-activities-table td:first-child {
    width: 500px;
  }
}
.my-activities-table th:last-child,
.my-activities-table td:last-child {
  padding-right: 0;
}
.my-activities-table td:not(:first-child) {
  display: none;
}
@media (min-width: 768px) {
  .my-activities-table td:not(:first-child) {
    display: table-cell;
  }
}

/* Requests table */
.requests-search {
  width: 100%;
}
.requests-table-toolbar {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  .requests-table-toolbar {
    flex-direction: row;
  }
}
.requests-table-toolbar .search {
  flex: 1;
  width: 100%;
}
.requests-table-toolbar .request-table-filter {
  width: 100%;
}
@media (min-width: 768px) {
  .requests-table-toolbar .request-table-filter {
    width: auto;
  }
}
.requests-table-toolbar .request-filter {
  display: block;
}
@media (min-width: 768px) {
  .requests-table-toolbar .request-filter {
    margin: 0 0 0 30px;
  }
  [dir=rtl] .requests-table-toolbar .request-filter {
    margin: 0 30px 0 0;
  }
}
.requests-table-toolbar .request-filter-label {
  font-size: 13px;
  margin-top: 30px;
}
@media (min-width: 768px) {
  .requests-table-toolbar .request-filter-label {
    margin-top: 0;
  }
}
.requests-table-toolbar select {
  max-height: 40px;
  margin-bottom: 30px;
  width: 100%;
}
@media (min-width: 768px) {
  .requests-table-toolbar select {
    margin-bottom: 0;
    max-width: 300px;
    width: auto;
  }
}
@media (min-width: 768px) {
  .requests-table-toolbar .organization-subscribe {
    margin-left: 10px;
  }
  [dir=rtl] .requests-table-toolbar .organization-subscribe {
    margin: 0 10px 0 0;
  }
}
.requests-table-toolbar .organization-subscribe button {
  line-height: 40px;
  max-height: 40px;
  padding: 0 20px;
}
.requests-table-toolbar + .requests-search-info {
  margin-top: 15px;
}
.requests-table-toolbar + .requests-search-info.meta-data::after {
  content: "";
  margin: 0;
}
.requests-table-toolbar + .requests-search-info + .requests {
  margin-top: 20px;
}
.requests-table-toolbar + .requests {
  margin-top: 40px;
}
.requests .requests-table-meta {
  display: block;
}
@media (min-width: 768px) {
  .requests .requests-table-meta {
    display: none;
  }
}
.requests .requests-table thead {
  display: none;
}
@media (min-width: 768px) {
  .requests .requests-table thead {
    display: table-header-group;
  }
}
.requests .requests-table-info {
  display: block;
}
@media (min-width: 768px) {
  .requests .requests-table-info {
    display: table-cell;
    vertical-align: middle;
    width: auto;
  }
}
.requests .requests-table .requests-link {
  position: relative;
}
.requests .requests-table .requests-sort-symbol {
  position: absolute;
  left: calc(100% + 3px);
  bottom: 0;
  font-size: 10px;
}

/* Following table */
@media (min-width: 768px) {
  .subscriptions-subscribe button {
    width: auto;
  }
}
.subscriptions-table td:last-child {
  display: block;
}
@media (min-width: 768px) {
  .subscriptions-table td:last-child {
    display: table-cell;
  }
}
.subscriptions-table td:first-child {
  display: flex;
  align-items: center;
}
.subscriptions-table .user-avatar {
  margin-right: 10px;
}
.subscriptions .striped-list-title {
  display: inline-block;
  vertical-align: middle;
}

/* Contributions table */
.contributions-table td:last-child {
  color: #5a6d7c;
  font-size: 13px;
}
@media (min-width: 768px) {
  .contributions-table td:last-child {
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
  }
}

.no-activities {
  color: #5a6d7c;
}

/***** Request *****/
.request-container {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media (min-width: 1024px) {
  .request-container {
    align-items: flex-start;
    flex-direction: row;
  }
}
.request-container .comment-container {
  min-width: 0;
}
.request-breadcrumbs {
  margin-bottom: 40px;
}
@media (min-width: 1024px) {
  .request-breadcrumbs {
    margin-bottom: 60px;
  }
}
.request-main {
  flex: 1 0 auto;
  max-width: 100%;
  order: 1;
}
.request-main .comment-fields, .request-main .request-submit-comment {
  display: none;
}
.request-main .comment-fields.shown {
  display: block;
}
.request-main .request-submit-comment.shown {
  display: inline;
}
@media (min-width: 1024px) {
  .request-main {
    flex: 0 0 66%;
    order: 0;
    min-width: 0;
  }
}
.request-main .comment-form-controls {
  display: block;
}
.request-main .comment-ccs {
  display: block;
}
.request-main .comment-show-container {
  border-radius: 2px;
  border: 1px solid #ddd;
  color: #5a6d7c;
  text-align: inherit;
  padding: 8px 25px;
  width: 100%;
}
.request-main .comment-show-container.hidden {
  display: none;
}
.request-main .form-field.comment-ccs > ul {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom: 0;
}
.request-main .form-field.comment-ccs > ul[data-hc-focus=true] {
  border: 1px solid #2850DC;
}
.request-main .form-field.comment-ccs > input[type=text] {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom: 0;
}
.request-main .comment-ccs + textarea {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  margin-top: 0;
}
.request-main .comment-ccs + textarea:focus {
  border-top: 1px solid #2850DC;
}
.request-main input#mark_as_solved {
  display: none;
}
.request-title {
  width: 100%;
}
@media (min-width: 1024px) {
  .request-title {
    border-bottom: 1px solid #ddd;
    margin-bottom: 0;
    max-width: 66%;
    padding-bottom: 20px;
  }
}
.request-sidebar {
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  flex: 1 0 auto;
  order: 0;
}
@media (min-width: 1024px) {
  .request-sidebar {
    background-color: #f7f7f7;
    border: 0;
    font-size: 13px;
    flex: 0 0 auto;
    padding: 0 20px;
    width: 30%;
  }
}
.request-sidebar h2 {
  font-size: 15px;
  font-weight: 600;
  position: relative;
}
@media (min-width: 1024px) {
  .request-sidebar h2 {
    display: none;
  }
}
.request-details {
  border-bottom: 1px solid #ddd;
  font-size: 0;
  margin: 0;
  padding-bottom: 20px;
}
.request-details:last-child {
  border: 0;
}
.request-details dt, .request-details dd {
  display: inline-block;
  vertical-align: top;
  font-size: 13px;
  margin: 20px 0 0 0;
}
.request-details dd {
  padding: 0 10px;
  width: 60%;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.request-details dd::after {
  content: "\a";
  white-space: pre;
}
.request-details dt {
  line-break: strict;
  color: #5a6d7c;
  width: 40%;
  overflow-wrap: break-word;
}
.request-details .request-collaborators {
  display: inline-block;
}
.request-attachments dt, .request-attachments dd {
  width: 100%;
}
.request-attachments dd {
  margin: 10px 0 0 0;
}
.request-form textarea {
  min-height: 120px;
}
.request-follow-up {
  padding-top: 20px;
}

/***** Pagination *****/
.pagination {
  margin: 20px 0;
  text-align: center;
}
.pagination-next, .pagination-prev, .pagination-first, .pagination-last {
  display: inline-block;
}
.pagination-first-link, .pagination-last-link {
  padding: 0 10px;
}
.pagination-first-text, .pagination-last-text {
  border: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.pagination-next-link {
  padding-right: 10px;
}
.pagination-next-text {
  margin-right: 10px;
}
[dir=rtl] .pagination-next-link {
  padding-left: 10px;
}
[dir=rtl] .pagination-next-text {
  margin-left: 10px;
}
.pagination-prev-link {
  padding-left: 10px;
}
.pagination-prev-text {
  margin-left: 10px;
}
[dir=rtl] .pagination-prev-link {
  padding-right: 10px;
}
[dir=rtl] .pagination-prev-text {
  margin-right: 10px;
}

/***** Metadata *****/
.meta-group {
  display: block;
}

.meta-group-opposite {
  float: right;
}

[dir=rtl] .meta-group-opposite {
  float: left;
}

.meta-group * {
  display: inline;
}

.meta-data {
  color: #5a6d7c;
  font-size: 13px;
}
.meta-data:not(:last-child)::after {
  content: "·";
  margin: 0 5px;
}

/* User Profiles */
.profile-header {
  padding: 30px 0;
  background-color: #f7f7f7;
}

.profile-header .container {
  display: flex;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .profile-header .container {
    flex-wrap: nowrap;
  }
}

.profile-header .profile-info {
  flex-basis: 100%;
  display: flex;
  flex-wrap: wrap;
  min-width: 0;
}

.profile-avatar {
  position: relative;
  line-height: 0;
  align-self: center;
  margin-right: 10px;
}
[dir=rtl] .profile-avatar {
  margin-left: 10px;
  margin-right: 0;
}

.profile-avatar .user-avatar {
  width: 80px;
  height: 80px;
}

.profile-avatar .icon-agent {
  bottom: 0;
  right: 0;
}

.profile-header .basic-info {
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  word-break: break-word;
  word-wrap: break-word;
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex-grow: 1;
  flex-basis: 0;
  min-width: 0;
}
.profile-header .basic-info .name {
  margin: 0;
  line-height: 25px;
  vertical-align: middle;
  display: inline;
}

.profile-header .options {
  display: flex;
  flex-basis: 100%;
  margin-top: 12px;
  align-items: flex-start;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .profile-header .options {
    flex-wrap: nowrap;
    flex-basis: auto;
    margin-top: 0;
    margin-left: 10px;
  }
  [dir=rtl] .profile-header .options {
    margin-left: 0;
    margin-right: 10px;
  }
  .profile-header .options > :not(:last-child) {
    margin-bottom: 0;
    margin-right: 10px;
  }
  [dir=rtl] .profile-header .options > :not(:last-child) {
    margin-left: 10px;
    margin-right: 0;
  }
}

.user-profile-actions {
  width: 100%;
  margin-bottom: 15px;
}

.profile-header .description {
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  word-break: break-word;
  word-wrap: break-word;
  margin: 15px 0;
  flex-basis: 100%;
}

.profile-stats {
  font-size: 13px;
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
}

.profile-stats .stat {
  display: flex;
  margin-bottom: 10px;
}

.profile-stats .stat-label {
  color: #5a6d7c;
  flex: 0 0 100px;
  margin-right: 10px;
}
[dir=rtl] .profile-stats .stat-label {
  margin-left: 10px;
  margin-right: 0;
}

.profile-stats-activity {
  border-top: solid 1px #ddd;
  margin-top: 15px;
}
@media (min-width: 768px) {
  .profile-stats-activity {
    border-top: 0;
    flex-direction: row;
  }
}

@media (min-width: 768px) {
  .profile-stats-activity .stat {
    flex-direction: column;
  }
}

.profile-stats-activity .stat:first-child {
  margin-top: 10px;
}
@media (min-width: 768px) {
  .profile-stats-activity .stat:first-child {
    margin-top: 0;
  }
}

@media (min-width: 768px) {
  .profile-stats-activity .stat:not(:last-child) {
    margin-right: 40px;
  }
  [dir=rtl] .profile-stats-activity .stat:not(:last-child) {
    margin-left: 40px;
    margin-right: 0;
  }
}

@media (min-width: 768px) {
  .profile-stats-activity .stat-label {
    flex: 0 1 auto;
  }
}

.profile-stats-counters {
  border-bottom: solid 1px #ddd;
}
@media (min-width: 768px) {
  .profile-stats-counters {
    flex: 0 0 200px;
    border-bottom: 0;
    margin-left: 40px;
  }
  [dir=rtl] .profile-stats-counters {
    margin-left: 0;
    margin-right: 40px;
  }
}
@media (min-width: 1024px) {
  .profile-stats-counters {
    flex: 0 0 270px;
    margin-left: 60px;
  }
  [dir=rtl] .profile-stats-counters {
    margin-right: 60px;
    margin-left: 0;
  }
}

@media (min-width: 768px) {
  .profile-stats-counters .stat {
    flex-direction: column;
  }
}
@media (min-width: 1024px) {
  .profile-stats-counters .stat {
    flex-direction: row;
  }
}

@media (min-width: 768px) {
  .profile-stats-counters .stat:not(:last-child) {
    margin-bottom: 15px;
  }
}

@media (min-width: 768px) {
  .profile-stats-counters .stat-label {
    flex: 0 1 auto;
  }
}
@media (min-width: 1024px) {
  .profile-stats-counters .stat-label {
    flex: 0 0 100px;
  }
}

.profile-private-badge {
  flex-basis: 100%;
  border: solid 1px #2850DC;
  border-radius: 4px;
  color: #2850DC;
  padding: 5px 20px;
  font-size: 12px;
  text-align: center;
}
.profile-private-badge .profile-private-icon {
  margin-left: 5px;
  line-height: 15px;
}
@media (min-width: 768px) {
  .profile-private-badge {
    flex-basis: auto;
  }
}

.profile-nav {
  background-color: #f2f2f2;
  margin-bottom: 37px;
}

.profile-section {
  width: 100%;
}
@media (min-width: 1024px) {
  .profile-section {
    width: calc(100% - 330px);
  }
}

.profile-section-header {
  display: flex;
  flex-wrap: wrap;
}

.profile-section-title {
  flex-basis: 100%;
  margin-bottom: 0;
}

.profile-section-description {
  flex-basis: 100%;
  padding: 10px 0;
  color: #5a6d7c;
  font-size: 13px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (min-width: 768px) {
  .profile-section-description {
    flex: 1 0 50%;
    padding-bottom: 0;
  }
}

.profile-section-sorter {
  flex-basis: 100%;
  border-top: solid 1px #eee;
  font-size: 13px;
}
.profile-section-sorter .dropdown-toggle {
  padding: 10px 0;
  width: 100%;
}
.profile-section-sorter .dropdown-toggle::after {
  position: absolute;
  right: 0;
}
[dir=rtl] .profile-section-sorter .dropdown-toggle::after {
  left: 0;
  right: initial;
}
@media (min-width: 768px) {
  .profile-section-sorter .dropdown-toggle::after {
    position: relative;
  }
}
@media (min-width: 768px) {
  .profile-section-sorter {
    flex: 0 1 auto;
    padding-top: 0;
    border-top: 0;
    margin-left: 20px;
  }
  [dir=rtl] .profile-section-sorter {
    margin-left: 0;
    margin-right: 20px;
  }
}

.profile-badges-items {
  margin-top: 25px;
}
.profile-badges-item {
  border-top: 1px solid #ddd;
  display: flex;
  flex: 1;
  flex-direction: row;
  justify-content: flex-start;
  padding: 27px 12px;
}
.profile-badges-item > div {
  padding-right: 12px;
  padding-left: 12px;
}
.profile-badges-item-image {
  height: 40px;
  width: 40px;
  margin-right: 12px;
}
.profile-badges-item-image img {
  max-height: 40px;
}
[dir=rtl] .profile-badges-item-image {
  margin-left: 12px;
  margin-right: 0;
}
.profile-badges-item-title, .profile-badges-item-metadata-title {
  font-size: 15px;
  margin-bottom: 10px;
}
.profile-badges-item-title {
  font-weight: 600;
}
.profile-badges-item-description, .profile-badges-item-metadata-description {
  color: #5a6d7c;
  font-size: 13px;
  margin: 0;
}
.profile-badges-item-metadata {
  margin-left: auto;
  text-align: right;
}
[dir=rtl] .profile-badges-item-metadata {
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

.profile-contribution {
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  word-break: break-word;
  word-wrap: break-word;
  padding: 20px 0;
  position: relative;
}

.profile-contribution-header {
  margin-bottom: 5px;
}

.profile-contribution-title {
  margin: 0 0 5px 0;
  display: inline;
  line-height: 21px;
  font-size: 15px;
  vertical-align: middle;
}

.profile-contribution-body {
  margin: 10px 0;
}

.profile-contribution-list > .profile-contribution {
  border-top: 1px solid #eee;
}
@media (min-width: 768px) {
  .profile-contribution-list > .profile-contribution {
    padding-left: 30px;
  }
  [dir=rtl] .profile-contribution-list > .profile-contribution {
    padding-right: 30px;
    padding-left: 0;
  }
}

.profile-contribution-list > .profile-contribution:last-child {
  border-bottom: 1px solid #eee;
}

.profile-contribution-icon {
  left: 0;
  position: absolute;
  color: #ccc;
  line-height: 25px;
}
[dir=rtl] .profile-contribution-icon {
  right: 0;
}
.profile-contribution-icon svg {
  vertical-align: middle;
}

.profile-contribution-list .profile-contribution-header {
  margin-left: 30px;
}
[dir=rtl] .profile-contribution-list .profile-contribution-header {
  padding-right: 30px;
  padding-left: 0;
}
@media (min-width: 768px) {
  .profile-contribution-list .profile-contribution-header {
    margin-left: 0;
  }
  [dir=rtl] .profile-contribution-list .profile-contribution-header {
    padding-right: 0;
  }
}

.profile-comments .profile-contribution-breadcrumbs {
  margin-left: 30px;
}
[dir=rtl] .profile-comments .profile-contribution-breadcrumbs {
  padding-right: 30px;
  padding-left: 0;
}
@media (min-width: 768px) {
  .profile-comments .profile-contribution-breadcrumbs {
    margin-left: 0;
  }
  [dir=rtl] .profile-comments .profile-contribution-breadcrumbs {
    padding-right: 0;
  }
}

.profile-section .no-activity,
.profile-section .private-activity {
  display: block;
  margin-top: 40px;
  color: #999;
}

.private-activity-icon {
  margin-right: 10px;
}
[dir=rtl] .private-activity-icon {
  margin-right: 0;
  margin-left: 10px;
}

.profile-activity-list {
  margin-top: 25px;
}

.profile-activity {
  position: relative;
  padding-bottom: 30px;
}
@media (min-width: 768px) {
  .profile-activity {
    padding-left: 20px;
  }
  [dir=rtl] .profile-activity {
    padding-right: 20px;
    padding-left: 0;
  }
}

@media (min-width: 768px) {
  .profile-activity:not(:last-child) {
    border-left: 1px solid #ddd;
  }
  [dir=rtl] .profile-activity:not(:last-child) {
    border-left: 0;
    border-right: 1px solid #ddd;
  }
}

.profile-activity-header {
  display: flex;
  align-items: center;
  margin-left: 35px;
}
[dir=rtl] .profile-activity-header {
  margin-left: 0;
  margin-right: 35px;
}
@media (min-width: 768px) {
  .profile-activity-header {
    margin-left: 0;
  }
  [dir=rtl] .profile-activity-header {
    margin-right: 0;
  }
}

.profile-activity-header .user-avatar {
  width: 40px;
  height: 40px;
  margin-right: 10px;
  min-width: 40px;
  align-self: flex-start;
}
[dir=rtl] .profile-activity-header .user-avatar {
  margin-left: 10px;
  margin-right: 0;
}

.profile-activity-description {
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  word-break: break-word;
  word-wrap: break-word;
  margin: 0;
  min-width: 0;
  width: 100%;
}

.profile-activity-description span:first-child {
  font-weight: 600;
  display: inline;
}

.profile-activity-contribution {
  padding: 20px;
  margin-top: 10px;
  border-radius: 8px;
  background-color: #f7f7f7;
}
@media (min-width: 768px) {
  .profile-activity-contribution {
    margin-top: 0;
    margin-left: 50px;
  }
  [dir=rtl] .profile-activity-contribution {
    margin-left: 0;
    margin-right: 50px;
  }
}

.profile-activity-icon {
  position: absolute;
  left: 0;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-size: 14px 14px;
  background-repeat: no-repeat;
  background-color: #FFFFFF;
  background-position: 50% 50%;
  text-align: center;
  color: #ccc;
}
[dir=rtl] .profile-activity-icon {
  right: 0;
}
@media (min-width: 768px) {
  .profile-activity-icon {
    left: -14px;
  }
  [dir=rtl] .profile-activity-icon {
    right: -14px;
  }
}

.profile-activity-icon svg {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  width: 1em;
  height: 1em;
  margin: auto;
}

/***** Search results *****/
.search-results {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media (min-width: 1024px) {
  .search-results {
    flex-direction: row;
  }
}
.search-results-column {
  flex: 1;
}
@media (min-width: 1024px) {
  .search-results-column {
    flex: 0 0 75%;
  }
}
.search-results-sidebar {
  border-top: 1px solid #ddd;
  flex: 1 0 auto;
  margin-bottom: 20px;
  padding: 0;
}
@media (min-width: 1024px) {
  .search-results-sidebar {
    border: 0;
    flex: 0 0 20%;
    height: auto;
  }
}
.search-results-sidebar .sidenav-item {
  border-radius: 4px;
  padding: 10px 36px;
  margin-bottom: 4px;
  color: #2F3941;
}
.search-results-sidebar .sidenav-item:hover, .search-results-sidebar .sidenav-item.current {
  background-color: #e9ebed;
  text-decoration: none;
}
.search-results-sidebar .sidenav-subitem {
  unicode-bidi: embed;
}
.search-results-sidebar .sidenav-tag {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  flex-grow: 0;
}
.search-results-sidebar .sidenav-tag .content-tag {
  background: #E9EBED;
  border-radius: 4px;
  padding: 4px 12px;
  text-decoration: none;
}
.search-results-sidebar .sidenav-tag .content-tag .label {
  font-style: normal;
  font-weight: 600;
  font-size: 12px;
  line-height: 24px;
  text-align: center;
  letter-spacing: -0.000427656px;
  color: #49545C;
  flex-grow: 0;
  vertical-align: middle;
  display: inline-block;
}
.search-results-sidebar .sidenav-tag .content-tag .close-icon {
  color: #555555;
  vertical-align: middle;
  display: inline-block;
}
.search-results-sidebar .collapsible-sidebar {
  margin-bottom: 30px;
}
.search-results-sidebar .collapsible-sidebar[aria-expanded=false] .multibrand-filter-list {
  display: none;
}
@media (min-width: 1024px) {
  .search-results-sidebar .collapsible-sidebar[aria-expanded=false] .multibrand-filter-list {
    display: block;
  }
}
.search-results-sidebar .multibrand-filter-list--collapsed li:nth-child(1n+6):not(.see-all-filters-item) {
  display: none;
}
.search-results-sidebar .multibrand-filter-list .doc-count {
  color: #666;
}
.search-results-sidebar .see-all-filters {
  background: none;
  border: none;
  cursor: pointer;
  display: block;
  padding: 10px;
  color: #1F73B7;
}
.search-results-sidebar .see-all-filters[aria-hidden=true] {
  display: none;
}
.search-results-sidebar .see-all-filters:hover {
  text-decoration: underline;
}
.search-results-sidebar .see-all-filters::after {
  content: " ⌄";
  font-weight: bold;
}
.search-results-subheading {
  font-size: 18px;
  font-weight: 600;
}
.search-results-list {
  margin-bottom: 25px;
}
.search-results-list > li {
  padding: 20px 0;
}
.search-results-list > li:first-child {
  border-top: 1px solid #ddd;
}
.search-results .no-results {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 4rem;
}
.search-results .no-results .headline {
  color: #2F3941;
  font-weight: 400;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: -0.45px;
}
.search-results .no-results .action-prompt {
  color: #68737D;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.154px;
}
.search-results .no-results .action-prompt a {
  color: #1F73B7;
}
.search-results .no-results .action-prompt a:visited {
  color: #1F73B7;
}

.search-result-title-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.search-result-title {
  font-size: 16px;
  margin-bottom: 0;
}
.search-result-votes, .search-result-meta-count {
  color: #5a6d7c;
  font-size: 13px;
}
.search-result-votes-icon, .search-result-meta-count-icon {
  color: #2850DC;
  vertical-align: middle;
  width: 13px;
  height: 13px;
}
[dir=ltr] .search-result-votes, [dir=ltr] .search-result-meta-count {
  margin-left: 20px;
}
[dir=rtl] .search-result-votes, [dir=rtl] .search-result-meta-count {
  margin-right: 20px;
}
.search-result-meta-container {
  color: #666;
  display: flex;
  flex-direction: column;
}
@media (min-width: 1024px) {
  .search-result-meta-container {
    flex-direction: row;
    align-items: center;
  }
}
@media (min-width: 1024px) {
  .search-result-meta-container nav {
    flex: 1;
  }
}
@media (min-width: 1024px) {
  [dir=ltr] .search-result-meta-container .meta-data {
    margin-left: 20px;
  }
}
@media (min-width: 1024px) {
  [dir=rtl] .search-result-meta-container .meta-data {
    margin-right: 20px;
  }
}
.search-result-meta-container .meta-data::after {
  content: none;
}
.search-result-breadcrumbs {
  margin: 0;
}
.search-result-description {
  margin-top: 10px;
  margin-bottom: 0;
  word-break: break-word;
}

/* By default use bold instead of italic to highlight */
.search-results-description em {
  font-style: normal;
  font-weight: bold;
}

/* Add a yellow background for Chinese */
html[lang|=zh] .search-results-description em {
  font-style: normal;
  background: yellow;
}

/***** Notifications *****/
.notification {
  border: 1px solid;
  display: table;
  font-family: sans-serif;
  font-size: 12px;
  padding: 13px 15px;
  transition: height 0.2s;
  width: 100%;
  color: #555;
}

.notification a {
  color: #158ec2;
}

.notification-inner {
  margin: 0 auto;
  padding: 0 20px;
  max-width: 980px;
}

.notification-icon, .notification-inline.notification-error::before, .notification-text, .notification-dismiss {
  display: table-cell;
  vertical-align: middle;
}

.notification-text {
  padding: 0 15px;
  width: 100%;
}

.notification + .notification {
  margin-bottom: -1px;
  position: relative;
  top: -1px;
}

/* Error */
.notification-error {
  background: #ffeded;
  border-color: #f7cbcb;
}

.notification-error .notification-icon::before, .notification-error .notification-inline.notification-error::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' focusable='false' viewBox='0 0 12 12'%3E%3Cg fill='none' stroke='%23555555'%3E%3Ccircle cx='5.5' cy='6.5' r='5'/%3E%3Cpath stroke-linecap='round' d='M5.5 3.5v3'/%3E%3C/g%3E%3Ccircle cx='5.5' cy='9' r='1' fill='%23555555'/%3E%3C/svg%3E");
}

/* Notice */
.notification-notice {
  background: #dbf3ff;
  border-color: #b5e0f5;
}

.notification-notice .notification-icon::before, .notification-notice .notification-inline.notification-error::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' focusable='false' viewBox='0 0 12 12'%3E%3Cg fill='none' stroke='%23555555'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3.5 6l2 2L9 4.5'/%3E%3Ccircle cx='6' cy='6' r='5.5'/%3E%3C/g%3E%3C/svg%3E");
}

/* Alert / Lock */
.notification-alert {
  color: #ad5e18;
  background: #fff8ed;
  border-color: #fcdba9;
}

.notification-alert .notification-icon::before, .notification-alert .notification-inline.notification-error::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' focusable='false' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23ad5e18' stroke-linecap='round' d='M5.06 1.27l-4.5 8.5c-.18.33.06.73.44.73h9c.38 0 .62-.4.44-.73l-4.5-8.5a.494.494 0 00-.88 0zM5.5 4v2'/%3E%3Ccircle cx='5.5' cy='8' r='.8' fill='%23ad5e18'/%3E%3C/svg%3E");
}

.notification-icon::before, .notification-inline.notification-error::before {
  background-size: cover;
  content: "";
  display: inline-block;
  height: 14px;
  width: 14px;
  vertical-align: middle;
}

/* Dismiss button */
.notification-dismiss, a.notification-dismiss {
  color: #555;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 100ms ease;
  text-decoration: none !important;
}

.notification-dismiss:hover {
  opacity: 1;
}

/* Inline notifications */
.notification-inline {
  border-radius: 4px;
  line-height: 14px;
  margin-top: 5px;
  padding: 5px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}
[dir=rtl] .notification-inline {
  text-align: right;
}
.notification-inline[aria-hidden=true] {
  display: none;
}
.notification-inline.notification-error::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' focusable='false' viewBox='0 0 12 12'%3E%3Cg fill='none' stroke='%23e35b66'%3E%3Ccircle cx='5.5' cy='6.5' r='5'/%3E%3Cpath stroke-linecap='round' d='M5.5 3.5v3'/%3E%3C/g%3E%3Ccircle cx='5.5' cy='9' r='1' fill='%23e35b66'/%3E%3C/svg%3E");
  margin: -2px 5px 0 0;
}
[dir=rtl] .notification-inline.notification-error::before {
  margin: 0 0 0 5px;
}
.notification-inline.notification-error {
  background-color: #fff0f1;
  border: 1px solid #e35b66;
  color: #cc3340;
}
.notification-inline.notification-large {
  padding: 13px 15px;
  margin-bottom: 25px;
}

.notification-left-aligned {
  text-align: left;
  padding-left: 0;
}

html[dir=rtl] .notification-left-aligned {
  text-align: right;
  padding-left: auto;
  padding-right: 0;
}

.dropdown {
  position: relative;
  display: inline-block;
}

.dropdown-toggle {
  cursor: pointer;
  background: none;
  border: 0;
  display: inline-block;
  padding: 0;
  text-align: initial;
  vertical-align: middle;
}
.dropdown-toggle:hover {
  text-decoration: none;
}
.dropdown-toggle > * {
  display: inline-block;
}
.dropdown-toggle[aria-expanded=true] + .dropdown-menu {
  display: block;
}

.dropdown-menu {
  background: #fff;
  border: 1px solid #d8dcde;
  border-radius: 3px;
  box-shadow: 0px 20px 30px 0px rgba(23, 73, 77, 0.15);
  display: none;
  font-size: 14px;
  font-style: normal;
  font-weight: normal;
  left: 0;
  margin-top: 1px;
  min-width: 170px;
  padding: 10px 0;
  position: absolute;
  text-align: left;
  z-index: 1000;
}
[dir=rtl] .dropdown-menu {
  text-align: right;
}
.dropdown-menu [role=separator] {
  border-bottom: 1px solid #e9ebed;
  margin: 4px 0;
}
.dropdown-menu [role=menuitem],
.dropdown-menu [role=menuitemradio] {
  color: #2f3941;
  cursor: pointer;
  display: block;
  padding: 7px 40px 7px 20px;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
  -webkit-appearance: none;
  text-align: start;
  line-height: inherit;
  width: 100%;
}
[dir=rtl] .dropdown-menu [role=menuitem],
[dir=rtl] .dropdown-menu [role=menuitemradio] {
  padding: 7px 20px 7px 40px;
}
.dropdown-menu [role=menuitem]:hover, .dropdown-menu [role=menuitem]:focus,
.dropdown-menu [role=menuitemradio]:hover,
.dropdown-menu [role=menuitemradio]:focus {
  background: rgba(31, 115, 183, 0.08);
  text-decoration: none;
  color: #2f3941;
}
.dropdown-menu [role=menuitem][aria-selected=true], .dropdown-menu [role=menuitem][aria-checked=true],
.dropdown-menu [role=menuitemradio][aria-selected=true],
.dropdown-menu [role=menuitemradio][aria-checked=true] {
  cursor: default;
}
.dropdown-menu [role=menuitem][aria-selected=true]::after, .dropdown-menu [role=menuitem][aria-checked=true]::after,
.dropdown-menu [role=menuitemradio][aria-selected=true]::after,
.dropdown-menu [role=menuitemradio][aria-checked=true]::after {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M1 7l3 3 7-7'%3E%3C/path%3E%3C/svg%3E");
  display: inline-block;
  height: 12px;
  margin-left: 10px;
  width: 12px;
}
[dir=rtl] .dropdown-menu [role=menuitem][aria-selected=true]::after, [dir=rtl] .dropdown-menu [role=menuitem][aria-checked=true]::after,
[dir=rtl] .dropdown-menu [role=menuitemradio][aria-selected=true]::after,
[dir=rtl] .dropdown-menu [role=menuitemradio][aria-checked=true]::after {
  margin-left: 0;
  margin-right: 10px;
  float: left;
}
.dropdown-menu [role=menuitem][hidden], .dropdown-menu [role=menuitem][aria-hidden=true],
.dropdown-menu [role=menuitemradio][hidden],
.dropdown-menu [role=menuitemradio][aria-hidden=true] {
  display: none !important;
}

.dropdown-menu-end {
  left: auto;
  right: 0;
}

.dropdown-menu-top {
  bottom: 100%;
  margin-bottom: 1px;
}

[dir=rtl] .dropdown-menu {
  left: auto;
  right: 0;
  text-align: right;
}
[dir=rtl] .dropdown-menu-end {
  left: 0;
  right: auto;
}

.dropdown-chevron-icon {
  vertical-align: middle;
}

.content-tags > p {
  color: #68737D;
  margin-top: 32px;
  margin-bottom: 4px;
}
.content-tags-add-hint {
  color: #68737D;
  font-size: 14px;
}

.content-tag-list {
  display: flex;
  flex-wrap: wrap;
  word-break: break-word;
}
.content-tag-list li {
  border-right: 1px solid #C2C8CC;
  margin-bottom: 4px;
}
[dir=ltr] .content-tag-list li {
  padding-right: 8px;
  margin-right: 8px;
}
[dir=rtl] .content-tag-list li {
  padding-left: 8px;
  margin-left: 8px;
}
.content-tag-list li:last-child {
  border: none;
}

/***** WYSIWYG Editor *****/
#hc-wysiwyg {
  border: 1px solid #848F99;
}

/***** Upload Dropzone *****/
.upload-dropzone {
  border: 1px solid #848F99;
}

/***** Summary component *****/
zd-summary-block {
  background: #f3f6f6;
}
[dir=ltr] zd-summary-block {
  border-left-color: #859fa1;
}
[dir=rtl] zd-summary-block {
  border-right-color: #859fa1;
}

.service-catalog-hero {
  background-image: url(/hc/theming_assets/01KGM8N6R7958KEE94TT0AHZYH);
  margin-bottom: 10px;
  height: 320px;
}
.service-catalog-description {
  display: flow-root;
}
.service-catalog-description a {
  color: #1F73B7;
  text-decoration: underline;
}
.service-catalog-description a:visited {
  color: #9358B0;
}
.service-catalog-description a:hover, .service-catalog-description a:active, .service-catalog-description a:focus {
  color: #0F3554;
}
.service-catalog-description img {
  height: auto;
  max-width: 100%;
}
.service-catalog-description p > img.image-style-align-left {
  float: left;
  margin: 8px 20px 6px 0;
}
.service-catalog-description p > img.image-style-align-right {
  float: right;
  margin: 8px 0px 6px 20px;
}
.service-catalog-description p > img.image-style-block-align-right {
  margin-left: auto;
  margin-right: 0;
}
.service-catalog-description p > img.image-style-block-align-left {
  margin-left: 0;
  margin-right: auto;
}
.service-catalog-description figure.image {
  display: table;
  margin: 0 auto;
}
.service-catalog-description figure.image > img {
  display: block;
  width: 100%;
}
.service-catalog-description figure.image.image-style-align-left {
  float: left;
  margin: 8px 20px 6px 0;
}
.service-catalog-description figure.image.image-style-align-right {
  float: right;
  margin: 8px 0px 6px 20px;
}
.service-catalog-description figure.image.image-style-block-align-right {
  margin-left: auto;
  margin-right: 0;
}
.service-catalog-description figure.image.image-style-block-align-left {
  margin-left: 0;
  margin-right: auto;
}
.service-catalog-description figcaption {
  padding: 10px 0;
  font-size: 12px;
  text-align: center;
  background-color: #f2f2f2;
}
.service-catalog-description ul,
.service-catalog-description ol {
  padding-left: 20px;
  list-style-position: outside;
  margin: 20px 0 20px 20px;
}
[dir=rtl] .service-catalog-description ul,
[dir=rtl] .service-catalog-description ol {
  padding-right: 20px;
  padding-left: 0;
  margin-left: 0;
  margin-right: 20px;
}
.service-catalog-description ul > ul,
.service-catalog-description ol > ol,
.service-catalog-description ol > ul,
.service-catalog-description ul > ol,
.service-catalog-description li > ul,
.service-catalog-description li > ol {
  margin: 0;
}
.service-catalog-description ul {
  list-style-type: disc;
}
.service-catalog-description :not(pre) > code {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 0 5px;
  margin: 0 2px;
}
.service-catalog-description pre {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 10px 15px;
  overflow: auto;
  white-space: pre;
  direction: ltr;
}
.service-catalog-description blockquote {
  border-left: 1px solid #ddd;
  color: #5a6d7c;
  font-style: italic;
  padding: 0 15px;
}
.service-catalog-main-content {
  display: flex;
  gap: 32px;
}
.service-catalog-list {
  width: 100%;
}
.service-catalog-breadcrumbs {
  display: flex;
  align-items: center;
  gap: 20px;
}

.is-service-catalog-preview #navbar-container,
.is-service-catalog-preview .navbar-container,
.is-service-catalog-preview .assembly-bar,
.is-service-catalog-preview [data-garden-id="chrome.subnav"] {
  display: none !important;
}

/* ==========================================================
   kickflow使い方ガイド — Copenhagen カスタム追加CSS
   style.css の末尾に貼り付けてください。
   前提: manifest.json の設定で
     brand_color        = #2850DC
     brand_text_color   = #FFFFFF
   ========================================================== */

/* Material Symbols 共通 */
.material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
  vertical-align: middle;
  user-select: none;
}

/* ---------- ヒーロー ---------- */
.kfg-hero {
  background: #EEF3FC;
  text-align: center;
  padding: 60px 20px 68px;
  /* Copenhagenの .hero を使わない場合のスタンドアロン指定 */
}
.kfg-hero__title {
  margin: 0;
  font-size: 28px;
  font-weight: 700;
  color: #00143C;
}
.kfg-hero__lead {
  margin: 12px 0 28px;
  font-size: 14px;
  color: #4A5568;
}
.kfg-hero__search { max-width: 640px; margin: 0 auto; }
/* {{search}} が出力する form/input の上書き */
/* Copenhagen標準の.searchが持つ丸い縁取り（border-radius:30px）を消し、
   下のinput側の細い角丸ボーダーだけを見せる（二重の縁取り防止） */
.kfg-hero__search .search {
  position: relative;
  border: none;
}
.kfg-hero__search .search:focus-within {
  border-color: transparent;
}
.kfg-hero__search input[type="search"] {
  width: 100%;
  border: 1px solid #D8DFF0;
  border-radius: 8px;
  padding: 16px 20px 16px 48px;
  font-size: 14px;
  box-shadow: 0 2px 8px rgba(40, 80, 220, .08);
  background-color: #fff;
}
.kfg-hero__search input[type="search"]:focus {
  border-color: #2850DC;
  outline: none;
}

/* ---------- カテゴリカード ---------- */
.kfg-cats { background: #fff; padding: 48px 0 8px; }
.kfg-cats__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 20px;
}
.kfg-card {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  border: 1px solid #EBEBEB;
  border-radius: 8px;
  padding: 24px 22px;
  text-decoration: none;
  transition: border-color .2s cubic-bezier(.4,0,.2,1), box-shadow .2s cubic-bezier(.4,0,.2,1);
}
.kfg-card:hover {
  border-color: #2850DC;
  box-shadow: 0 2px 10px rgba(40, 80, 220, .10);
  text-decoration: none;
}
.kfg-card__icon {
  flex: none;
  width: 52px;
  height: 52px;
  border-radius: 8px;
  background: #EEF3FC;
  display: flex;
  align-items: center;
  justify-content: center;
}
.kfg-card__icon .material-symbols-outlined { font-size: 28px; color: #2850DC; }
.kfg-card__body { display: block; }
.kfg-card__title {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 15px;
  font-weight: 700;
  color: #00143C;
}
.kfg-card__ext { font-size: 15px; color: #98A2B3; }
.kfg-card__desc {
  display: block;
  margin-top: 6px;
  font-size: 12.5px;
  line-height: 1.7;
  color: #667085;
}

/* ---------- おすすめ記事 ---------- */
.kfg-reco { background: #fff; padding: 40px 20px; max-width: 1120px; margin: 0 auto; }
.kfg-reco__heading { margin: 0 0 16px; font-size: 18px; font-weight: 700; color: #00143C; }
.kfg-reco__list {
  list-style: none;
  margin: 0;
  padding: 0;
  border: 1px solid #EBEBEB;
  border-radius: 8px;
  overflow: hidden;
}
.kfg-reco__list li {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 15px 20px;
}
.kfg-reco__list li + li { border-top: 1px solid #EBEBEB; }
.kfg-reco__list a { font-size: 13.5px; color: #3C64C8; text-decoration: none; }
.kfg-reco__list a:hover { text-decoration: underline; }
.kfg-badge {
  flex: none;
  font-size: 11px;
  font-weight: 600;
  border-radius: 4px;
  padding: 3px 8px;
}
.kfg-badge--startup { color: #2850DC; background: #EEF3FC; }
.kfg-badge--katsuyo { color: #0E7490; background: #E7F6F8; }

/* ---------- レスポンシブ（後回しでよいとのことなので最低限） ---------- */
@media (max-width: 900px) {
  .kfg-cats__grid { grid-template-columns: 1fr; }
}

/* ==========================================================
   kickflow使い方ガイド — 下層ページ用 追加CSS
   （下層ページ：検索結果／カテゴリ／セクション／記事詳細）
   ========================================================== */

/* ---------- 共通レイアウト ---------- */
.kfg-page,
.kfg-search-page { background: #fff; }

.kfg-2col,
.kfg-3col {
  display: flex;
  max-width: 1120px;
  margin: 0 auto;
  padding: 32px 20px 48px;
  align-items: flex-start;
}
.kfg-2col { gap: 40px; }
.kfg-3col { gap: 40px; }

/* ---------- パンくず ---------- */
.kfg-breadcrumbs ol,
.kfg-breadcrumbs ul { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; align-items: center; }
.kfg-breadcrumbs li { font-size: 12px; color: #00143C; }
.kfg-breadcrumbs li + li::before {
  content: 'chevron_right';
  font-family: 'Material Symbols Outlined';
  font-size: 15px;
  color: #98A2B3;
  vertical-align: middle;
  margin: 0 5px;
}
.kfg-breadcrumbs a { color: #3C64C8; text-decoration: none; }
.kfg-breadcrumbs a:hover { text-decoration: underline; }

.kfg-crumbbar {
  background: #F5F6FA;
  border-bottom: 1px solid #EBEBEB;
  padding: 16px 0;
}
.kfg-crumbbar .kfg-breadcrumbs { max-width: 1120px; margin: 0 auto; padding: 0 20px; }

/* ---------- ページヘッダー（カテゴリ／セクション） ---------- */
.kfg-pagehead { background: #EEF3FC; padding: 26px 0 40px; }
.kfg-pagehead--slim { padding-bottom: 34px; }
.kfg-pagehead > * { max-width: 1120px; margin-left: auto; margin-right: auto; padding: 0 20px; }
.kfg-pagehead .kfg-breadcrumbs { margin-bottom: 18px; }
.kfg-pagehead__row { display: flex; align-items: flex-start; gap: 18px; }
.kfg-pagehead__icon {
  flex: none; width: 52px; height: 52px; border-radius: 8px; background: #fff;
  display: flex; align-items: center; justify-content: center;
}
.kfg-pagehead__icon .material-symbols-outlined { font-size: 28px; color: #2850DC; }
.kfg-pagehead__title { margin: 0; font-size: 26px; font-weight: 700; color: #00143C; }
.kfg-pagehead--slim .kfg-pagehead__title { font-size: 24px; }
.kfg-pagehead__desc { margin: 8px 0 0; font-size: 14px; color: #4A5568; }
.kfg-pagehead__search { margin-left: auto; width: 300px; }
.kfg-pagehead__search input[type="search"] {
  width: 100%; border: 1px solid #D8DFF0; border-radius: 8px;
  padding: 11px 16px 11px 42px; font-size: 13px; background-color: #fff;
}

/* ---------- 検索結果ページ ---------- */
.kfg-searchbar-wrap { background: #EEF3FC; padding: 28px 0 32px; }
.kfg-searchbar { max-width: 1120px; margin: 0 auto; padding: 0 20px; }
.kfg-searchbar input[type="search"] {
  max-width: 720px; width: 100%;
  border: 1px solid #D8DFF0; border-radius: 8px;
  padding: 13px 20px 13px 48px; font-size: 14px; background-color: #fff;
}
.kfg-results__count { margin: 0 0 20px; font-size: 13px; color: #667085; }
.kfg-results__count b { color: #00143C; }
.kfg-results__list { list-style: none; margin: 0; padding: 0; }
.kfg-result { padding: 20px 0; border-top: 1px solid #EBEBEB; }
.kfg-result:last-child { border-bottom: 1px solid #EBEBEB; }
.kfg-result__path { display: flex; align-items: center; gap: 8px; font-size: 11.5px; color: #98A2B3; margin-bottom: 7px; }
.kfg-result__path .material-symbols-outlined { font-size: 14px; }
.kfg-result__title { font-size: 16px; font-weight: 600; color: #3C64C8; text-decoration: none; }
.kfg-result__title:hover { text-decoration: underline; }
.kfg-result__body { margin: 8px 0 0; font-size: 13px; line-height: 1.8; color: #667085; }
.kfg-result__body em,
.kfg-result__body mark { background: #FFF3C4; color: #00143C; font-style: normal; padding: 0 2px; }

.kfg-facets { flex: none; width: 220px; }
.kfg-facets__heading { font-size: 13px; font-weight: 700; color: #00143C; margin-bottom: 12px; }
.kfg-facets__list { display: flex; flex-direction: column; gap: 2px; }
.kfg-facets__item {
  display: flex; align-items: center; justify-content: space-between;
  font-size: 13px; color: #33415C; border-radius: 4px; padding: 9px 12px; text-decoration: none;
}
.kfg-facets__item:hover { background: #F5F6FA; text-decoration: none; }
.kfg-facets__item.is-active { color: #2850DC; background: #EEF3FC; font-weight: 600; }
.kfg-facets__count { font-size: 12px; color: #98A2B3; }
.kfg-facets__item.is-active .kfg-facets__count { color: #667085; }
.kfg-results { flex: 1; min-width: 0; }

.kfg-empty { text-align: center; padding: 64px 0; }
.kfg-empty .material-symbols-outlined { font-size: 40px; color: #C4C9D4; }
.kfg-empty p { margin: 12px 0 0; font-size: 14px; color: #33415C; }
.kfg-empty__hint { font-size: 13px; color: #98A2B3; }

/* ---------- カテゴリページ：セクションカード ---------- */
.kfg-seclist {
  max-width: 1120px; margin: 0 auto; padding: 40px 20px;
  display: flex; flex-direction: column; gap: 32px;
}
.kfg-secbox { border: 1px solid #EBEBEB; border-radius: 8px; overflow: hidden; }
.kfg-secbox__head {
  display: flex; align-items: center; gap: 10px;
  padding: 16px 22px; border-bottom: 1px solid #EBEBEB; background: #FBFCFE;
}
.kfg-secbox__head .material-symbols-outlined { font-size: 20px; color: #2850DC; }
.kfg-secbox__title { font-size: 16px; font-weight: 700; color: #00143C; text-decoration: none; }
.kfg-secbox__count { font-size: 12px; color: #98A2B3; }
.kfg-secbox__body { display: flex; flex-direction: column; }

.kfg-arow {
  display: flex; align-items: center; gap: 10px;
  padding: 13px 22px; font-size: 13.5px; color: #3C64C8; text-decoration: none;
  border-bottom: 1px solid #F3F4F7;
}
.kfg-arow:last-child { border-bottom: none; }
.kfg-arow:hover { background: #FBFCFE; text-decoration: none; }
.kfg-arow .material-symbols-outlined { font-size: 17px; color: #C4C9D4; }
.kfg-arow--more { font-size: 13px; font-weight: 600; gap: 8px; }
.kfg-arow--more .material-symbols-outlined { font-size: 16px; color: currentColor; }

/* ---------- セクションページ ---------- */
.kfg-sidenav { flex: none; width: 240px; }
.kfg-sidenav__heading { font-size: 12px; font-weight: 700; color: #98A2B3; letter-spacing: .04em; margin-bottom: 12px; }
.kfg-sidenav__list { display: flex; flex-direction: column; gap: 2px; }
.kfg-sidenav__item { font-size: 13px; color: #33415C; border-radius: 4px; padding: 9px 12px; text-decoration: none; }
.kfg-sidenav__item:hover { background: #F5F6FA; text-decoration: none; }
.kfg-sidenav__item.is-active { color: #2850DC; background: #EEF3FC; font-weight: 600; }

.kfg-arts { flex: 1; min-width: 0; }
.kfg-arts__count { margin: 0 0 18px; font-size: 13px; color: #667085; }
.kfg-arts__list { border: 1px solid #EBEBEB; border-radius: 8px; overflow: hidden; }
.kfg-artrow {
  display: flex; align-items: center; gap: 12px;
  padding: 16px 20px; text-decoration: none; border-bottom: 1px solid #EBEBEB;
}
.kfg-artrow:last-child { border-bottom: none; }
.kfg-artrow:hover { background: #FBFCFE; text-decoration: none; }
.kfg-artrow .material-symbols-outlined { font-size: 18px; color: #C4C9D4; }
.kfg-artrow__title { font-size: 14px; color: #3C64C8; }
.kfg-artrow__labels { margin-left: auto; display: flex; gap: 6px; flex: none; }

/* ---------- 記事詳細 ---------- */
.kfg-tree { flex: none; width: 230px; position: sticky; top: 16px; }
.kfg-tree__heading { font-size: 11.5px; font-weight: 700; color: #98A2B3; letter-spacing: .06em; margin-bottom: 10px; }
.kfg-tree__list { display: flex; flex-direction: column; gap: 1px; }
.kfg-tree__cat {
  display: flex; align-items: center; gap: 8px;
  font-size: 13px; color: #33415C; padding: 8px 10px; border-radius: 4px; text-decoration: none;
}
.kfg-tree__cat:hover { background: #F5F6FA; text-decoration: none; }
.kfg-tree__cat .material-symbols-outlined { font-size: 18px; color: #98A2B3; }
.kfg-tree__cat.is-current { font-weight: 700; color: #00143C; }
.kfg-tree__cat.is-current .material-symbols-outlined { color: #2850DC; }
.kfg-tree__secs {
  display: flex; flex-direction: column; gap: 1px;
  padding-left: 16px; margin-left: 10px; border-left: 2px solid #EBEBEB;
}
.kfg-tree__sec { font-size: 12.5px; color: #33415C; padding: 7px 10px; border-radius: 4px; text-decoration: none; }
.kfg-tree__sec:hover { background: #F5F6FA; text-decoration: none; }
.kfg-tree__sec.is-active { color: #2850DC; font-weight: 600; background: #EEF3FC; }

.kfg-article { flex: 1; min-width: 0; }
.kfg-article__labels { display: flex; gap: 8px; margin-bottom: 16px; }
.kfg-article__title {
  margin: 0; font-size: 30px; font-weight: 700; line-height: 1.45;
  color: #00143C; letter-spacing: -.01em;
}
.kfg-article__meta {
  display: flex; align-items: center; gap: 16px;
  margin: 16px 0 0; padding-bottom: 24px; border-bottom: 1px solid #EBEBEB;
  font-size: 12px; color: #98A2B3;
}
.kfg-article__meta span { display: inline-flex; align-items: center; gap: 5px; }
.kfg-article__meta .material-symbols-outlined { font-size: 16px; }

/* 本文タイポグラフィ（見出し1〜3を段階的に強調） */
.kfg-article__body { font-size: 15px; line-height: 1.95; color: #33415C; }
.kfg-article__body > *:first-child { margin-top: 24px; }
.kfg-article__body h1 {
  margin: 48px 0 0; font-size: 26px; font-weight: 700; line-height: 1.45; color: #00143C;
  padding-bottom: 12px; border-bottom: 2px solid #EBEBEB;
}
.kfg-article__body h2 {
  margin: 44px 0 0; font-size: 22px; font-weight: 700; line-height: 1.5; color: #00143C;
  border-left: 4px solid #2850DC; padding-left: 14px;
}
.kfg-article__body h3 {
  margin: 32px 0 0; font-size: 17px; font-weight: 700; line-height: 1.6; color: #00143C;
}
.kfg-article__body h4 { margin: 26px 0 0; font-size: 15px; font-weight: 700; color: #00143C; }
.kfg-article__body p { margin: 18px 0 0; }
.kfg-article__body ul,
.kfg-article__body ol { margin: 16px 0 0; padding-left: 22px; line-height: 2.1; }
.kfg-article__body li + li { margin-top: 2px; }
.kfg-article__body img {
  display: block; max-width: 100%; margin: 22px 0 0;
  border: 1px solid #EBEBEB; border-radius: 8px;
}
.kfg-article__body a { color: #3C64C8; }
.kfg-article__body code {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: .9em; background: #F5F6FA; border-radius: 4px; padding: 2px 5px;
}
.kfg-article__body pre {
  margin: 22px 0 0; padding: 16px 18px; background: #F5F6FA;
  border: 1px solid #EBEBEB; border-radius: 8px; overflow-x: auto; line-height: 1.7;
}
.kfg-article__body table {
  width: 100%; margin: 22px 0 0; border-collapse: collapse; font-size: 14px;
}
.kfg-article__body th,
.kfg-article__body td { border: 1px solid #EBEBEB; padding: 10px 14px; text-align: left; }
.kfg-article__body th { background: #FBFCFE; font-weight: 700; color: #00143C; }

/* コールアウト（記事エディタで blockquote / callout クラスを使う想定） */
.kfg-article__body blockquote,
.kfg-article__body .kfg-note {
  display: flex; gap: 12px; margin: 22px 0 0; padding: 16px 18px;
  background: #F0F7FF; border: 1px solid #D8E8FC; border-radius: 8px;
  font-size: 13.5px; line-height: 1.85; color: #33415C;
}
.kfg-article__body blockquote::before,
.kfg-article__body .kfg-note::before {
  content: 'info'; font-family: 'Material Symbols Outlined';
  flex: none; font-size: 20px; color: #2850DC; line-height: 1.3;
}
.kfg-article__body .kfg-warn {
  display: flex; gap: 12px; margin: 22px 0 0; padding: 16px 18px;
  background: #FFF8EC; border: 1px solid #FAE3BE; border-radius: 8px;
  font-size: 13.5px; line-height: 1.85; color: #33415C;
}
.kfg-article__body .kfg-warn::before {
  content: 'warning'; font-family: 'Material Symbols Outlined';
  flex: none; font-size: 20px; color: #B45309; line-height: 1.3;
}
.kfg-article__body blockquote > *:first-child,
.kfg-article__body .kfg-note > *:first-child,
.kfg-article__body .kfg-warn > *:first-child { margin-top: 0; }

/* ---------- 右：目次 ---------- */
.kfg-toc { flex: none; width: 220px; position: sticky; top: 16px; }
.kfg-toc__inner { border: 1px solid #EBEBEB; border-radius: 8px; padding: 18px 16px; }
.kfg-toc__heading { font-size: 11.5px; font-weight: 700; color: #98A2B3; letter-spacing: .06em; margin-bottom: 10px; }
.kfg-toc__list { display: flex; flex-direction: column; gap: 1px; }
.kfg-toc__link {
  font-size: 12.5px; line-height: 1.5; color: #667085;
  border-left: 2px solid #EBEBEB; padding: 6px 0 6px 12px; text-decoration: none;
}
.kfg-toc__link:hover { color: #2850DC; text-decoration: none; }
.kfg-toc__link--h3 { font-size: 12px; color: #98A2B3; padding-left: 24px; }
.kfg-toc__link.is-active { color: #2850DC; font-weight: 600; border-left-color: #2850DC; }

/* 目次アンカーの飛び先が隠れないように */
.kfg-article__body h2,
.kfg-article__body h3 { scroll-margin-top: 24px; }

/* ---------- 役立ち度 / 関連記事 ---------- */
.kfg-vote {
  display: flex; align-items: center; justify-content: space-between;
  margin: 48px 0 0; padding: 22px 24px; border: 1px solid #EBEBEB; border-radius: 8px;
}
.kfg-vote__title { font-size: 14px; font-weight: 700; color: #00143C; }
.kfg-vote__sub { margin: 5px 0 0; font-size: 12px; color: #98A2B3; }
.kfg-vote__btns { display: flex; gap: 10px; }
.kfg-vote__btn {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 13px; font-weight: 600; color: #667085;
  border: 1px solid #D0D5DD; border-radius: 4px; padding: 9px 20px;
  background: none; cursor: pointer; text-decoration: none;
}
.kfg-vote__btn--up { color: #2850DC; border-color: #2850DC; }
.kfg-vote__btn:hover { background: #F5F6FA; }

.kfg-related { margin: 32px 0 0; }
.kfg-related__heading { font-size: 15px; font-weight: 700; color: #00143C; margin-bottom: 12px; }
.kfg-related__list { border-top: none; }
.kfg-related__list .kfg-arow { padding-left: 2px; padding-right: 2px; border-bottom: 1px solid #EBEBEB; }

/* ---------- ラベル（バッジ）---------- */
/* ラベル名 = identifier に応じて色を割り当て。
   未定義のラベルは既定（グレー）で表示される。 */
.kfg-badge {
  flex: none; font-size: 11.5px; font-weight: 600;
  border-radius: 4px; padding: 3px 8px;
  color: #33415C; background: #F5F6FA; white-space: nowrap;
}
.kfg-badge--startup,
.kfg-badge--活用事例 { color: #2850DC; background: #EEF3FC; }
.kfg-badge--katsuyo,
.kfg-badge--経路 { color: #0E7490; background: #E7F6F8; }

/* ---------- ページネーション ---------- */
.pagination { display: flex; align-items: center; justify-content: center; gap: 6px; margin-top: 32px; }
.pagination ul { display: flex; gap: 6px; list-style: none; margin: 0; padding: 0; }
.pagination-current,
.pagination-page a,
.pagination-next-link,
.pagination-prev-link {
  display: flex; align-items: center; justify-content: center;
  width: 34px; height: 34px; font-size: 13px; border-radius: 4px; text-decoration: none;
}
.pagination-current { color: #fff; background: #2850DC; font-weight: 600; }
.pagination-page a,
.pagination-next-link,
.pagination-prev-link { color: #33415C; border: 1px solid #EBEBEB; }
.pagination-page a:hover { background: #F5F6FA; text-decoration: none; }

/* ---------- レスポンシブ（最低限） ---------- */
@media (max-width: 1080px) {
  .kfg-toc { display: none; }
}
@media (max-width: 900px) {
  .kfg-2col, .kfg-3col { flex-direction: column; gap: 24px; }
  .kfg-facets, .kfg-sidenav, .kfg-tree { width: 100%; position: static; }
  .kfg-pagehead__row { flex-wrap: wrap; }
  .kfg-pagehead__search { margin-left: 0; width: 100%; }
}

/* ---------- 階層対応の追加（カテゴリ＞親セクション＞小セクション） ---------- */
.kfg-seclist--2col {
  display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: start;
}
.kfg-seclist--flat { padding: 0; max-width: none; display: flex; flex-direction: column; gap: 24px; }
.kfg-secbox__head { text-decoration: none; }
.kfg-secbox__head:hover .kfg-secbox__title { color: #2850DC; }
.kfg-arow__count { margin-left: auto; font-size: 11.5px; color: #98A2B3; }
.kfg-expand {
  width: 100%; text-align: left; border: none; background: none;
  font-family: inherit; cursor: pointer;
}

/* 左ナビの入れ子（親セクション＞小セクション） */
.kfg-sidenav__item--parent { font-weight: 700; color: #00143C; }
.kfg-sidenav__item--parent.is-current { color: #00143C; }
.kfg-sidenav__children {
  display: flex; flex-direction: column; gap: 1px;
  padding-left: 16px; margin-left: 10px; border-left: 2px solid #EBEBEB;
}
.kfg-sidenav__child {
  font-size: 12.5px; color: #33415C; padding: 7px 10px;
  border-radius: 4px; text-decoration: none;
}
.kfg-sidenav__child:hover { background: #F5F6FA; text-decoration: none; }
.kfg-sidenav__child.is-active { color: #2850DC; font-weight: 600; background: #EEF3FC; }

@media (max-width: 900px) {
  .kfg-seclist--2col { grid-template-columns: 1fr; }
}

/* ==========================================================
   検索窓の共通調整（TOP / カテゴリ / 検索結果）
   - Copenhagen標準 .search の丸い枠線を打ち消して二重枠を防ぐ
   - 虫眼鏡アイコンを背景画像として表示
   - クリアボタン（×）を入力欄の中に重ねて配置
   ========================================================== */

/* 1) 外側フォームの枠線を消す（枠線は input 側だけに持たせる） */
.kfg-hero__search .search,
.kfg-pagehead__search .search,
.kfg-searchbar .search {
  position: relative;
  border: none;
  background: transparent;
}
.kfg-hero__search .search:focus-within,
.kfg-pagehead__search .search:focus-within,
.kfg-searchbar .search:focus-within {
  border-color: transparent;
}

/* 2) 虫眼鏡アイコン（背景画像。色を変えるときは stroke='%23667085' の値を変更） */
.kfg-hero__search input[type="search"],
.kfg-pagehead__search input[type="search"],
.kfg-searchbar input[type="search"] {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Ccircle cx='7.5' cy='7.5' r='5.5' stroke='%23667085' stroke-width='1.6'/%3E%3Cpath d='M11.8 11.8L16 16' stroke='%23667085' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 18px 18px;
}
.kfg-hero__search input[type="search"],
.kfg-searchbar input[type="search"] {
  background-position: left 18px center;
}
.kfg-pagehead__search input[type="search"] {
  background-size: 16px 16px;
  background-position: left 14px center;
}

/* 3) Copenhagen標準の左パディング（40px）を各デザインの値に戻す */
[dir="ltr"] .kfg-hero__search input[type="search"] { padding-left: 48px; padding-right: 48px; }
[dir="ltr"] .kfg-searchbar input[type="search"] { padding-left: 48px; padding-right: 48px; }
[dir="ltr"] .kfg-pagehead__search input[type="search"] { padding-left: 42px; padding-right: 40px; }

/* 4) 入力中に出るクリアボタン（×）を入力欄の内側に重ねる */
.kfg-hero__search .search .clear-button,
.kfg-pagehead__search .search .clear-button,
.kfg-searchbar .search .clear-button {
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  height: 28px;
  padding: 0 8px;
  border-radius: 4px;
  background: transparent;
  color: #667085;
}
.kfg-hero__search .search .clear-button:hover,
.kfg-pagehead__search .search .clear-button:hover,
.kfg-searchbar .search .clear-button:hover {
  background: #EEF3FC;
  color: #2850DC;
}
/* 入力中に右角が欠ける標準スタイルを打ち消す */
.kfg-hero__search .search-has-value input[type="search"],
.kfg-pagehead__search .search-has-value input[type="search"],
.kfg-searchbar .search-has-value input[type="search"] {
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
  border-right-color: #D8DFF0;
}
.kfg-hero__search .search-has-value input[type="search"]:focus,
.kfg-pagehead__search .search-has-value input[type="search"]:focus,
.kfg-searchbar .search-has-value input[type="search"]:focus {
  border-right-color: #2850DC;
}

/* 左カラムが空のとき（サブセクション無し / 絞り込み無し）は1カラム表示にする */
.kfg-2col.kfg-2col--single { display: block; }
.kfg-2col.kfg-2col--single > .kfg-arts,
.kfg-2col.kfg-2col--single > .kfg-results { width: 100%; }

/* ==========================================================
   kickflow使い方ガイド — 記事ページ改訂CSS（h2帯 / h3罫線 / 箇条書き / kfg-box）
   ========================================================== */

/* h2：帯（薄青背景＋青の左罫線） */
.kfg-article .kfg-article__body h2 {
  margin: 44px 0 0;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5;
  color: #00143C;
  background: #EEF3FC;
  border-left: 4px solid #2850DC;
  border-radius: 0 4px 4px 0;
  padding: 12px 16px 12px 14px;
}

/* h3：青の左罫線 */
.kfg-article .kfg-article__body h3 {
  margin: 32px 0 0;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.6;
  color: #00143C;
  background: none;
  border-left: 4px solid #2850DC;
  padding: 2px 0 2px 14px;
}

/* 箇条書き：Copenhagen側のリセットに負けないよう明示指定 */
.kfg-article .kfg-article__body ul {
  list-style: disc outside !important;
  margin: 16px 0 0;
  padding-left: 24px !important;
}
.kfg-article .kfg-article__body ol {
  list-style: decimal outside !important;
  margin: 16px 0 0;
  padding-left: 24px !important;
}
.kfg-article .kfg-article__body ul ul { list-style: circle outside !important; }
.kfg-article .kfg-article__body li {
  display: list-item !important;
  margin-top: 6px;
  line-height: 2;
}
.kfg-article .kfg-article__body li::marker { color: #2850DC; }

/* 囲み強調ボックス：記事HTMLで <div class="kfg-box">…</div> */
.kfg-article .kfg-article__body .kfg-box {
  margin: 22px 0 0;
  padding: 20px 24px;
  background: #F0F7FF;
  border: 1px solid #D8E8FC;
  border-radius: 8px;
}
.kfg-article .kfg-article__body .kfg-box > *:first-child { margin-top: 0; }
.kfg-article .kfg-article__body .kfg-box__title {
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 700;
  color: #00143C;
}
.kfg-article .kfg-article__body .kfg-box ul { margin-top: 0; }

/* ラベル＝検索リンク */
.kfg-article a.kfg-badge {
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.kfg-article a.kfg-badge:hover { text-decoration: underline; }
.kfg-article a.kfg-badge .material-symbols-outlined { font-size: 13px; }

/* 目次：長い記事でも画面内に収める */
.kfg-toc__inner { max-height: calc(100vh - 32px); overflow-y: auto; }


/* ==========================================================
   2026-09-01 改訂 — 新ヘッダー／新フッター／h3柔らかく／表／コピーボタン
   ========================================================== */
.kfg-container { max-width: 1120px; margin: 0 auto; padding: 0 20px; }

/* ---------- ヘッダー（header.hbs） ---------- */
.kfg-header { background: #fff; border-bottom: 1px solid #EBEBEB; }
.kfg-header__inner { display: flex; align-items: center; justify-content: space-between; height: 64px; }
.kfg-header__brand { display: flex; align-items: baseline; gap: 10px; text-decoration: none; }
.kfg-header__brand img { height: 22px; transform: translateY(2px); }
.kfg-header__site { font-size: 15px; font-weight: 600; color: #00143C; }
.kfg-header__nav { display: flex; align-items: center; gap: 22px; font-size: 13px; }
.kfg-header__signin { color: #555; text-decoration: none; }
.kfg-header__signin:hover { color: #2850DC; text-decoration: underline; }
.kfg-header__login {
  display: inline-flex; align-items: center; gap: 6px;
  color: #fff; background: #2850DC; font-weight: 600;
  border-radius: 4px; padding: 8px 16px; text-decoration: none;
}
.kfg-header__login:hover { background: #2246C4; text-decoration: none; }
.kfg-header__login .material-symbols-outlined { font-size: 15px; }

/* ---------- フッター（footer.hbs、Powered by Zendesk なし） ---------- */
.kfg-footer { background: #00143C; padding-top: 36px; }
.kfg-footer__top { display: flex; align-items: flex-start; justify-content: space-between; padding-bottom: 28px; }
.kfg-footer__brand { display: flex; flex-direction: column; gap: 12px; }
.kfg-footer__brand img { height: 20px; align-self: flex-start; }
.kfg-footer__brand span { font-size: 12px; color: rgba(255,255,255,.55); }
.kfg-footer__links { display: flex; gap: 28px; font-size: 12.5px; }
.kfg-footer__links a {
  display: inline-flex; align-items: center; gap: 4px;
  color: rgba(255,255,255,.8); text-decoration: none;
}
.kfg-footer__links a:hover { color: #fff; text-decoration: underline; }
.kfg-footer__links .material-symbols-outlined { font-size: 13px; color: rgba(255,255,255,.5); }
.kfg-footer__bottom {
  border-top: 1px solid rgba(255,255,255,.14);
  padding: 16px 0; font-size: 11.5px; color: rgba(255,255,255,.45);
}

/* ---------- 記事：h3を柔らかく（左罫線 → 淡い下線） ---------- */
.kfg-article .kfg-article__body h3 {
  border-left: none;
  padding: 0 0 7px;
  border-bottom: 2px solid #D8E8FC;
}

/* ---------- 記事：表組み（ヘッダー行を背景色＋太字） ---------- */
.kfg-article .kfg-article__body th {
  background: #EEF3FC;
  font-weight: 700;
  color: #00143C;
}

/* ---------- 記事：コードのコピーボタン ---------- */
.kfg-article__body pre { position: relative; padding-right: 96px; }
.kfg-copybtn {
  position: absolute; top: 8px; right: 8px;
  display: inline-flex; align-items: center; gap: 4px;
  font-family: inherit; font-size: 11px; font-weight: 600; color: #667085;
  background: #fff; border: 1px solid #D0D5DD; border-radius: 4px;
  padding: 4px 10px; cursor: pointer;
}
.kfg-copybtn:hover { color: #2850DC; border-color: #2850DC; }
.kfg-copybtn .material-symbols-outlined { font-size: 14px; }

/* ---------- セクションページ：タイトルをパンくず直下に整列 ---------- */
.kfg-pagehead--slim .kfg-container { padding: 0 20px; }
.kfg-pagehead--slim .kfg-container > * { max-width: none; margin-left: 0; margin-right: 0; padding: 0; }
.kfg-pagehead--slim .kfg-breadcrumbs { margin-bottom: 16px; }

/* ---------- 検索フォーム内のボタン（クリア／送信）の位置修正 ----------
   Zendeskのsearchヘルパーが出力するボタンが枠外に落ちて「✕」だけ表示される問題の対策 */
.kfg-hero__search form,
.kfg-searchbar form,
.kfg-pagehead__search form { position: relative; }
.kfg-hero__search form button,
.kfg-hero__search form input[type="submit"],
.kfg-searchbar form button,
.kfg-searchbar form input[type="submit"],
.kfg-pagehead__search form button,
.kfg-pagehead__search form input[type="submit"] {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  background: none;
  padding: 6px;
  margin: 0;
  font-size: 13px;
  line-height: 1;
  color: #98A2B3;
  cursor: pointer;
  box-shadow: none;
}
.kfg-hero__search form button:hover,
.kfg-searchbar form button:hover,
.kfg-pagehead__search form button:hover { color: #2850DC; }


/* ==========================================================
   kickflow使い方ガイド — 記事本文パーツ（アイコン付きブロック／リンクカード／チェックリスト）
   記法一覧は zendesk/記法ガイド.html を参照。
   ========================================================== */

/* ---------- 1. アイコン付きブロック ----------
   使い方：<div class="block note">本文</div>（ヘルプセンターと共通のクラス名）
   種類：note / caution / warning / danger / tip / important / notice
   タイトル行（.kfg-msg__title）は廃止 */
.kfg-article__body .block.note,
.kfg-article__body .block.caution,
.kfg-article__body .block.warning,
.kfg-article__body .block.danger,
.kfg-article__body .block.tip,
.kfg-article__body .block.important,
.kfg-article__body .block.notice {
  display: block;               /* flex だと <br> やリンクが列に分解されるため通常フロー */
  position: relative;
  margin: 22px 0 0;
  padding: 16px 20px 16px 54px;  /* 左にアイコン分の余白 */
  border-radius: 8px;
  font-size: 14px;
  line-height: 1.85;
  color: #33415C;
}
.kfg-article__body .block.note > *:first-child,
.kfg-article__body .block.caution > *:first-child,
.kfg-article__body .block.warning > *:first-child,
.kfg-article__body .block.danger > *:first-child,
.kfg-article__body .block.tip > *:first-child,
.kfg-article__body .block.important > *:first-child,
.kfg-article__body .block.notice > *:first-child { margin-top: 0; }
.kfg-article__body .block.note > *:last-child,
.kfg-article__body .block.caution > *:last-child,
.kfg-article__body .block.warning > *:last-child,
.kfg-article__body .block.danger > *:last-child,
.kfg-article__body .block.tip > *:last-child,
.kfg-article__body .block.important > *:last-child,
.kfg-article__body .block.notice > *:last-child { margin-bottom: 0; }
.kfg-article__body .block.note p,
.kfg-article__body .block.caution p,
.kfg-article__body .block.warning p,
.kfg-article__body .block.danger p,
.kfg-article__body .block.tip p,
.kfg-article__body .block.important p,
.kfg-article__body .block.notice p { margin: 10px 0 0; }
.kfg-article__body .block.note ul,
.kfg-article__body .block.note ol,
.kfg-article__body .block.caution ul,
.kfg-article__body .block.caution ol,
.kfg-article__body .block.warning ul,
.kfg-article__body .block.warning ol,
.kfg-article__body .block.danger ul,
.kfg-article__body .block.danger ol,
.kfg-article__body .block.tip ul,
.kfg-article__body .block.tip ol,
.kfg-article__body .block.important ul,
.kfg-article__body .block.important ol,
.kfg-article__body .block.notice ul,
.kfg-article__body .block.notice ol { margin: 10px 0 0; }
.kfg-article__body .block.note::before,
.kfg-article__body .block.caution::before,
.kfg-article__body .block.warning::before,
.kfg-article__body .block.danger::before,
.kfg-article__body .block.tip::before,
.kfg-article__body .block.important::before,
.kfg-article__body .block.notice::before {
  position: absolute;
  left: 20px;
  top: 16px;
  font-family: 'Material Symbols Outlined';
  font-size: 22px;
  line-height: 1.2;
  font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}


/* note — 案内事項（グリーン） */
.kfg-article__body .block.note { background: #E8F5EF; }
.kfg-article__body .block.note::before { content: 'edit'; color: #12805C; }
/* caution — 注意（イエロー） */
.kfg-article__body .block.caution { background: #FBF8E3; }
.kfg-article__body .block.caution::before { content: 'warning'; color: #C79A00; }
/* warning — 警告（オレンジ） */
.kfg-article__body .block.warning { background: #FDF0E0; }
.kfg-article__body .block.warning::before { content: 'warning'; color: #D97706; }
/* danger — 危険（レッド） */
.kfg-article__body .block.danger { background: #FCE4E4; }
.kfg-article__body .block.danger::before { content: 'error'; color: #D32F2F; }
/* tip — ティップス（ライトブルー） */
.kfg-article__body .block.tip { background: #E7F3FC; }
.kfg-article__body .block.tip::before { content: 'auto_fix_high'; color: #2850DC; }
/* important — 重要（グリーン） */
.kfg-article__body .block.important { background: #E8F5EF; }
.kfg-article__body .block.important::before { content: 'error'; color: #12805C; }
/* notice — プラン案内（ライトブルー） */
.kfg-article__body .block.notice { background: #E7F3FC; }
.kfg-article__body .block.notice::before { content: 'info'; color: #0E8CA8; }

/* ---------- 2. アイコンなしブロック（青／オレンジ） ---------- */
/* 青は既存の .kfg-box。オレンジを追加 */
.kfg-article__body .kfg-box--orange {
  background: #FFF8EC;
  border-color: #FAE3BE;
}

/* ---------- 3. 動画・資料リンクカード ---------- */
.kfg-article__body .kfg-linkcard {
  display: flex;
  align-items: center;
  gap: 20px;
  margin: 22px 0 0;
  padding: 20px 24px;
  background: #fff;
  border: 1px solid #EBEBEB;
  border-radius: 12px;
  text-decoration: none;
  transition: border-color .2s cubic-bezier(.4,0,.2,1), box-shadow .2s cubic-bezier(.4,0,.2,1);
}
.kfg-article__body .kfg-linkcard:hover {
  border-color: #2850DC;
  box-shadow: 0 2px 12px rgba(40,80,220,.12);
  text-decoration: none;
}
.kfg-article__body .kfg-linkcard::before {
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 10px;
  background: #2850DC;
  color: #fff;
  font-family: 'Material Symbols Outlined';
  font-size: 30px;
  font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}
.kfg-article__body .kfg-linkcard--video::before { content: 'play_arrow'; }
.kfg-article__body .kfg-linkcard--doc::before { content: 'description'; }
.kfg-article__body .kfg-linkcard__body { flex: 1; min-width: 0; }
.kfg-article__body .kfg-linkcard__title {
  display: block;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  color: #00143C;
}
.kfg-article__body .kfg-linkcard__desc {
  display: block;
  margin-top: 4px;
  font-size: 14px;
  line-height: 1.7;
  color: #667085;
}
.kfg-article__body .kfg-linkcard__action {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  background: #2850DC;
  border-radius: 6px;
  padding: 11px 20px;
  white-space: nowrap;
}
.kfg-article__body .kfg-linkcard:hover .kfg-linkcard__action { background: #2246C4; }
.kfg-article__body .kfg-linkcard__action .material-symbols-outlined { font-size: 16px; }

/* ---------- 4. チェックリスト ---------- */
.kfg-article__body ul.kfg-check {
  list-style: none !important;
  padding-left: 0 !important;
  margin: 16px 0 0;
}
.kfg-article__body ul.kfg-check > li {
  display: flex !important;
  align-items: flex-start;
  gap: 10px;
  margin-top: 8px;
  line-height: 1.85;
}
.kfg-article__body ul.kfg-check > li::before {
  flex: none;
  content: 'check_circle';
  font-family: 'Material Symbols Outlined';
  font-size: 20px;
  line-height: 1.5;
  color: #12805C;
  font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}
.kfg-article__body ul.kfg-check > li::marker { content: none; }

/* ---------- 記事：表組みの配置 ----------
   記事エディタが table に margin:auto（中央寄せ）を付けるため、左寄せに上書き */
.kfg-article__body table {
  margin-left: 0 !important;
  margin-right: auto !important;
}
/* 幅を内容に合わせて左寄せしたい表は class="kfg-table--auto" を付ける */
.kfg-article__body table.kfg-table--auto {
  width: auto !important;
  max-width: 100%;
}
/* 中央寄せに戻したい表は class="kfg-table--center" */
.kfg-article__body table.kfg-table--center {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ---------- 記事：表を囲む figure.wysiwyg-table の左寄せ ----------
   エディタは表を <figure class="wysiwyg-table"> で囲み、figure 側を中央寄せする。
   table だけ左寄せしても効かないため、figure を左寄せする。 */
.kfg-article__body figure.wysiwyg-table {
  margin-left: 0 !important;
  margin-right: auto !important;
  width: 100%;
  max-width: 100%;
  text-align: left;
}
/* 内容に合わせた幅で左寄せしたい場合 */
.kfg-article__body figure.wysiwyg-table.kfg-table--auto,
.kfg-article__body figure.wysiwyg-table:has(> table.kfg-table--auto) {
  width: auto !important;
}
/* 中央寄せに戻す場合 */
.kfg-article__body figure.wysiwyg-table.kfg-table--center,
.kfg-article__body figure.wysiwyg-table:has(> table.kfg-table--center) {
  margin-left: auto !important;
  margin-right: auto !important;
  width: auto !important;
}


/* ==========================================================
   2026-09-14 レビュー反映
   ========================================================== */

/* ---------- 0. 共通 ---------- */
/* ヘッダー：専用ロゴ（kickflow 使い方ガイド）1枚に */
.kfg-header__brand img { height: 26px; transform: none; }

/* フッター：文字色を明るく（#00143C 上でコントラスト比 4.5:1 以上） */
.kfg-footer__brand span { color: rgba(255,255,255,.82); }            /* 約 12:1 */
.kfg-footer__links a { color: rgba(255,255,255,.92); }               /* 約 15:1 */
.kfg-footer__links .material-symbols-outlined { color: rgba(255,255,255,.7); }
.kfg-footer__bottom { color: rgba(255,255,255,.72); border-top-color: rgba(255,255,255,.2); } /* 約 9:1 */

/* パンくず：リンク＝濃いグレー、現在地＝濃紺（はっきり別の色に） */
.kfg-breadcrumbs li,
.kfg-breadcrumbs li a { display: inline-flex; align-items: center; line-height: 1.5; }
.kfg-breadcrumbs li { color: #00143C; font-weight: 600; }             /* 現在地（リンクなし） */
.kfg-breadcrumbs li a { color: #4A5568; font-weight: 400; }           /* それ以外 */
.kfg-breadcrumbs li a:visited { color: #4A5568; }
.kfg-breadcrumbs li a:hover { color: #2850DC; }
.kfg-breadcrumbs li + li::before { display: inline-flex; align-items: center; line-height: 1; }

/* visited（訪問済み）の紫を全ナビゲーションで無効化 */
.kfg-card:visited,
.kfg-secbox__head:visited,
.kfg-arow:visited,
.kfg-artrow:visited,
.kfg-sidenav a:visited,
.kfg-tree a:visited,
.kfg-reco__list a:visited,
.kfg-footer a:visited,
.kfg-header a:visited { text-decoration: none; }
.kfg-card:visited .kfg-card__title,
.kfg-secbox__head:visited .kfg-secbox__title { color: #00143C; }
.kfg-card:visited .kfg-card__desc { color: #667085; }
.kfg-arow:visited,
.kfg-artrow:visited .kfg-artrow__title,
.kfg-reco__list a:visited { color: #3C64C8; }
.kfg-sidenav__item:visited { color: #33415C; }
.kfg-sidenav__item--parent:visited { color: #00143C; }
.kfg-sidenav__child:visited { color: #33415C; }
.kfg-sidenav__child.is-active:visited { color: #2850DC; }

/* [hidden] を display:flex より優先させる（「残りN件を表示」が効かなかった原因） */
.kfg-arow[hidden],
.kfg-artrow[hidden],
[hidden].kfg-expand { display: none !important; }

/* ---------- 1. TOP ---------- */
.kfg-hero { padding: 48px 20px; }                     /* 上下の余白をそろえる */
.kfg-hero__title { line-height: 1.6; max-width: 760px; margin: 0 auto; }
.kfg-hero__search { margin-top: 16px; }               /* リード文と検索の間 16px */
/* 検索窓：常時表示の送信ボタンを消し、クリア（×）は入力中の1つだけに */
.kfg-hero__search form button:not(.clear-button),
.kfg-hero__search form input[type="submit"],
.kfg-searchbar form button:not(.clear-button),
.kfg-searchbar form input[type="submit"],
.kfg-pagehead__search form button:not(.clear-button),
.kfg-pagehead__search form input[type="submit"] { display: none !important; }

/* ---------- 2. カテゴリ ---------- */
.kfg-seclist--2col { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 1000px) { .kfg-seclist--2col { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 700px)  { .kfg-seclist--2col { grid-template-columns: 1fr; } }
/* タイトル・アイコン・検索ボックスを縦中央で揃える */
.kfg-pagehead__row { align-items: center; }
.kfg-pagehead__search { align-self: center; }
/* セクション以下のアイコンは一律フォルダ（青）、サブセクション行はアイコンなし */
.kfg-secbox__head .material-symbols-outlined { color: #2850DC; }
.kfg-arow .material-symbols-outlined { color: #667085; }   /* 記事アイコン：disabled に見えない濃さ */
.kfg-arow--sub { padding-left: 22px; }

/* ---------- 3. セクション（親） ---------- */
.kfg-secbox__title { color: #00143C; }
.kfg-secbox__head:hover .kfg-secbox__title { color: #2850DC; }

/* ---------- 4. セクション（小）：構造の見直し ---------- */
/* 左ナビ：「← カテゴリ名」で上へ戻る導線＋親セクション配下の小セクションのみ */
.kfg-sidenav__up {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 12px; font-weight: 600; color: #4A5568; text-decoration: none;
  letter-spacing: 0;
}
.kfg-sidenav__up:hover { color: #2850DC; text-decoration: none; }
.kfg-sidenav__up .material-symbols-outlined { font-size: 15px; }
/* ページタイトルの上に親セクション名を小さく */
.kfg-pagehead__eyebrow {
  margin: 0 0 4px; font-size: 13px; font-weight: 600; color: #2850DC; letter-spacing: .02em;
}
/* セクションタイトルの文字色を黒から一段やわらかく */
.kfg-pagehead--slim .kfg-pagehead__title { color: #1F2A44; font-weight: 700; }


/* ---------- セクションページ：Figma案に合わせた配置（2026-09-14） ----------
   青い帯のヘッダーを廃止し、パンくず・タイトルを左ナビの右（本文カラム）に配置 */
.kfg-2col { padding-top: 32px; }
.kfg-breadcrumbs--inline { margin-bottom: 14px; }
.kfg-arts__head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.kfg-arts__title { margin: 0; font-size: 24px; font-weight: 700; line-height: 1.4; color: #1F2A44; }
.kfg-arts__head .kfg-arts__count { margin: 0; font-size: 13px; color: #667085; white-space: nowrap; }
.kfg-arts__desc { margin: -8px 0 20px; font-size: 14px; color: #4A5568; }
/* 左ナビ：カテゴリ名（小・グレー）→ 親セクション（太字）→ 小セクション（インデント） */
.kfg-sidenav { padding-top: 4px; }
.kfg-sidenav__cat { display: block; font-size: 12px; font-weight: 600; color: #98A2B3; text-decoration: none; letter-spacing: .04em; }
.kfg-sidenav__cat:hover { color: #2850DC; text-decoration: none; }
.kfg-sidenav__item--parent { font-size: 13px; color: #00143C; padding: 9px 12px 9px 0; }
.kfg-sidenav__children { margin-left: 0; padding-left: 12px; border-left: 2px solid #EBEBEB; }
.kfg-sidenav__up, .kfg-pagehead__eyebrow { display: none; }


/* ==========================================================
   2026-09-15 フッター文字色（確実に適用）／ヘッダーボタンの visited 無効化
   背景 #00143C に対する実測コントラスト比：
     #FFFFFF 18.7:1 / #E3E7F0 15.1:1 / #C5CBDA 11.0:1 / #A9B1C4 8.0:1
   ========================================================== */
.kfg-footer.kfg-footer .kfg-footer__brand span { color: #C5CBDA; }              /* 11.0:1 */
.kfg-footer.kfg-footer .kfg-footer__links a,
.kfg-footer.kfg-footer .kfg-footer__links a:link,
.kfg-footer.kfg-footer .kfg-footer__links a:visited { color: #E3E7F0; text-decoration: none; }  /* 15.1:1 */
.kfg-footer.kfg-footer .kfg-footer__links a:hover,
.kfg-footer.kfg-footer .kfg-footer__links a:focus { color: #FFFFFF; text-decoration: underline; }
.kfg-footer.kfg-footer .kfg-footer__links .material-symbols-outlined { color: #A9B1C4; }       /* 8.0:1 */
.kfg-footer.kfg-footer .kfg-footer__bottom { color: #A9B1C4; border-top-color: rgba(255,255,255,.22); } /* 8.0:1 */

/* ヘッダー「kickflowにログイン」：visited でも白文字・青背景のまま */
.kfg-header .kfg-header__login,
.kfg-header .kfg-header__login:link,
.kfg-header .kfg-header__login:visited { color: #FFFFFF; background: #2850DC; text-decoration: none; }
.kfg-header .kfg-header__login:hover,
.kfg-header .kfg-header__login:focus { color: #FFFFFF; background: #2246C4; text-decoration: none; }
.kfg-header .kfg-header__login .material-symbols-outlined { color: #FFFFFF; }
/* 「Zendeskにサインイン」も同様 */
.kfg-header .kfg-header__signin,
.kfg-header .kfg-header__signin:visited { color: #555555; text-decoration: none; }
.kfg-header .kfg-header__signin:hover { color: #2850DC; text-decoration: underline; }


/* ---------- フッターのロゴ：濃紺の上で白1色にする ----------
   青ロゴ（logo.svg）をそのまま使い、フィルターで白に反転。
   別途「白ロゴ」を用意できたら、このブロックを削除して画像を差し替えてもOK */
.kfg-footer.kfg-footer .kfg-footer__brand img {
  height: 22px;
  filter: brightness(0) invert(1);
  opacity: .92;               /* 真っ白より少し落とし、リンク色（#E3E7F0）と揃える */
}


/* ---------- 検索の「×」が2つ出る問題 ----------
   右側の薄い × はブラウザ標準（input[type=search] の消去ボタン）。
   Zendesk の clear-button だけ残し、ブラウザ標準のものを消す */
.kfg-hero__search input[type="search"]::-webkit-search-cancel-button,
.kfg-hero__search input[type="search"]::-webkit-search-decoration,
.kfg-searchbar input[type="search"]::-webkit-search-cancel-button,
.kfg-searchbar input[type="search"]::-webkit-search-decoration,
.kfg-pagehead__search input[type="search"]::-webkit-search-cancel-button,
.kfg-pagehead__search input[type="search"]::-webkit-search-decoration,
.search input[type="search"]::-webkit-search-cancel-button,
.search input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}
.kfg-hero__search input[type="search"],
.kfg-searchbar input[type="search"],
.kfg-pagehead__search input[type="search"],
.search input[type="search"] {
  -webkit-appearance: none;
  appearance: none;
}
.kfg-hero__search input[type="search"]::-ms-clear,
.kfg-searchbar input[type="search"]::-ms-clear,
.kfg-pagehead__search input[type="search"]::-ms-clear { display: none; }


/* ---------- 検索結果ページ：クリア「×」が入力欄の外に出る問題 ----------
   .kfg-searchbar-wrap（全幅）を基準に絶対配置されていたため右端に飛んでいた。
   入力欄と同じ幅の form を基準にする */
.kfg-searchbar-wrap { position: static; }
.kfg-searchbar { position: relative; }
.kfg-searchbar form,
.kfg-searchbar .search { position: relative; width: 100%; max-width: 720px; }
.kfg-searchbar form input[type="search"] { width: 100%; padding-right: 44px; }
.kfg-searchbar .clear-button,
.kfg-searchbar form button.clear-button {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  left: auto;
  margin: 0;
  padding: 6px;
  border: none;
  background: none;
  color: #667085;
  font-size: 13px;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}
.kfg-searchbar .clear-button:hover { color: #2850DC; }
/* ブラウザ標準の消去ボタンは非表示（TOPと同じ） */
.kfg-searchbar input[type="search"]::-webkit-search-cancel-button,
.kfg-searchbar input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; appearance: none; display: none; }


/* ---------- TOP ヒーロー：タイトル＋リード文の2階層 ----------
   home_page.hbs の h1 を分割（h1「kickflowでできること」/ p.kfg-hero__lead） */
.kfg-hero { text-align: center; }
.kfg-hero .kfg-hero__title { font-size: 28px; line-height: 1.5; margin: 0 auto; max-width: none; text-align: center; }
.kfg-hero .kfg-hero__lead  { margin: 8px auto 0; font-size: 15px; line-height: 1.8; color: #4A5568; text-align: center; }
.kfg-hero .kfg-hero__search { margin: 16px auto 0; }


/* ==========================================================
   2026-09-15 デザインレビュー反映（第2回）
   ========================================================== */

/* ---------- 共通：ロゴ高さ 20px ---------- */
.kfg-header .kfg-header__brand img { height: 20px; }
.kfg-footer.kfg-footer .kfg-footer__brand img { height: 20px; filter: none; opacity: 1; }  /* 白ロゴ画像に差し替え */

/* ---------- 共通：ヘッダー／フッターのリンク 14px ---------- */
.kfg-header__nav { font-size: 14px; }
.kfg-footer__links { font-size: 14px; }
.kfg-footer.kfg-footer .kfg-footer__brand span { font-size: 13px; }

/* ---------- 共通：記事タイトルリンクをブランドブルーに統一 ---------- */
.kfg-arow, .kfg-arow:visited,
.kfg-artrow__title, .kfg-artrow:visited .kfg-artrow__title,
.kfg-reco__list a, .kfg-reco__list a:visited,
.kfg-result__title, .kfg-result__title:visited,
.kfg-article__body a { color: #2850DC; }

/* ---------- 共通：ラベル（kickflow 定義色） ---------- */
.kfg-label {
  display: inline-flex; align-items: center; flex: none;
  font-size: 11px; font-weight: 600; line-height: 1.4;
  border-radius: 4px; padding: 3px 8px; white-space: nowrap; text-decoration: none;
}
.kfg-label--slate  { background: #EBF1FA; color: #555E82; }
.kfg-label--blue   { background: #EBEFFF; color: #2850DC; }
.kfg-label--azure  { background: #DEF1FF; color: #0062B0; }
.kfg-label--teal   { background: #D4FAF8; color: #006A7A; }
.kfg-label--green  { background: #D9FAE1; color: #0B7023; }
.kfg-label--pear   { background: #EAFAB9; color: #4E6900; }
.kfg-label--yellow { background: #FFF6BD; color: #6E5F02; }
.kfg-label--orange { background: #FFEFCF; color: #A34100; }
.kfg-label--red    { background: #FFEAE8; color: #BD1408; }
.kfg-label--pink   { background: #FFEBF3; color: #BA1355; }
.kfg-label--orchid { background: #FCEBFF; color: #9F1FB2; }
.kfg-label--violet { background: #F2EDFF; color: #683FD9; }
/* 旧バッジ名は新定義に寄せる */
.kfg-badge--startup { background: #DEF1FF; color: #0062B0; }   /* azure */
.kfg-badge--katsuyo { background: #D9FAE1; color: #0B7023; }   /* green */

/* ---------- 共通：hover 下線はテキストのみ（アイコンには付けない） ---------- */
a:hover .material-symbols-outlined,
.kfg-footer__links a:hover .material-symbols-outlined,
.kfg-header__login:hover .material-symbols-outlined,
.kfg-card:hover .material-symbols-outlined,
.kfg-arow:hover .material-symbols-outlined,
.kfg-reco__row:hover .material-symbols-outlined,
.kfg-linkcard:hover .material-symbols-outlined { text-decoration: none !important; }
/* アイコンを含むリンクは a 自体の下線を切り、テキスト側 span に付ける */
.kfg-footer__links a, .kfg-arow, .kfg-reco__row, .kfg-artrow, .kfg-header__login { text-decoration: none; }
.kfg-footer__links a:hover, .kfg-arow:hover, .kfg-reco__row:hover, .kfg-artrow:hover { text-decoration: none; }
.kfg-footer__links a:hover > span:not(.material-symbols-outlined),
.kfg-arow:hover > span:not(.material-symbols-outlined),
.kfg-artrow:hover .kfg-artrow__title { text-decoration: underline; }
.kfg-footer__links a { display: inline-flex; gap: 4px; }
.kfg-footer__links a .material-symbols-outlined { text-decoration: none; }

/* ---------- TOP：キャッチコピー1行 ---------- */
.kfg-hero .kfg-hero__title { font-size: 24px; line-height: 1.5; white-space: nowrap; }
.kfg-hero .kfg-hero__lead { display: none; }

/* ---------- TOP：おすすめ記事（タイトル → ラベル、行全体リンク） ---------- */
.kfg-reco__list li { padding: 0; }
.kfg-reco__row {
  display: flex; align-items: center; gap: 10px; width: 100%;
  padding: 15px 20px; text-decoration: none; color: #2850DC; font-size: 14px;
}
.kfg-reco__row:hover { background: #FBFCFE; }
.kfg-reco__row .material-symbols-outlined { font-size: 18px; color: #667085; flex: none; }
.kfg-reco__title { min-width: 0; }
.kfg-reco__row .kfg-label { margin-left: 8px; }

/* ---------- セクション（小）：記事アイコンの色 ---------- */
.kfg-arow .material-symbols-outlined,
.kfg-artrow .material-symbols-outlined,
.kfg-related .material-symbols-outlined { color: #667085; }

/* ---------- 検索結果：パンくずをリンク化・濃い色 ---------- */
.kfg-result__path { color: #4A5568; }                                     /* 白背景で 7.5:1 */
.kfg-result__path a, .kfg-result__path a:visited { color: #4A5568; text-decoration: none; }
.kfg-result__path a:hover { color: #2850DC; text-decoration: underline; }
.kfg-result__path .material-symbols-outlined { color: #98A2B3; }

/* ---------- 記事：左ナビ廃止・本文を広げる ---------- */
.kfg-3col--wide { gap: 48px; }
.kfg-3col--wide .kfg-article { flex: 1; min-width: 0; max-width: 820px; }
.kfg-tree { display: none; }

/* 記事：プランラベル（タイトル下） */
.kfg-article__meta { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.kfg-article__plans { display: inline-flex; gap: 6px; }
.kfg-article__labels { display: none; }

/* 記事：h2 は背景なし・左罫線のみ・上下 padding 4px */
.kfg-article .kfg-article__body h2 {
  background: none;
  border-radius: 0;
  border-left: 4px solid #2850DC;
  padding: 4px 0 4px 14px;
}

/* 記事：目次の二重線を解消（外枠を外し、縦線のみ） */
.kfg-toc__inner { border: none; padding: 0 0 0 4px; }

/* 記事：関連記事 */
.kfg-related { margin-top: 40px; }


/* ---------- 記事：関連記事（{{related_articles}} ヘルパー出力のスタイル） ----------
   出力は <ul class="related-articles"> ... <li><a>タイトル</a></li> */
.kfg-related__list ul.related-articles,
.kfg-related__list ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid #EBEBEB; }
.kfg-related__list li { margin: 0; padding: 0; border-bottom: 1px solid #EBEBEB; }
.kfg-related__list li a {
  display: flex; align-items: center; gap: 10px;
  padding: 13px 2px; font-size: 13.5px; color: #2850DC; text-decoration: none;
}
.kfg-related__list li a::before {
  content: 'description'; font-family: 'Material Symbols Outlined';
  font-size: 18px; color: #667085; flex: none;
}
.kfg-related__list li a:hover { text-decoration: underline; }
.kfg-related__list li a:hover::before { text-decoration: none; }
/* 関連記事が0件のとき見出しも隠す（JSで .is-empty を付与） */
.kfg-related.is-empty { display: none; }


/* ==========================================================
   2026-09-16 検索結果：絞り込み（検索対象）復活／ページネーション整形
   ========================================================== */
.kfg-search-page .kfg-2col { max-width: 1120px; margin: 0 auto; padding: 40px 20px 64px; display: flex; gap: 48px; align-items: flex-start; }
.kfg-search-page .kfg-facets { flex: none; width: 220px; }
.kfg-search-page .kfg-facets__heading { font-size: 11.5px; font-weight: 700; color: #98A2B3; letter-spacing: .06em; margin: 0 0 10px; }
.kfg-search-page .kfg-facets__list + .kfg-facets__heading { margin-top: 24px; }
.kfg-search-page .kfg-facets__item,
.kfg-search-page .kfg-facets__item:visited { color: #33415C; }
.kfg-search-page .kfg-facets__item.is-active,
.kfg-search-page .kfg-facets__item.is-active:visited { color: #2850DC; }
.kfg-search-page .kfg-results { flex: 1; min-width: 0; max-width: 820px; }
.kfg-search-page .kfg-2col--single { display: block; }
.kfg-search-page .kfg-2col--single .kfg-results { max-width: 820px; margin: 0; }

/* ページネーション（{{pagination}} ヘルパー出力 <ul class="pagination">） */
.kfg-pagination { margin-top: 32px; display: flex; justify-content: center; }
.kfg-pagination .pagination { display: flex; align-items: center; gap: 6px; list-style: none; margin: 0; padding: 0; }
.kfg-pagination .pagination li { margin: 0; padding: 0; display: block; }
.kfg-pagination .pagination a,
.kfg-pagination .pagination span,
.kfg-pagination .pagination-current {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 36px; height: 36px; padding: 0 12px;
  font-size: 13px; line-height: 1; color: #33415C;
  background: #fff; border: 1px solid #D0D5DD; border-radius: 4px; text-decoration: none;
}
.kfg-pagination .pagination a:hover { border-color: #2850DC; color: #2850DC; text-decoration: none; }
.kfg-pagination .pagination .pagination-current,
.kfg-pagination .pagination li.pagination-current span { color: #fff; background: #2850DC; border-color: #2850DC; font-weight: 600; }
.kfg-pagination .pagination .pagination-first,
.kfg-pagination .pagination .pagination-last,
.kfg-pagination .pagination .pagination-first-item,
.kfg-pagination .pagination .pagination-last-item { display: none; }   /* « » は隠して 前へ/次へ のみ */
.kfg-pagination .pagination-prev-text,
.kfg-pagination .pagination-next-text { display: inline; }


/* ---------- 記事：プランラベル・関連記事の修正（2026-09-16） ---------- */
.kfg-article__plans[hidden] { display: none; }
.kfg-article__plans { display: inline-flex; gap: 6px; align-items: center; }
/* {{related_articles}} ヘルパーが出す見出し（h2/h3.related-articles-title など）を本文見出しと同じ 15px 太字に */
.kfg-related__list h2, .kfg-related__list h3,
.kfg-related__list .related-articles-title {
  margin: 0 0 12px; padding: 0; border: none; background: none;
  font-size: 15px; font-weight: 700; color: #00143C; line-height: 1.5;
}


/* ==========================================================
   全体ルール：hover の下線はテキストのみ。アイコンの下には出さない（2026-09-16）
   仕組み：a 自体の下線を切り、テキスト側の要素にだけ下線を付ける。
   Material Symbols は inline-block 化して下線の対象から外す。
   ========================================================== */
a .material-symbols-outlined,
a:hover .material-symbols-outlined,
button .material-symbols-outlined {
  display: inline-block;
  text-decoration: none !important;
}
/* ::before で描くアイコン（関連記事・リンクカード・チェックリスト等）も同様 */
a::before, a:hover::before,
a::after,  a:hover::after { text-decoration: none !important; display: inline-block; }

/* 対象リンク：a の下線を切る */
.kfg-card, .kfg-secbox__head, .kfg-arow, .kfg-artrow, .kfg-reco__row,
.kfg-footer__links a, .kfg-header__login, .kfg-header__signin,
.kfg-sidenav a, .kfg-facets__item, .kfg-result__path a,
.kfg-related__list li a, .kfg-linkcard, .kfg-toc a, .kfg-breadcrumbs a,
.kfg-pagination a {
  text-decoration: none !important;
}
/* hover 時はテキスト部分にだけ下線 */
.kfg-secbox__head:hover .kfg-secbox__title,
.kfg-arow:hover > span:not(.material-symbols-outlined),
.kfg-artrow:hover .kfg-artrow__title,
.kfg-footer__links a:hover > span:not(.material-symbols-outlined),
.kfg-header__signin:hover,
.kfg-facets__item:hover > span:first-child,
.kfg-result__path a:hover,
.kfg-related__list li a:hover > span,
.kfg-linkcard:hover .kfg-linkcard__title,
.kfg-toc a:hover,
.kfg-breadcrumbs a:hover,
.kfg-sidenav a:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}
/* ボタン類は下線なし */
.kfg-header__login:hover, .kfg-linkcard__action, .kfg-pagination a:hover, .kfg-copybtn:hover { text-decoration: none !important; }


/* ---------- TOP：カード・おすすめ記事は行全体がリンクのため hover 下線なし（2026-09-17） ---------- */
.kfg-card:hover, .kfg-card:hover *, 
.kfg-reco__row:hover, .kfg-reco__row:hover * { text-decoration: none !important; }


/* 旧記法（kfg-msg kfg-msg--xxx）の後方互換 */
.kfg-article__body .kfg-msg { display: flex; gap: 12px; }
.kfg-article__body .kfg-msg__title { display: none; }


/* ---------- 記事：関連記事の余白・サイズ調整（2026-09-17） ---------- */
.kfg-related { margin-top: 56px; }
.kfg-related__list h2, .kfg-related__list h3,
.kfg-related__list .related-articles-title {
  margin: 0 0 8px; padding: 0; border: none; background: none;
  font-size: 17px; font-weight: 700; color: #00143C; line-height: 1.5;
}
.kfg-related__list ul.related-articles,
.kfg-related__list ul { border-top: 1px solid #EBEBEB; }
.kfg-related__list li a { padding: 15px 2px; font-size: 15px; line-height: 1.6; }
.kfg-related__list li a::before { font-size: 20px; }

/* 関連記事：見出し上の線を確実に消す（Copenhagen 既定の .article-relatives 含む） */
.kfg-related, .kfg-related__list, .kfg-related .article-relatives { border-top: none; }

/* ---------- 検索結果：AIクイック回答（{{generative_answers}}） ---------- */
.kfg-generative:empty { display: none; }
.kfg-generative { margin: 0 0 24px; }
.kfg-generative > * {
  background: #F5F7FD;
  border: 1px solid #DCE3F7;
  border-radius: 8px;
  padding: 14px 18px;
  font-size: 14px;
  line-height: 1.75;
  color: #33415C;
}
.kfg-generative h1, .kfg-generative h2, .kfg-generative h3,
.kfg-generative [class*="title"] { font-size: 14px; font-weight: 700; margin: 0 0 6px; }
.kfg-generative p { margin: 0 0 6px; font-size: 14px; }
.kfg-generative ul, .kfg-generative ol { margin: 4px 0 6px; padding-left: 20px; }
.kfg-generative svg, .kfg-generative img { max-height: 18px; width: auto; }
.kfg-generative a { color: #2850DC; }

/* ---------- パンくず帯＋検索（記事／セクション共通 2026-10-02） ---------- */
.kfg-crumbbar { padding: 12px 0; }
.kfg-crumbbar__inner {
  max-width: 1120px; margin: 0 auto; padding: 0 20px;
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
}
.kfg-crumbbar__inner .kfg-breadcrumbs { max-width: none; margin: 0; padding: 0; min-width: 0; flex: 1 1 auto; }
.kfg-crumbbar__search { flex: none; width: 280px; margin-left: auto; }
.kfg-crumbbar__search input[type="search"] { padding-top: 9px; padding-bottom: 9px; }
@media (max-width: 560px) {
  .kfg-crumbbar__inner { flex-wrap: wrap; gap: 12px; }
  .kfg-crumbbar__search { width: 100%; }
}

/* ---------- パンくず帯：パンくずと検索を1行・縦中央にそろえる（2026-10-02） ---------- */
.kfg-crumbbar .kfg-crumbbar__inner { display: flex; flex-wrap: nowrap; align-items: center; }
.kfg-crumbbar .kfg-breadcrumbs ol,
.kfg-crumbbar .kfg-breadcrumbs .breadcrumbs { margin: 0; padding: 0; }
.kfg-crumbbar .kfg-crumbbar__search {
  flex: 0 1 280px; width: auto; min-width: 200px; margin: 0 0 0 auto; align-self: center;
}
.kfg-crumbbar .kfg-crumbbar__search .search,
.kfg-crumbbar .kfg-crumbbar__search form { margin: 0; }
.kfg-crumbbar .kfg-crumbbar__search input[type="search"] { height: 40px; padding-top: 0; padding-bottom: 0; }

/* ---------- カテゴリ：hover の下線はテキストのみ・アイコンには付けない（再適用） ---------- */
.kfg-seclist .kfg-secbox__head,
.kfg-seclist .kfg-secbox__head:hover,
.kfg-seclist .kfg-arow,
.kfg-seclist .kfg-arow:hover { text-decoration: none !important; }
.kfg-seclist a .material-symbols-outlined,
.kfg-seclist a:hover .material-symbols-outlined,
.kfg-seclist button .material-symbols-outlined {
  display: inline-block; text-decoration: none !important;
}
.kfg-seclist .kfg-secbox__head:hover .kfg-secbox__title,
.kfg-seclist .kfg-arow:hover > span:not(.material-symbols-outlined) {
  text-decoration: underline; text-underline-offset: 2px;
}
.kfg-seclist .kfg-expand:hover { text-decoration: none; }

/* ---------- 検索結果：左カラム（カテゴリ絞り込み）と結果を左寄せ（2026-10-02） ---------- */
.kfg-search-page .kfg-2col { justify-content: flex-start; }
.kfg-search-page .kfg-facets__item {
  display: flex; justify-content: space-between; align-items: center; gap: 8px;
  padding: 7px 10px; border-radius: 6px; font-size: 13.5px; text-decoration: none;
}
.kfg-search-page .kfg-facets__item:hover { background: #F5F7FD; }
.kfg-search-page .kfg-facets__item.is-active { background: #EEF3FC; font-weight: 600; }
.kfg-search-page .kfg-facets__count { font-size: 12px; color: #98A2B3; }


/* ==========================================================
   モバイル対応（〜640px）2026-10-16
   方針：ヘッダーはハンバーガー、カードは1列、サイド要素は本文の上に折りたたみ
   ========================================================== */

/* 折りたたみトグル：PCでは普通の見出しとして振る舞う */
.kfg-collapse-toggle {
  appearance: none; -webkit-appearance: none; background: none; border: 0; padding: 0;
  font: inherit; color: inherit; text-align: left; cursor: default; pointer-events: none;
  display: flex; align-items: center; justify-content: space-between; width: 100%;
}
.kfg-collapse-toggle .material-symbols-outlined { display: none; font-size: 20px; color: #667085; transition: transform .2s; }
.kfg-collapse-toggle[aria-expanded="true"] .material-symbols-outlined { transform: rotate(180deg); }
.kfg-toc__heading.kfg-collapse-toggle { font-size: 11.5px; font-weight: 700; color: #98A2B3; letter-spacing: .06em; margin-bottom: 10px; }
.kfg-facets__toggle { display: none; }
.kfg-header__menu { display: none; }

@media (max-width: 640px) {
  /* ---- 共通 ---- */
  .kfg-container, .kfg-crumbbar__inner, .kfg-2col, .kfg-3col, .kfg-searchbar, .kfg-seclist, .kfg-reco { padding-left: 16px; padding-right: 16px; }
  .kfg-pagehead > * { padding-left: 16px; padding-right: 16px; }
  .kfg-2col, .kfg-3col { flex-direction: column; gap: 24px; }

  /* ---- ヘッダー：ハンバーガー ---- */
  .kfg-header { position: relative; }
  .kfg-header__inner { height: 56px; }
  .kfg-header__brand img { height: 20px; }
  .kfg-header__menu {
    display: inline-flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; margin-right: -10px; background: none; border: 0; cursor: pointer;
    color: #00143C; border-radius: 8px;
  }
  .kfg-header__menu .material-symbols-outlined { font-size: 26px; }
  .kfg-header__nav {
    display: none; position: absolute; left: 0; right: 0; top: 100%; z-index: 50;
    flex-direction: column; align-items: stretch; gap: 0;
    background: #fff; border-bottom: 1px solid #EBEBEB; box-shadow: 0 8px 24px rgba(0,20,60,.08);
    padding: 8px 16px 16px;
  }
  .kfg-header__nav.is-open { display: flex; }
  .kfg-header__signin { padding: 14px 4px; border-bottom: 1px solid #EBEBEB; font-size: 15px; }
  .kfg-header__login { justify-content: center; margin-top: 12px; padding: 13px 16px; font-size: 15px; }

  /* ---- TOP ---- */
  .kfg-hero { padding: 28px 16px 32px; }
  .kfg-hero .kfg-hero__title { font-size: 20px; line-height: 1.55; }
  .kfg-hero .kfg-hero__lead { font-size: 14px; }
  .kfg-cats { padding: 28px 0 0; }
  .kfg-cats__grid { grid-template-columns: 1fr; gap: 12px; padding: 0 16px; }
  .kfg-card { padding: 16px; }
  .kfg-reco { padding-top: 28px; padding-bottom: 28px; }
  .kfg-reco__list { grid-template-columns: 1fr; }

  /* ---- パンくず帯：検索は帯の下に ---- */
  .kfg-crumbbar__inner { flex-wrap: wrap; gap: 10px; }
  .kfg-crumbbar__inner .kfg-breadcrumbs { flex: 1 1 100%; overflow-x: auto; white-space: nowrap; -webkit-overflow-scrolling: touch; }
  .kfg-crumbbar__search { flex: 1 1 100%; width: auto; margin-left: 0; }

  /* ---- カテゴリページ ---- */
  .kfg-pagehead { padding: 20px 0 24px; }
  .kfg-pagehead__row { flex-wrap: wrap; gap: 12px; }
  .kfg-pagehead__icon { width: 44px; height: 44px; }
  .kfg-pagehead__icon .material-symbols-outlined { font-size: 24px; }
  .kfg-pagehead__title { font-size: 22px; }
  .kfg-pagehead__search { flex: 1 1 100%; width: auto; margin-left: 0; }
  .kfg-seclist { padding-top: 24px; padding-bottom: 24px; gap: 20px; }
  .kfg-secbox__head, .kfg-arow { padding-left: 16px; padding-right: 16px; }

  /* ---- セクションページ：左ナビは本文の下へ ---- */
  .kfg-sidenav { width: 100%; order: 2; padding-top: 20px; border-top: 1px solid #EBEBEB; }
  .kfg-arts { order: 1; width: 100%; }
  .kfg-arts__title { font-size: 22px; }
  .kfg-artrow { padding: 14px 16px; flex-wrap: wrap; }
  .kfg-artrow__labels { margin-left: 30px; flex-basis: 100%; }

  /* ---- 記事ページ：目次は本文の上に折りたたみ ---- */
  .kfg-article__title { font-size: 24px; }
  .kfg-toc { width: 100%; position: static; order: -1; }
  .kfg-toc__inner { border: 1px solid #EBEBEB; border-radius: 8px; padding: 4px 14px; max-height: none; }
  .kfg-collapse-toggle { pointer-events: auto; cursor: pointer; }
  .kfg-collapse-toggle .material-symbols-outlined { display: inline-block; }
  .kfg-toc__heading.kfg-collapse-toggle { margin: 0; padding: 12px 0; font-size: 13px; color: #00143C; letter-spacing: 0; }
  .kfg-toc__list { display: none; padding-bottom: 12px; }
  .kfg-collapse-toggle[aria-expanded="true"] + .kfg-toc__list { display: flex; }
  .kfg-article__body { font-size: 15px; }
  .kfg-article__body pre { margin-left: -16px; margin-right: -16px; border-radius: 0; }
  .kfg-article__body table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .kfg-article__body .note, .kfg-article__body .caution, .kfg-article__body .warning, .kfg-article__body .danger,
  .kfg-article__body .tip, .kfg-article__body .important, .kfg-article__body .notice { padding: 14px 14px 14px 46px; }
  .kfg-article__body .note::before, .kfg-article__body .caution::before, .kfg-article__body .warning::before, .kfg-article__body .danger::before,
  .kfg-article__body .tip::before, .kfg-article__body .important::before, .kfg-article__body .notice::before { left: 14px; top: 14px; }

  /* ---- 検索結果：絞り込みは結果の上に折りたたみ ---- */
  .kfg-searchbar-wrap { padding: 20px 0; }
  .kfg-facets { width: 100%; border: 1px solid #EBEBEB; border-radius: 8px; padding: 0 14px; }
  .kfg-facets__toggle { display: flex; padding: 12px 0; font-size: 13px; font-weight: 700; color: #00143C; }
  .kfg-facets__body { display: none; padding-bottom: 12px; }
  .kfg-facets__toggle[aria-expanded="true"] + .kfg-facets__body { display: block; }
  .kfg-facets__heading { margin-top: 8px; }
  .kfg-search-page .kfg-2col--single .kfg-results { max-width: none; }

  /* ---- フッター ---- */
  .kfg-footer__top { flex-direction: column; gap: 24px; }
  .kfg-footer__links { flex-direction: column; gap: 14px; }
}


/* ---------- モバイル：幅広コンテンツによる横はみ出し対策（2026-10-19） ---------- */
@media (max-width: 640px) {
  html, body { overflow-x: hidden; }
  .kfg-page, .kfg-home, .kfg-search-page { overflow-x: hidden; }
  .kfg-article__body { overflow-wrap: anywhere; min-width: 0; }
  /* 表：囲み（kfg-box 等）の中にあっても横スクロールに */
  .kfg-article__body table { display: block; width: 100%; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .kfg-article__body table th, .kfg-article__body table td { white-space: nowrap; }
  /* 画像・動画・iframe：幅に収める */
  .kfg-article__body img, .kfg-article__body video, .kfg-article__body iframe { max-width: 100%; height: auto; }
  /* 囲みブロック自体がはみ出す場合に内側でスクロール */
  .kfg-article__body .kfg-box, .kfg-article__body .kfg-box--orange,
  .kfg-article__body .note, .kfg-article__body .caution, .kfg-article__body .warning, .kfg-article__body .danger,
  .kfg-article__body .tip, .kfg-article__body .important, .kfg-article__body .notice { max-width: 100%; overflow-x: auto; }
  /* 記事タイトル：長い単語でも折り返す */
  .kfg-article__title { overflow-wrap: anywhere; }
}


/* ---------- モバイル：記事本文内の全要素を画面幅に収める（2026-10-19 追補） ---------- */
@media (max-width: 640px) {
  /* 本文コンテナ自体の幅を固定（子が広くても親を押し広げない） */
  .kfg-article__layout, .kfg-article__main, .kfg-article { min-width: 0; max-width: 100%; }
  .kfg-article__body { width: 100%; max-width: 100%; }
  /* 画像：width 属性や style="width:800px" が付いていても上書き */
  .kfg-article__body img,
  .kfg-article__body img[width], .kfg-article__body img[style] { max-width: 100% !important; width: auto !important; height: auto !important; }
  .kfg-article__body figure, .kfg-article__body p, .kfg-article__body div { max-width: 100%; min-width: 0; }
  /* 囲み（kfg-box 等）の中の画像も同様 */
  .kfg-article__body .kfg-box img, .kfg-article__body .kfg-box--orange img { max-width: 100% !important; }
  /* コードブロック：長い1行は横スクロール、ブロック自体は画面幅まで */
  .kfg-article__body pre { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; white-space: pre; }
  .kfg-article__body pre code { white-space: pre; }
  /* 動画・PDFリンクカード、iframe */
  .kfg-article__body iframe, .kfg-article__body video, .kfg-article__body embed, .kfg-article__body object { max-width: 100%; }
  /* Zendesk が付ける width/height 固定の要素 */
  .kfg-article__body [style*="width"] { max-width: 100% !important; }
}


/* ---------- モバイル：記事レイアウト幅を強制（2026-10-19 追補2） ---------- */
@media (max-width: 640px) {
  /* 2カラム（本文＋目次）は縦積みで、各カラムは画面幅ぴったりに */
  .kfg-page .kfg-2col,
  .kfg-page .kfg-3col,
  .kfg-page .kfg-3col--wide { display: flex !important; flex-direction: column !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important; box-sizing: border-box; }
  .kfg-page .kfg-2col > *,
  .kfg-page .kfg-3col > * { width: 100% !important; max-width: 100% !important; min-width: 0 !important; flex: none !important; }
  /* 目次：1080px以下で非表示にしていた指定を解除し、本文の上に折りたたみ表示 */
  .kfg-toc:not([hidden]) { display: block !important; }
  .kfg-article__main, .kfg-article, .kfg-article__body { width: 100% !important; max-width: 100% !important; min-width: 0 !important; }
  .kfg-toc { width: 100% !important; max-width: 100% !important; position: static !important; }
  /* はみ出す子要素はコンテナ内で切る（横スクロールは pre/table 内だけ） */
  .kfg-article__body { overflow-x: hidden; }
  .kfg-article__body > * { max-width: 100%; }
}
