@media screen {
  h3 .button-inline {
    display: inline-flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }

  h3 .button-inline .material-icons {
    font-size: 24px;
  }

  .form-radio.with-description label,
  .form-checkbox.with-description label {
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }
}

@media screen and (max-width: 767.6px) {
  .side-panel .list-group .actions .toolbar .button-group {
    flex-direction: row;
  }

  .side-panel .list-group .actions .toolbar .button-group .button-icon {
    margin: 0 5px 0 0 !important;
  }
}

@media screen {
  .side-panel .list-group .content h4 {
    padding-left: 0 !important;
  }
}

@media screen {

  body .side-panel>.button-icon:first-of-type,
  body .side-panel .button-icon.open-panel {
    left: -54px;
  }
}

@media screen {
  .side-panel h4+.label {
    margin-top: 15px;
  }
}

@media screen {
  .layout-group-sub .form-group {
    display: block;
  }
}

@media screen and (min-width: 991px) {

  #valj-produkt .row,
  #ange-parametrar .row,
  #andamalsprovning .row {
    display: flex;
    flex-wrap: wrap;
  }

  #valj-produkt .row>.col-xs-12.col-md-6,
  #valj-produkt .row>.col-xs-12,
  #ange-parametrar .row>.col-xs-12.col-md-6,
  #ange-parametrar .row>.col-xs-12,
  #andamalsprovning .row>.col-xs-12.col-md-6,
  #andamalsprovning .row>.col-xs-12 {
    display: flex;
    flex-direction: column;
  }

  #valj-produkt .row>.col-xs-12.col-md-6:nth-child(odd) .layout-group-sub,
  #valj-produkt .row>.col-xs-12:nth-child(odd) .layout-group-sub,
  #ange-parametrar .row>.col-xs-12.col-md-6:nth-child(odd) .layout-group-sub,
  #ange-parametrar .row>.col-xs-12:nth-child(odd) .layout-group-sub,
  #andamalsprovning .row>.col-xs-12.col-md-6:nth-child(odd) .layout-group-sub,
  #andamalsprovning .row>.col-xs-12:nth-child(odd) .layout-group-sub {
    height: 100%;
    margin-right: -6px;
  }

  #valj-produkt .row>.col-xs-12.col-md-6:nth-child(even) .layout-group-sub,
  #valj-produkt .row>.col-xs-12:nth-child(even) .layout-group-sub,
  #ange-parametrar .row>.col-xs-12.col-md-6:nth-child(even) .layout-group-sub,
  #ange-parametrar .row>.col-xs-12:nth-child(even) .layout-group-sub,
  #andamalsprovning .row>.col-xs-12.col-md-6:nth-child(even) .layout-group-sub,
  #andamalsprovning .row>.col-xs-12:nth-child(even) .layout-group-sub {
    height: 100%;
    margin-left: -10px;
  }
}

@media screen and (max-width: 768px) {
  .toolbar.mobile-toolbar .button-top {
    padding: 2px 12px;
    max-width: 50px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }

  .toolbar.mobile-toolbar .button-top .material-icons {
    margin: -2px 0 0 0;
    align-self: center;
  }

  .toolbar.mobile-toolbar .button-group:last-child:not(:first-child)>*:last-child>*:nth-child(1) {
    order: unset;
  }
}

@media screen {
  #login .layout-group-sub .toolbar:last-of-type {
    padding-top: 4px !important;
  }
}

@media screen and (max-width: 768px) {
  .step-visualization {
    display: none;
  }
}

@media screen and (min-width: 992px) {
  #geografiskt-urval .md-equal-heights .col-md-8 .map-container {
    height: 100%;
  }

  #geografiskt-urval .md-equal-heights .col-md-8 .map-container .map-panel:not(.fullscreen) {
    height: calc(100% - 15px);
  }
}

@media screen {
  #geografiskt-urval .map-panel:not(.fullscreen) {
    position: relative;
    border-radius: 15px;
  }
}

@media screen {
  #valj-produkt figure {
    width: calc(100% + 40px);
    max-height: 200px;
    display: flex;
    overflow: hidden;
    flex-flow: column;
    overflow: hidden;
    margin: -10px -20px 20px -20px;
    justify-content: center;
  }

  #valj-produkt figure img {
    max-width: 100%;
  }
}

@media screen {
  .layout-group-top .toolbar.float-right {
    margin: 0 0 10px 0 !important;
    padding: 0;
  }

  .layout-group-top .toolbar.float-right .button-group {
    margin: 0 -2.5px;
  }
}

@media screen {
  #karta {
    margin-bottom: 15px;
    min-height: 320px;
    margin-left: -10px;
  }
}

@media screen {

  .layout-group-sub .list-group:last-of-type::after,
  .layout-group-sub .table-grid:last-of-type::after {
    content: " ";
    display: block;
    height: 20px;
  }
}

@media screen {
  .user {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding-bottom: 3px;
  }

  .user .label {
    font-size: 12px;
  }

  .user p:not(.label) {
    margin: 0;
    padding: 0;
    font-weight: 700;
    min-height: 0;
  }
}

@media screen {
  .table-grid td .flex-line .toolbar .button-group {
    margin: 0 10px 0 0 !important;
  }

  .table-grid td .flex-line p {
    margin-bottom: 0;
  }
}

@media screen {
  .page-navigation .navbar-support:last-of-type .button-tile.account {
    position: relative;
  }

  .page-navigation .navbar-support:last-of-type .button-tile.account .my-account-icon {
    background: url(prerequisites/lm-icons/account_black.svg) no-repeat center;
    background-size: 24px 24px;
    height: 24px;
    width: 24px;
    display: block;
    margin: 0 auto;
    content: " ";
  }
}

@media screen and (max-width: 768px) {
  .page-navigation .navbar-support:last-of-type .button-tile.account .my-account-icon {
    margin: 8px !important;
  }
}

@media screen {
  .page-navigation .navbar-support:last-of-type .button-tile.account:not(:focus-visible):hover .my-account-icon {
    background: url(prerequisites/lm-icons/account_tile.svg) no-repeat center;
    background-size: 24px 24px;
    filter: brightness(0) invert(1);
  }

  .page-navigation .navbar-support:last-of-type .button-tile.account:not(:focus-visible):hover::after {
    border-top: 4px solid #9D77B4;
  }
}

@media screen {
  .page-navigation .navbar-support:last-of-type .button-tile.account:focus-visible .my-account-icon {
    background: url(prerequisites/lm-icons/account_tile_focus.svg) no-repeat center;
    background-size: 24px 24px;
  }
}

@media screen {
  .page-navigation .navbar-support:last-of-type .button-tile.account.active:not(:focus-visible) {
    background: #8455A1 !important;
    color: white !important;
  }

  .page-navigation .navbar-support:last-of-type .button-tile.account.active:not(:focus-visible) .my-account-icon {
    background: url(prerequisites/lm-icons/account_tile_active.svg) no-repeat center;
    background-size: 24px 24px;
  }

  .page-navigation .navbar-support:last-of-type .button-tile.account.active:not(:focus-visible)::after {
    border-top: 4px solid #8455A1 !important;
  }

  .page-navigation .navbar-support:last-of-type .button-tile.account.active:focus-visible {
    background: #D5E5EF;
    color: #055485 !important;
  }

  .page-navigation .navbar-support:last-of-type .button-tile.account.active:focus-visible .my-account-icon {
    background: url(prerequisites/lm-icons/account_tile_focus.svg) no-repeat center;
    background-size: 24px 24px;
  }

  .page-navigation .navbar-support:last-of-type .button-tile.account.active:focus-visible::after {
    border-top: 4px solid #2D7CAD;
  }
}

@media screen {
  .layout-group-top .toolbar.float-right .button-group .button-tile:not(:focus-visible):not(.active):not(:hover) {
    background: white;
  }
}

@media screen {
  .list-group.summary .list-item {
    display: flex;
  }

  .list-group.summary .list-item .sum {
    padding: 10px 0 10px 0;
    text-align: right;
    white-space: nowrap;
  }

  .list-group.summary .list-item p {
    margin: 0;
    padding: 0;
  }

  .list-group.summary .list-item:nth-child(even),
  .list-group.summary .list-item.total {
    position: relative;
  }

  .list-group.summary .list-item.total {
    border-top: 2px solid #9D77B4;
    font-weight: 700;
  }
}

@media screen {
  .form-group p:active {
    outline: none;
    border: none;
    background: unset;
    color: unset;
  }

  .form-group p button {
    pointer-events: all;
  }
}

@media screen {
  .list-group.summary .list-item {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media screen and (min-width: 768px) {
  .toolbar.float-right {
    margin: 0;
    position: relative;
    top: -10px;
    right: -5px;
  }
}

@media screen {
  table.table-grid {
    margin: 0 -10px !important;
    width: calc(100% + 20px) !important;
  }

  table.table-grid tr.total {
    border-top: 2px solid #9D77B4;
  }

  table.table-grid tr.total td {
    font-weight: 700;
  }
}

@media screen {
  .layout-group-sub.order-row {
    min-height: 60px;
  }
}

@media screen {

  body.selfservice .page-header:last-child::after,
  .redet.selfservice .page-header:last-child::after {
    background: #8455A1 url(prerequisites/lm-icons/order_tile_active.svg) no-repeat 50% 50%;
    background-size: 60px 60px;
  }
}

@media screen {

  .button-sub.documentation.button-sub .icon-placeholder,
  .button-icon.documentation.button-sub .icon-placeholder {
    margin: 0 4px 0 -4px !important;
  }

  .button-sub.documentation .icon-placeholder,
  .button-icon.documentation .icon-placeholder {
    background: url(prerequisites/lm-icons/documentation_button.svg) 50% 50% no-repeat;
    background-size: 24px 24px;
  }

  .button-sub.api.button-sub .icon-placeholder,
  .button-icon.api.button-sub .icon-placeholder {
    margin: 0 4px 0 -6px !important;
  }

  .button-sub.api .icon-placeholder,
  .button-icon.api .icon-placeholder {
    background: url(prerequisites/lm-icons/api_button.svg) 50% 50% no-repeat;
    background-size: 20px 20px;
  }
}

@media screen {
  .table-grid {
    max-width: none;
  }

  .table-grid td {
    word-break: break-all !important;
  }
}

@media screen and (max-width: 768px) {
  .layout-group-sub {
    min-width: 0 !important;
    overflow-x: auto;
    overflow-y: hidden;
    max-width: 100%;
  }

  .modal-table-wrapper {
    overflow: auto;
  }

  .form-group p:not(.label) {
    word-break: break-all;
  }
}

@media screen {
  .button-icon.pin.button-icon .icon-placeholder {
    margin: -2px 0 0 1px !important;
  }

  .button-icon.pin .icon-placeholder {
    background: url(prerequisites/lm-icons/pin_button.svg) 50% 50% no-repeat;
    background-size: 20px 20px !important;
  }
}

@media screen {
  body footer {
    height: unset;
  }
}

@media screen {
  .label .button-link {
    font-weight: 700;
    cursor: pointer;
    margin: 0;
    padding: 0;
    border-radius: 10px;
    background: transparent;
    border: none;
    display: inline;
    color: #055485;
    font-weight: 700;
    text-align: left;
    cursor: pointer;
  }

  .label .button-link:hover {
    text-decoration: none;
  }

  .label .button-link .material-icons {
    font-family: "Material Icons";
    font-weight: normal;
    font-style: normal;
    font-size: 22px;
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: "liga";
    margin: 0;
    padding: 0;
    border-radius: 50%;
    font-size: unset;
    position: static;
    transform: translateY(0.15em);
    color: #055485;
    padding: 0.05em;
    font-size: 20px;
  }
}

@media screen {
  .map-container {
    margin-bottom: 15px;
  }
}

@media screen {
  .popover {
    max-width: unset !important;
  }

  .popover .popover-content ul.list {
    padding: 0;
    margin-left: 10px;
  }

  .popover .popover-content ul.list li {
    white-space: nowrap;
  }
}

@media screen {
  .side-panel .list-group.headless {
    margin: 0;
    width: calc(100% + 30px);
  }

  .side-panel .list-group.headless h4 {
    border: none;
  }
}

@media screen {
  .button-top.crane .icon-placeholder {
    background: url(prerequisites/lm-icons/crane.svg) 50% 50% no-repeat;
    margin: 0 10px 0 -2px !important;
    background-size: 35px 35px;
  }
}

@media screen {

  .button-sub.crane .icon-placeholder,
  .button-icon.crane .icon-placeholder {
    background: url(prerequisites/lm-icons/crane.svg) 50% 50% no-repeat;
    background-size: 20px 20px;
  }

  .button-sub.crane.button-sub .icon-placeholder,
  .button-icon.crane.button-sub .icon-placeholder {
    margin: 0 3px 0 -6px !important;
  }
}

@media screen {
  .button-icon.crane {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}