/* Header */

.ng-cloak {
    display: none !important;
}

* {
    outline: none;
}

/*
 * Bootstrap loads after this file and re-applies focus outlines (a:focus, .btn:focus, etc.).
 * Clear them globally so clicks do not show the default ring; :focus-visible restores keyboard focus.
 */
a:focus,
button:focus,
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus,
input:focus,
textarea:focus,
select:focus,
summary:focus,
[tabindex]:not([tabindex="-1"]):focus {
    outline: none !important;
}

a:focus-visible,
button:focus-visible,
.btn:focus-visible,
summary:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible {
    outline: 2px solid #00447a !important;
    outline-offset: 2px;
}

html {
    margin: 0;
    padding: 0;
}

body {
    margin: 0;
    padding: 0;
    letter-spacing: 1px;
    color: #FFFFFF;
    background: #e5e5e4 !important;
    font-family: 'Roboto', sans-serif!important;
}

#wrap:has(div.platform-local) {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' height='100px' width='100px'><text transform='translate(20, 100) rotate(-45)' fill='rgb(245,200,200)' font-size='30'>loco</text></svg>") !important;
}

#wrap:has(div.platform-demo) {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' height='150px' width='150px'><text transform='translate(20, 150) rotate(-45)' fill='rgb(235,245,245)' font-size='50'>demo</text></svg>") !important;
}

#wrap:has(div.platform-lab) {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' height='200px' width='200px'><text transform='translate(20, 200) rotate(-45)' fill='rgb(206,225,81)' opacity='.3' font-size='40'>lab 🐾</text></svg>") !important;
}

html,
body {
    height: 100%;
}

#wrap {
    min-height: 100%;
}

#wrap:after {
    content: "";
    display: block;
}

.wordwrap {
    white-space: pre-wrap;
    /* CSS3 */
    white-space: -moz-pre-wrap;
    /* Firefox */
    white-space: -o-pre-wrap;
    /* Opera 7 */
    word-wrap: break-word;
    /* IE */
    word-break: break-all;
}

.panel-warning {
    padding: 10px 15px 10px 15px;
}

/*
background: #e5e5e4 !important;
*/

button {
    outline: none;
}

p {
    color: #FFFFFF;
}

p.paragraph {
    text-align: justify;
    text-justify: inter-word;
}

p.contactUs {
    margin: 0;
    text-align: center;
}

p.contactUs + p.contactUs {
    margin-top: 12px;
}

div.empty-content {
    text-align: center;
}

input {
    outline: none;
}

/*div.has-error input {
border: 1px solid #FF0000;
}*/

h1.title {
    color: #00447a;
    font-size: 36px;
    margin: 15px 0 15px 0;
    letter-spacing: 0.02em;
    line-height: 42px;
    font-weight: 400;
    text-transform: uppercase;
}

h1.error,
.profile-content-container h1 {
    text-transform: none !important;
    text-align: left;
    margin: 0;
    padding: 0;
    /*margin: 0 0 0 -40px;*/
}

.profile-content-container h1.title {
    margin-bottom: 10px;
}

h2.title {
    color: #00447a;
    font-size: 24px;
    margin: 10px 0 0 0;
    letter-spacing: 0.02em;
}

h3.title {
    color: #00447a;
    font-size: 14pt;
    margin: 0 0 30px 0;
    font-weight: bold;
    margin-top: 30px;
    letter-spacing: 0.02em;
}

.event-view h1.title.event-name-title {
    font-size: 30px;
    line-height: 38px;
    /* font-style: italic; */
    text-transform: none;
    letter-spacing: 0.01em;
}

.event-name-inline {
    font-size: 0.85em;
    /* font-style: italic; */
    text-transform: none;
    letter-spacing: 0.01em;
}

.bordered {
    border: 1px solid #eee;

}

.content-container {
    padding-left: 80px !important;
    padding-right: 80px !important;
    padding-top: 50px;
    padding-bottom: 50px;
    margin-bottom: 50px;
}

.content-container p:not(.text-danger) {
    color: #444440;
}

/*.content-container-white {
background: #FFFFFF;
margin-top: 30px;
margin-bottom: 50px;
padding: 30px;
}*/

.error-container p {
    padding: 15px;
    text-align: center;
    background: #fff1f1;
    margin: 0;
    color: #FF0000;
}

.success-container p {
    padding: 15px;
    text-align: center;
    background: rgba(0, 128, 0, 0.09);
    margin: 0;
    color: #008200;
}

.white {
    background-color: #FFFFFF;
}

.blue {
    background-color: #00447a;
}

.white p:not(.text-danger) {
    color: #444440;
}

/*@media (max-width: @screen-md) {
h1{font-size: 22px;}
}

@media (max-width: @screen-sm) {
h1{font-size: 14px;}
}*/



::-webkit-input-placeholder {
    /* WebKit, Blink, Edge */
    color: #dadada;
}

:-moz-placeholder {
    /* Mozilla Firefox 4 to 18 */
    color: #dadada;
    opacity: 1;
}

::-moz-placeholder {
    /* Mozilla Firefox 19+ */
    color: #dadada;
    opacity: 1;
}

:-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #dadada;
}

.datepicker {
    letter-spacing: normal;
}

.datepicker ul.dropdown-menu {
    padding: 5px !important;
}

div.dp-control {
    display: flex;
    flex-direction: row;
    width: 150px;
    align-items: center;
    padding-left: 8px;
}

.datepicker.dp-control.od-date-input--fluid {
    width: 100%;
    max-width: none;
    box-sizing: border-box;
}

.form-group .datepicker.dp-control.od-date-input--fluid {
    width: 100%;
    max-width: none;
}

.od-date-input-btn {
    flex-shrink: 0;
}

div.dp-control>button,
div.dp-control>button:focus,
div.dp-control>button:active,
div.dp-control>button:active:focus {
    border: none;
    outline: none;
    background-color: white;
}

div.dp-control>button {
    padding: 5px;
}

div.dp-control>input {
    padding-left: 8px !important;
    flex-grow: 1;
}

.form-group .dp-control>input {
    border: none;
}

.form-group .dp-control {
    border: 1px solid #d5d5d5;
    width: 300px;
}

/*
 * Date popup: one border on the flex wrapper only (same token as other form inputs).
 * Inner text input stays borderless so you do not get a double outline.
 */
.form-group .datepicker.dp-control {
    border: 1px solid var(--app-form-border, #cdd4df);
    border-radius: var(--app-form-radius, 0);
    min-height: var(--app-form-control-height, 46px);
    box-sizing: border-box;
    padding-left: 8px;
    align-items: center;
}

.form-group .datepicker.dp-control:focus-within {
    border-color: var(--app-form-focus, #00447a);
}

.a-container form:not(#loginForm) .form-group .datepicker.dp-control input[type="text"],
.modal-content form .form-group .datepicker.dp-control input[type="text"],
.form-group .datepicker.dp-control input[type="text"] {
    border: none !important;
    box-shadow: none;
    background: transparent;
}

.a-container form:not(#loginForm) .form-group .datepicker.dp-control input[type="text"]:focus,
.modal-content form .form-group .datepicker.dp-control input[type="text"]:focus,
.form-group .datepicker.dp-control input[type="text"]:focus {
    border: none !important;
    box-shadow: none;
    outline: none;
}

form.ng-submitted .form-group .datepicker.dp-control:has(input.ng-invalid),
div.has-error .form-group .datepicker.dp-control {
    border-color: #c92a2a !important;
}

/*
 * UI Bootstrap uib-datepicker-popup (calendar + footer). Popup may append to body,
 * so rules are global — not nested under .form-group.
 * Palette: primary #00447a, borders #cdd4df, secondary outline like .app-button-secondary.
 */
.uib-datepicker-popup.dropdown-menu,
ul.dropdown-menu.uib-datepicker-popup {
    border: 1px solid var(--app-form-border, #cdd4df);
    box-shadow: 0 4px 16px rgba(31, 42, 54, 0.12);
    padding: 8px;
    z-index: 2000;
}

.uib-datepicker .uib-title strong,
.uib-datepicker .uib-title {
    color: var(--app-form-label, #2f3c4a);
    font-weight: 600;
}

.uib-datepicker .glyphicon {
    color: #00447a;
}

.uib-daypicker th,
.uib-monthpicker th,
.uib-yearpicker th {
    color: var(--app-form-label, #2f3c4a);
}

.uib-daypicker th small,
.uib-datepicker .text-muted {
    color: #8a96a3 !important;
}

/* Selected / active day (Bootstrap uses .btn-info here) */
.uib-daypicker button.btn.btn-info,
.uib-daypicker button.btn.btn-info.active,
.uib-monthpicker button.btn.btn-info,
.uib-yearpicker button.btn.btn-info {
    background-color: #00447a !important;
    border-color: #00447a !important;
    color: #fff !important;
}

.uib-daypicker button.btn-default:not(.btn-info),
.uib-monthpicker button.btn-default:not(.btn-info),
.uib-yearpicker button.btn-default:not(.btn-info) {
    background: #fff;
    border-color: transparent;
    color: var(--app-form-text, #1f2a36);
}

.uib-daypicker button.btn-default:not(.btn-info):hover,
.uib-monthpicker button.btn-default:not(.btn-info):hover,
.uib-yearpicker button.btn-default:not(.btn-info):hover {
    background: #e6f2ff;
    border-color: #b8d4eb;
    color: #00447a;
}

/* Footer: Today (btn-info) = primary; Clear / Close = navy outline (not red/green) */
.uib-button-bar {
    border-top: 1px solid var(--app-form-border, #cdd4df);
    padding: 8px 4px 4px;
    margin-top: 8px;
}

.uib-button-bar .btn.btn-sm.btn-info {
    background-color: #00447a !important;
    border-color: #00447a !important;
    color: #fff !important;
}

.uib-button-bar .btn.btn-sm.btn-info:hover,
.uib-button-bar .btn.btn-sm.btn-info:focus {
    background-color: #003359 !important;
    border-color: #003359 !important;
    color: #fff !important;
}

.uib-button-bar .btn.btn-sm.btn-danger,
.uib-button-bar .btn.btn-sm.btn-success {
    background: #fff !important;
    border: 1px solid #00447a !important;
    color: #00447a !important;
}

.uib-button-bar .btn.btn-sm.btn-danger:hover,
.uib-button-bar .btn.btn-sm.btn-danger:focus,
.uib-button-bar .btn.btn-sm.btn-success:hover,
.uib-button-bar .btn.btn-sm.btn-success:focus {
    background: #dfefff !important;
    border-color: #9ec6eb !important;
    color: #00447a !important;
}

/* Alternate tpl markup: buttons carry uib-* classes without .uib-button-bar */
.uib-datepicker-popup .btn.uib-datepicker-current.btn-info {
    background-color: #00447a !important;
    border-color: #00447a !important;
    color: #fff !important;
}

.uib-datepicker-popup .btn.uib-clear.btn-danger,
.uib-datepicker-popup .btn.uib-close.btn-success {
    background: #fff !important;
    border: 1px solid #00447a !important;
    color: #00447a !important;
}

.uib-datepicker-popup .btn.uib-clear.btn-danger:hover,
.uib-datepicker-popup .btn.uib-close.btn-success:hover {
    background: #dfefff !important;
    border-color: #9ec6eb !important;
    color: #00447a !important;
}

/* Host for odDateInput directive (E or A); cap width unless [fluid] (price table cells). */
[od-date-input],
od-date-input {
    display: block;
    max-width: min(100%, var(--app-datepicker-max-width));
}

[od-date-input][fluid],
od-date-input[fluid] {
    max-width: none;
}

.add-event-form .form-group .datepicker.dp-control {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.add-event-form [od-date-input] {
    width: 100%;
}

/* Flex row: avoid collapsed width when .add-event-form forces input width: 100% */
.add-event-form .datepicker.dp-control > input[type="text"].date,
.form-group .datepicker.dp-control > input[type="text"].date {
    width: auto !important;
    min-width: 0;
    flex: 1 1 0%;
    max-width: none;
}

table.clap-table tbody.edit-mode .dp-control {
    border: none;
}

/* Forms */

.form-group {
    margin-bottom: 20px;
}

.form-group label {
    margin-bottom: 10px;
    display: inline-block;
}

.form-group label.decline-form-label {
    margin: 0;
    margin-bottom: 0;
    padding: 0;
    display: inline-block;
}

.decline-message-dialog p {
    display: inline-block;
    color: #000;
}

.form-group input:not([type="checkbox"]):not([type="radio"]),
.form-group textarea {
    width: 300px;
}

.form-group age-edit input {
    width: 80px !important;
}

.form-group label.required {
    padding-right: 20px;
    background: url("media/img/required_icon.png") no-repeat right;
}

.form-group input:not([type="checkbox"]):not([type="radio"]) {
    border: 1px solid #d5d5d5;
    padding: 15px !important;
}

.form-group div.input-group-addon {
    border-left: 1px solid #d5d5d5;
    border-top: 1px solid #d5d5d5;
    border-bottom: 1px solid #d5d5d5;
    padding: 15px !important;
    background: #EEEEEE;
    float: left;
}

.form-group textarea {
    background: #FFFFFF;
    border: 1px solid #d5d5d5;
    padding: 0 0 0 15px !important;
}

div.has-error input,
ng-form.ng-submitted input.ng-invalid,
form.ng-submitted input.ng-invalid {
    border: 1px solid #FF0000 !important;
    background-color: #fff1f1 !important;
}

div.has-error textarea,
ng-form.ng-submitted textarea.ng-invalid,
form.ng-submitted textarea.ng-invalid {
    border: 1px solid #FF0000 !important;
    background-color: #fff1f1 !important;
}

div.has-error .radio label,
div.has-error label input[type="checkbox"]+handler-age-group,
ng-form.ng-submitted input.ng-invalid+handler-age-group {
    color: #FF0000;
}

div.has-error .fci-select,
ng-form.ng-submitted select.ng-invalid,
form.ng-submitted select.ng-invalid {
    border: 1px solid #FF0000 !important;
    background-color: #fff1f1 !important;
}

div.confirm-footer-container {
    position: fixed;
    bottom: 0;
    width: 1280px;
    height: 200px;
    -webkit-transition: all cubic-bezier(0.250, 0.460, 0.450, 0.940) 0.5s;
    transition: all cubic-bezier(0.250, 0.460, 0.450, 0.940) 0.5s;
}

div.confirm-footer-container .info-text {
    color: #FFF;
    font-weight: bold;
    padding: 85px;
    text-align: center;
}

div.confirm-footer-container .btn {
    color: #00447a;
    font-weight: bold;
    background: #fff1f1;
    text-align: center;
    width: 250px;
    padding-top: 10px;
    padding-bottom: 10px;
}

div.confirm-footer-container .btn-container {
    top: 25%;
    text-align: center;
}

/*.form-group.has-error label {
color: #FF0000 !important;
}*/

.form-group .help-block {
    color: #FF0000 !important;
}

.form-group input.date {
    background: url("media/img/calendar_icon.png") no-repeat scroll 15px;
    padding-left: 50px !important;
}

.form-divider {
    padding: 10px 0 20px 0;
}

.form-divider div {
    height: 1px;
    background: #f0f0f0;
}

.form-group-title {
    font-size: 13pt;
    color: #444440;
}

.fci-select select {
    width: 150px;
    background: transparent;
    padding: 15px;
    /*line-height: 1;*/
    border: 0;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.fci-select {
    width: 150px;
    overflow: hidden;
    padding-right: 5px;
    background: url(media/img/dropdown_arrow_down.png) no-repeat right #FFFFFF;
    border: 1px solid #ccc;
}

/*.form-group div.datepicker ul {
list-style-type: none;

}*/

/*.form-group div.datepicker button {
background: lightgrey;
color: #FFFFFF;
border: none;
}

div.datepicker table tbody td {
padding: 2px !important;
}

div.datepicker table thead th {
padding: 2px !important;
}*/

/*ul.dropdown-menu {
list-style-type: none;
border: 1px solid #d5d5d5;
padding-left: 0;
}

ul.dropdown-menu li {
padding: 10px 0 10px 15px;
}*/

/*.form-group select {
background: transparent;
padding: 5px;
line-height: 1;
border: none;
border-radius: 0;
-webkit-appearance: none;
}

.form-group .select-box {

}*/

/* Buttons */

button.btn-primary:not(.btn-xs):not(.btn-sm),
button.btn-danger:not(.btn-xs):not(.btn-sm),
button.fci-button,
div a.button-primary:not(.btn-xs):not(.btn-sm),
select.button-primary {
    text-align: center;
    padding: 15px;
    border: none;
    color: #FFFFFF;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 14px;
}

select.button-primary {
    width: unset;
    line-height: 18px !important;
    max-height: 50px !important;
    vertical-align: middle;

    option {
        background-color: white;
        color: #333;
        text-align: start;
        text-transform: none;
        font-family: Arial, Helvetica, sans-serif;

        &:not([selected]) {
            font-weight: bold;
        }
    }
}

.btn.btn-xs {
    width: 22px;
}

span.btn-sq {
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    height: 40px;
    width: 40px;
    line-height: 40px;
}

button.btn-primary.btn-green {
    background: #008200;
}

button.btn-primary.btn-green:hover {
    opacity: 0.8;
}

button.btn-primary-small {
    text-align: center;
    padding: 10px 15px 10px 15px;
    border: none;
    color: #FFFFFF;
}


button.btn-primary,
a.button-primary,
button.btn-primary-small,
button.fci-button-primary,
select.button-primary {
    background: #00447a;
    color: #FFFFFF;
}

button.c {
    background: #000000;
    color: #FFFFFF;
}

button.fci-button-black {
    background: #000000;
}

button.fci-button-black:hover {
    background: #2E2E2E;
    color: #FFFFFF;
}

button.fci-button-black:active {
    background: #000000 !important;
    color: #FFFFFF !important;
}

button.fci-button-black:visited {
    background: #000000 !important;
    color: #FFFFFF !important;
}

button.fci-button-black:focus {
    background: #000000;
    color: #FFFFFF;
}

button.fci-button {
    text-align: center;
    padding: 15px;
    border: none;
}

/* Header */

.header {
    height: 80vh;
    min-height: 667px;
}

.header-left {
    height: 100%;
    /*float:left;
    width: 872px;
    height: 729px;*/
    /*display: table-cell;*/
    /*float: none !important;*/
    /*background: url("media/img/header_image.png") no-repeat;
    background-size: cover;*/
}

.slides-new {
    width: 100%;
    height: 100%;
    position: relative;
}

.slides-new div {
    position: absolute;
    animation: slides-new 30s infinite;
    opacity: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
}

/*.slides-new img {
   position: absolute;
   left: 50%;
   top: 50%;
   -webkit-transform: translateY(-50%) translateX(-50%);
}*/
@keyframes slides-new {
    16.66% {
        opacity: 1;
    }

    30% {
        opacity: 0;
    }

    50% {
        transform: scale(1.02);
    }

    75% {
        transform: scale(1.04);
    }

    100% {
        transform: scale(1.1);
    }
}

.slides-new div:nth-child(6) {
    animation-delay: 0s;
}

.slides-new div:nth-child(5) {
    animation-delay: 5s;
}

.slides-new div:nth-child(4) {
    animation-delay: 10s;
}

.slides-new div:nth-child(3) {
    animation-delay: 15s;
}

.slides-new div:nth-child(2) {
    animation-delay: 20s;
}

.slides-new div:nth-child(1) {
    animation-delay: 25s;
}

.slide6 {
    background-image: url(/static/img/slide6.png?v=@@OD_ASSET_VERSION@@)
}

.slide5 {
    background-image: url(/static/img/slide5.png?v=@@OD_ASSET_VERSION@@)
}

.slide4 {
    background-image: url(/static/img/slide4.png?v=@@OD_ASSET_VERSION@@)
}

.slide3 {
    background-image: url(/static/img/slide3.png?v=@@OD_ASSET_VERSION@@)
}

.slide2 {
    background-image: url(/static/img/slide2.png?v=@@OD_ASSET_VERSION@@)
}

.slide1 {
    background-image: url(/static/img/slide1.png?v=@@OD_ASSET_VERSION@@)
}

.slides,
.slide-container {
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: black;
    z-index: 1;
    overflow: hidden;
}

.slides .slide {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    opacity: 0;
}

.slide:first-child {
    animation: round1 16s infinite;
    -webkit-animation: round1 16s infinite;
}

.slide:nth-child(2) {
    animation: round2 16s infinite;
    -webkit-animation: round2 16s infinite;
}

/*.slide:nth-child(3) {
    animation: round3 16s infinite;
    -webkit-animation: round3 16s infinite;
}*/

@keyframes round1 {
    0% {
        opacity: 1;
    }

    25% {
        opacity: 1;
    }

    50% {
        opacity: 0;
        transform: scale(1.02);
    }

    75% {
        opacity: 0;
        transform: scale(1);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}

@-webkit-keyframes round1 {
    0% {
        opacity: 1;
    }

    25% {
        opacity: 1;
    }

    50% {
        opacity: 0;
    }

    75% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes round2 {
    0% {
        opacity: 0;
    }

    25% {
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    75% {
        opacity: 1;
    }

    100% {
        opacity: 0;
        transform: scale(1.04);
    }
}

@-webkit-keyframes round2 {
    0% {
        opacity: 0;
    }

    25% {
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    75% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

/*@keyframes round3 {
    0% {
        opacity: 0;
    }
    25% {
        opacity: 0;
    }
    50% {
        opacity: 0;
    }
    75% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: scale(1.1);
    }
}

@-webkit-keyframes round3 {
    0% {
        opacity: 0;
    }
    25% {
        opacity: 0;
    }
    50% {
        opacity: 0;
    }
    75% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}*/

/*.header-left img {
width: 100%;
}*/

.header-right {
    /* float: left;
    width: 408px;
    height: 729px;*/
    /*float: none !important;*/
    padding-top: 20px;
    background: #00447a;
    height: 100%;
    /*vertical-align: middle;*/
}

.header-right .home-lang-switcher.home-lang-switcher-auth {
    padding-bottom: 10px;
    padding-right: 20px;
    text-align: right;
}

.header-status-message {
    color: #FFFFFF;
}

.passkey-login-panel {
    margin-top: 8px;
}

.passkey-login-title {
    margin: 0 0 10px;
    color: #FFFFFF;
    font-size: 20px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.passkey-login-hint {
    color: #FFFFFF;
    font-size: 14px;
    line-height: 1.4;
    text-align: center;
    margin: 0 0 16px;
}

.passkey-trust-device {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #FFFFFF;
    font-size: 13px;
    font-weight: 400;
    margin: 0 0 16px;
    cursor: pointer;
    text-align: left;
}

.passkey-trust-device input {
    width: auto !important;
    height: auto;
    margin: 3px 0 0;
    flex-shrink: 0;
}

.passkey-login-cancel {
    margin-top: 10px;
    border: 1px solid #FFFFFF;
    background: transparent;
    color: #FFFFFF;
}

.passkey-login-cancel:hover,
.passkey-login-cancel:focus {
    color: #FFFFFF;
    background: rgba(255, 255, 255, 0.12);
}

.passkey-settings {
    margin-top: 28px;
    padding-top: 20px;
    border-top: 1px solid #dfe5ec;
}

.passkey-settings-title {
    margin: 0 0 8px;
    font-size: 18px;
    color: #204068;
}

.passkey-settings-hint {
    margin: 0 0 12px;
    color: #666666;
    font-size: 13px;
    line-height: 1.4;
}

.passkey-list-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid #eef2f6;
}

.passkey-list-item-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
    font-size: 13px;
    color: #444440;
}

.passkey-remove {
    width: auto;
    height: auto;
    padding: 6px 12px;
    border: 1px solid #c92a2a;
    background: #ffffff;
    color: #c92a2a;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-size: 12px;
}

.passkey-add {
    margin-top: 16px;
}

.passkey-add-label {
    display: block;
    margin-bottom: 6px;
}

.passkey-add input {
    margin-bottom: 12px;
}

.passkey-add-phone {
    margin-top: 8px;
}

.passkey-add .passkey-settings-hint {
    margin-top: 10px;
}

.header-dropdown-club-item {
    width: 100%;
    padding: 0;
}

.header-link-uppercase {
    text-transform: uppercase;
}

.profile-header-user-name {
    color: #00447a;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    font-size: 20px;
    margin-top: 6px;
    padding-right: 20px;
    text-align: right;
    line-height: 1.2;
}

.profile-header-user-name-text {
    text-transform: uppercase;
}

@media (max-width: 768px) {
    .profile-header-user-name {
        display: none;
    }
}

div.header-right div.sign-in-form button.sign-up {
    width: 100%;
    height: 50px;
    border: 3px solid #FFFFFF;
    font-size: 14px;
    line-height: 47px;
    padding: 0px;
}

.header-right button.sign-up:hover {
    background: #fff;
    color: #00447a;
}

p.browse-events a {
    background-color: #00447a;
    height: 50px;
    display: inline-block;
    padding: 0 50px;
    line-height: 47px;
    border: 3px solid #FFFFFF;

    &:hover {
        background: #fff;
        color: #00447a !important;
        border-color: #00447a;
        text-decoration: none;
    }
}

.header-left a.logo {
    border: none;
    display: block;
    margin: 38px 0 0 60px;
    width: 136px;
    outline: none;
}

.logo-container {
    position: relative;
    z-index: 2;
}

.logo-container a.logo-under-construction {
    position: relative;
    z-index: 999;
    padding: 8px 22px 8px 8px;
    color: #FFFFFF;
    font-size: 7pt;
    left: 61px;
    top: 14px;
    cursor: pointer;
    text-decoration: none;
    user-select: none;
    -webkit-user-select: none;
}

.logo-container a.logo-under-construction:after {
    content: "";
    width: 7px;
    height: 5px;
    background: url("media/img/arrow-down.svg") no-repeat;
    position: absolute;
    top: 11px;
    right: 7px;
}

a.logo-under-construction.visible {
    background: #00447a;
}

a.logo-under-construction.visible:after {
    -ms-transform: rotate(180deg);
    -ms-transform-origin: 50% 50%;
    -webkit-transform: rotate(180deg);
    -webkit-transform-origin: 50% 50%;
    transform: rotate(180deg);
    transform-origin: 50% 50%;
}

.profile-hint {
    font-size: 8pt;
}

#under-construction-popup {
    visibility: hidden;
    opacity: 0;
    background: white;
    width: 530px;
    padding: 20px 20px 0 20px;
    position: absolute;
    top: 143px;
    left: 61px;
    z-index: 3;
    transition: opacity .25s ease-in-out !important;
    -moz-transition: opacity .25s ease-in-out !important;
    -webkit-transition: opacity .25s ease-in-out !important;

}

#under-construction-popup a {
    display: block;
    width: 14px;
    height: 14px;
    position: absolute;
    top: 10px;
    right: 10px;
    background: url('media/img/icon-close.svg') no-repeat;
    opacity: 0.6;
}

#under-construction-popup a:hover {
    opacity: 0.8;
}

#under-construction-popup.visible {
    visibility: visible;
    opacity: 1;
}

#under-construction-popup p {
    color: #444440;
    font-size: 10pt;
    text-align: justify;
    padding-right: 10px;
}

.logo img {
    border: none;
}


.animal-owner-table td {
    padding: 5px 10px 10px 0;
    &:first-of-type {
        color: #949494;
    }
}

/* Header menu */

.header-left .center-container {
    max-width: 518px;
    margin: 0 auto;
    text-align: center;
}

.header-left p.know-more {
    position: absolute;
    bottom: 20px;
    left: 50%;
    text-align: center;
    padding: 0 4px 2px;
    border-bottom: 1px solid #fff;
}

.header-left p.browse-events {
    position: absolute;
    bottom: 25px;
    width: 100%;
    text-align: center;
}

.header-left p.browse-events a {
    color: white;
}

.header-left p.know-more a {
    color: #FFFFFF;
}

.header-left p.know-more a:hover {
    text-decoration: none;
}

.sign-in-form h1 {
    font-family: 'Roboto', sans-serif;
    letter-spacing: 0.1em;
    line-height: 38px;
    font-size: 1.75em;
    font-size: 24px;
    color: #FFFFFF;
    padding: 0;
    text-align: left;
    margin: 40px 0 25px;
    font-weight: 600;
}

.header-left .signup-button {
    margin: 0 auto;
    margin-top: 50px;
    text-align: center;
    width: 220px;
    height: 70px;
    border: none;
    color: #FFFFFF;
    font-size: 15pt;
    padding: 20px 0 0 0;
    display: block;
}

.sign-in-form .label {
    display: inline-block;
    font-size: 14px;
    font-family: 'Roboto', sans-serif;
    line-height: 26px;
    height: 26px;
    background: #84b037;
    color: #fff;
    text-align: left;
    padding-left: 8px;
}

.sign-in-form .label:after {
    content: "";
    display: block;
    float: right;
    width: 0;
    height: 0;
    margin-left: 5px;
    border-style: solid;
    border-width: 13px 7px 13px 0;
    border-color: transparent #00447a transparent transparent;
}

ul.home-top-menu {
    margin: 38px 61px 0 0;
    float: right;
}

ul.home-top-menu li {
    float: left;
    list-style-type: none;
    margin: 0 0 0 47px;
}

ul.home-top-menu li a {
    color: #FFFFFF;
    font-size: 14pt;
    text-decoration: none;
    text-transform: uppercase;
}

/* Sign In */

.sign-in-form {
    position: relative;
    height: 100%;
    margin: 0;
    padding: 0 40px;
    max-width: 400px;
}

.sign-in-form .title {
    margin-bottom: 20px;
    text-align: center;
    color: #FFFFFF;
    font-size: 24px;
}

.forgot-password-email-form {
    margin: 20px;
    text-align: center;
}

.sign-in-form input {
    border: none;
    background: #FFFFFF;
    display: block;
    width: 100% !important;
    height: 50px;
    margin-top: 10px;
    font-size: 18px;
    text-align: center;
}

#loginForm .login-password-control {
    position: relative;
    margin-top: 10px;
}

#loginForm .login-password-control input {
    margin-top: 0;
    padding-right: 48px !important;
}

#loginForm .login-password-toggle {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    top: 0;
    right: 0;
    bottom: 0;
    width: 48px;
    height: auto;
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    color: #777777;
    appearance: none;
    -webkit-appearance: none;
    box-shadow: none;
    font-size: 18px;
    letter-spacing: normal;
    line-height: 1;
}

#loginForm .login-password-toggle:hover,
#loginForm .login-password-toggle:focus {
    color: #000000;
    border: none;
    outline: none !important;
    box-shadow: none;
}

#loginForm .login-password-toggle::-moz-focus-inner {
    border: 0;
}

#loginForm .login-password-toggle:disabled {
    color: #dadada;
    cursor: default;
}

.sign-in-form button {
    border: none;
    width: 100%;
    height: 50px;
    font-size: 14px;
    letter-spacing: 0.1em;
}

.sign-in-form p.or {
    color: #FFFFFF;
    margin: 20px 0;
    text-align: center;
    font-size: 14px;
    text-transform: uppercase;
}

.sign-in-form .social-login a {
    margin-left: 20px;
}

.sign-in-form .forgot-password {
    position: absolute;
    bottom: 75px;
    width: 100%;
    text-align: center;
    left: 0px;
}

.forgot-password a {
    font-size: 14px;
    color: #FFFFFF;
}

.forgot-password a:hover {
    color: #FFFFFF;
}

@media (max-width: 991px) {
    .header {
        height: auto;
        min-height: 0;
        overflow-x: hidden;
    }

    /* Slideshow on top: span full viewport width (break out of container-fluid gutters) */
    .header-left {
        height: auto;
        min-height: 0;
        aspect-ratio: 4 / 3;
        max-height: 420px;
        position: relative;
        width: 100vw;
        max-width: 100vw;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        padding-left: 0;
        padding-right: 0;
    }

    .header-left .logo-container {
        position: absolute;
        top: 14px;
        left: 14px;
        z-index: 3;
    }

    .header-left a.logo {
        margin: 0;
        width: auto;
    }

    .header-left a.logo img {
        width: clamp(88px, 18vw, 120px);
        height: auto;
    }

    .slide-container {
        position: relative;
        height: 100%;
        z-index: 1;
    }

    .header-right {
        padding: 20px 0 30px;
        min-height: auto;
    }

    .home-lang-switcher {
        padding: 0 20px 10px !important;
        text-align: center !important;
        line-height: 1.8;
        word-break: break-word;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        row-gap: 8px;
        column-gap: 3px;
    }

    .home-lang-switcher a {
        display: inline-flex;
        align-items: center;
        padding: 2px 4px;
        line-height: 1.2;
        white-space: nowrap;
    }

    .home-lang-switcher .fib {
        line-height: 1;
    }

    .home-lang-switcher a.active .fib {
        line-height: 1 !important;
        vertical-align: middle;
        background-position: 0 3px;
    }

    .sign-in-form {
        max-width: 520px;
        margin: 0 auto;
        padding: 0 20px 10px;
    }

    .sign-in-form h1 {
        margin-top: 20px;
        text-align: center;
    }

    .sign-in-form .forgot-password {
        position: static;
        margin-top: 20px;
    }
}
@media (max-width: 991px) {
    .supported-by-container div.wrapper {
        display: block;
        white-space: normal;
        padding: 20px 10px;
        margin-top: 15px;
    }

    .supported-by-container ul {
        display: flex!important;
        flex-wrap: wrap;
        justify-content: center;
        white-space: normal;
    }

    .supported-by-container ul li {
        display: block;
        padding: 0;
    }

    .supported-by-container ul li a {
        display: block;
        padding: 24px 42px;
    }

    .tab-container {
        flex-direction: column;
    }

    .tab-buttons {
        flex-direction: row!important;
        gap: 0!important;
        margin-bottom: 0px!important;
        width: 100%
    }

    .tab-buttons button {
        min-width: 0;
        flex: 1 1 120px!important;
        writing-mode: horizontal-tb!important;
        text-align: center!important;
        padding: 10px 8px!important;
        font-size: 1em!important;
        line-height: 1.2;
    }

    .tab-buttons button.LV,
    .tab-buttons button.UA,
    .tab-buttons button.MT {
        padding-top: 50px!important;
        background-size: 24px!important;
        background-position: 50% 8px!important;
    }

    .tab-buttons~div.white {
        border-top: 0!important;
        border-left: 1px solid #ccc;
    }

    .tab-buttons button.active {
        border-right: 1px solid #ccc!important;
        border-bottom: none!important;
    }
    div.relative-content-container {
        padding: 10px!important;
    }

}
@media (max-width: 991px) and (orientation: landscape) {
    .header-left {
        aspect-ratio: 4 / 3;
        max-height: 52vh;
    }
}

@media (max-width: 575px) {
    .home-lang-switcher {
        padding: 0 10px 10px !important;
        row-gap: 6px;
        column-gap: 2px;
        font-size: 13px;
        line-height: 1.5;
    }

    .home-lang-switcher a {
        padding: 2px 3px;
    }

    .home-lang-switcher a.active .fib {
        line-height: 1 !important;
    }

    .header-left .logo-container {
        top: 10px;
        left: 10px;
    }

    .header-left a.logo img {
        width: clamp(74px, 24vw, 100px);
    }

    .sign-in-form {
        padding: 0 15px 10px;
    }

    .sign-in-form h1 {
        font-size: 20px;
        line-height: 1.3;
        margin-bottom: 20px;
    }

    .sign-in-form input,
    .sign-in-form button,
    div.header-right div.sign-in-form button.sign-up {
        height: 46px;
        font-size: 16px;
        line-height: 1.2;
    }

    #loginForm .login-password-toggle {
        font-size: 16px;
    }

    .tab-buttons {
        gap: 4px;
    }

    .tab-buttons button {
        flex-basis: calc(50% - 4px);
        padding: 8px 6px;
        font-size: 0.9em;
    }

}

@media (max-width: 1200px) {
    .apply-event-info-block .fci-table,
    .apply-event-info-block .fci-table tbody,
    .apply-event-info-block .fci-table tr,
    .apply-event-info-block .fci-table td {
        display: block;
        width: 100%;
    }

    .apply-event-info-block .fci-table tr.content {
        display: flex;
        flex-wrap: wrap;
        border-bottom: 1px solid #eee;
        padding: 10px 0;
    }

    .apply-event-info-block .fci-table td {
        border: none !important;
        padding: 6px 0;
    }

    .apply-event-info-block .fci-table td.event-read-more,
    .apply-event-info-block .fci-table td.event-apply {
        display: inline-block;
        width: auto;
        margin-top: 8px;
    }

    .apply-event-info-block .fci-table td.event-read-more a,
    .apply-event-info-block .fci-table td.event-apply button.event-apply {
        display: inline-block;
        width: auto;
    }

    .apply-event-info-block .fci-table td.event-read-more {
        padding-left: 0 !important;
        padding-right: 4px !important;
    }

    .apply-event-info-block .fci-table td.event-apply {
        margin-top: 8px;
        padding-left: 4px !important;
        padding-right: 0 !important;
    }
}

@media (min-width: 992px) and (max-width: 1200px) {
    .relative-content-container {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
}

/* Atbalstitaji */

.supported-by-container {
    background: #00447a;
}

.supported-by-container div.wrapper {
    margin: 10px auto;
    margin-top: 30px;
    display: table;
    padding: 45px 0 45px 0;
    white-space: nowrap;
}

.supported-by-container p.title {
    text-align: center;
    color: #01213b;
}

.supported-by-container ul {
    list-style: none;
    padding: 0;
    display: table-row;
    white-space: nowrap;
}

.supported-by-container ul li {
    list-style: none;
    padding: inherit;
    display: table-cell;
}

.supported-by-container ul li a {
    padding: 45px 87px 45px 87px;
}

.supported-by-container ul li a.lkf {
    background: url("media/img/logo_lkf_gaiss.png") no-repeat;
    background-size: contain;
    filter: invert(1);
}

.supported-by-container ul li a.lkf:hover {
    background: url("media/img/logo_lkf_gaiss.png") no-repeat;
    background-size: contain;
    filter: invert(0);
}

.supported-by-container ul li a.liaa {
    background: url("media/img/logo_liaa_tumss.png") no-repeat;
    background-position-y: 50%
}

.supported-by-container ul li a.liaa:hover {
    background: url("media/img/logo_liaa_tumss.png") no-repeat;
    background-size: 75%;
    background-position-y: 50%;
}

.supported-by-container ul li a.lu {
    background: url("media/img/logo_lu_tumss.png") no-repeat;
}

.supported-by-container ul li a.lu:hover {
    background: url("media/img/logo_lu_gaiss.png") no-repeat;
}

.supported-by-container ul li a.swg {
    margin-left: 40px;
    background: url("media/img/logo_swg_tumss.png") no-repeat;
}

.supported-by-container ul li a.swg:hover {
    background: url("media/img/logo_swg_gaiss.png") no-repeat;
}

.supported-by-container ul li a.atsperiens {
    margin-left: 60px;
    background: url("media/img/logo_atspeeriens_tumss.png") no-repeat;
}

.supported-by-container ul li a.atsperiens:hover {
    background: url("media/img/logo_atspeeriens_gaiss.png") no-repeat;
}

/* Video */

.video-container {
    background: #00447a;

}

.video-container button.btn-primary {
    display: block;
    margin: 85px auto 100px;
    border: 2px solid #fff;
    line-height: 65px;
    padding: 0 40px;
    font-size: 14px;
    letter-spacing: 0.1em;
}

.video-container button.btn-primary:hover {
    color: #00447a;
    background: #fff;
}

.video-title {
    margin-bottom: 50px;
    text-align: center;
    font-size: 24px;
    color: #fff;
    letter-spacing: 0.05em;
}

.home-video-block {
    margin: 0 auto;
    max-width: 560px;
    margin-bottom: 100px;
}

/* Benefits */

.benefits-container .tab {}

.benefits-container .tab p.title {
    font-size: 20px;
    font-family: 'Roboto', sans-serif;
    font-weight: 600;
    padding: 0;
    margin: 80px auto;
    text-align: center;
    background: #00447a;
    width: 80%;
    max-width: 400px;
    height: 60px;
    line-height: 60px;
    position: relative;
}

.benefits-container .tab p.title:after {
    position: absolute;
    bottom: -10px;
    left: 50%;
    margin-left: -10px;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #00447a transparent transparent transparent;
}

.benefits-container .benefit-block {
    width: 100%;

}

.benefits-container .benefit-block img {
    display: block;
    margin: 0 auto 25px;
}

.benefits-container .benefit-footer p,
.benefits-container .benefit-block div p {
    text-align: center;
    color: #00447a;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 600;
}

.benefits-container .benefit-footer p {
    font-size: 12px;
    margin: 50px 0 25px;
    font-weight: 300;
}

.benefits-container .benefit-block div {
    text-align: center;
    margin-bottom: 50px;

}

.after-benefits {
    background: #00447a;
    padding: 55px 0 55px 0;
    text-align: center;
}

.after-benefits button {
    width: 220px;
    height: 70px;
    border: 2px solid #FFFFFF;
    font-size: 14pt;
}

.after-benefits button:hover {
    border: 2px solid #FFFFFF;
}

.footer-container {
    text-align: center;
    background: #202020;
    height: 140px;
}

.footer-container ul {
    list-style-type: none;
    margin: 0 auto 0;
    padding-top: 66px;
}

.footer-container ul li {
    font-weight: 600;
    display: inline-block;
    margin: 0 20px;
}

.footer-container ul li a {
    text-decoration: none;
    color: #898989;
}

/*.form-signin {
width: 400px;
}

.login-botom-options {
margin-top: 10px;
}

.form-group .help-block {
display: none;
}

.form-group.has-error .help-block {
display: block;
}

.signup-form {
width: 600px;
}

.lang {
padding-top: 15px;
padding-left: 15px;
}

.lang a.active {
text-decoration: none;
cursor: default;
}*/
/*
.navbar .divider-vertical {
height: 50px;
margin: 0 9px;
border-left: 1px solid #f2f2f2;
}*/

.top-buffer {
    margin-top: 10px;
}

.top-buffer-20 {
    margin-top: 20px;
}

.profile-dogs-content .dogs-toolbar-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-left: 0;
    margin-right: 0;
    margin-top: 10px;
    margin-bottom: 12px;
}

.profile-dogs-content .dogs-toolbar-row .dogs-toolbar-button-col,
.profile-dogs-content .dogs-toolbar-row .dogs-toolbar-search-col {
    display: flex;
    align-items: center;
    padding-left: 0;
    padding-right: 0;
}

.profile-dogs-content .dogs-toolbar-row .dogs-toolbar-button-col {
    flex: 1 1 auto;
}

.profile-dogs-content .dogs-toolbar-row .dogs-toolbar-search-col {
    flex: 0 0 auto;
    justify-content: flex-end;
}

.profile-dogs-content .dogs-toolbar-row .dogs-toolbar-search-col .form-control {
    width: 250px;
    max-width: 100%;
}

.profile-dogs-content .dog-sort-mobile,
.profile-dogs-content .dog-cards-mobile {
    display: none;
}

.date-select .form-group {
    margin: 0;
}

/*.form-group.required .control-label:after {
content:"*";
color:red;
}*/

/*.navbar {
border-radius: 0 !important;
margin-bottom: 0;
}*/

table tr.clickable-row {
    cursor: pointer;
}

/**/

hr {
    margin-top: 30px;
    margin-bottom: 20px;
    border-top: 1px solid #c7c7c7 !important;
}

.tab-content {
    padding-top: 15px;
}

tr.content.profile-dog-content td {
    border-top: 1px solid #fff;
}

.not-found {
    margin: -50px 0 70px;
}

.repeat-wrap {
    margin-bottom: 50px;
}

tr.content.profile-dog-content:hover {
    cursor: pointer;
    background: #f0f0f0;
}

tr.content.profile-dog-content .ng-binding:first-child {
    line-height: 24px;
    color: #00447a;
    text-decoration: underline;
}

/* Signup */

h1.signup-title {
    color: #00447a;
    font-size: 24pt;
}

.user-type-row {
    margin-top: 35px;
}

.user-type {
    *:first-child {
    margin-left: 30px;
    }
    background: #FFFFFF;
    padding: 35px 0 35px 0;
    border: 1px solid transparent;
    border-right: 1px solid #e5e5e4;
}

.user-type:hover {
    border: 1px solid #00447a;
    cursor: pointer;
}

.signup-container {
    background: #FFFFFF;
    margin-top: 30px;
    margin-bottom: 50px;
}

.signup-container p {
    color: #444440;
}

.signup-container .signup-email-input-row {
    padding-bottom: 30px;
}

.signup-social {
    padding: 30px 30px 30px 15px;
}

.signup-or {
    color: #444440;
    text-align: center;
    margin: 30px 0 30px 0;
}

.signup-social button {
    padding: 15px 20px 15px 20px;
    text-align: center;
    color: #FFFFFF;
    border: none;
    width: 100%;
}

.signup-social div {
    padding-left: 15px;
}

.signup-fb {
    background: url("media/img/signup_fb_icon.png") scroll 15px 15px no-repeat #286fd9;
}

.signup-drlv {
    background: url("media/img/signup_drlv_icon.png") scroll 15px 15px no-repeat #f69230;
}

.signup-gplus {
    background: url("media/img/signup_gplus_icon.png") scroll 15px 15px no-repeat #dc473a;
}

.signup-form {
    margin-top: 30px;
}

.signup-form label {
    text-transform: uppercase;
}

.signup-form button {
    width: 300px;
}

.signup-form input {
    width: 100%;
}

.signup-form textarea {
    width: 100%;
}

.signup-form input[type="checkbox"] {
    width: auto !important;
}

.signup-form input[type="radio"] {
    width: auto !important;
}

/* Events */

.events-container {
    margin-bottom: 50px;
}

.events-container .top-bar {
    margin-bottom: 35px;
}

.events-container .top-bar .actions {
    float: right;
    padding: 15px 0 0 0;
}

.events-container .top-bar .actions a {
    color: #00447a;
    font-size: 12pt;
    margin-right: 20px;
    padding-left: 20px;
    background: url("media/img/plus_icon.png") no-repeat scroll 0 5px;
    text-transform: uppercase;
    text-decoration: none;
}

.overview-list_item-block {
    background: #FFFFFF;
    margin-right: 20px;
    margin-top: 15px;
    padding: 20px;
}

.overview-list_item-block img {
    width: 100%;
}

.overview-list_item-block p {
    text-align: center;
}

.overview-list_item-block p.overview-item-title {
    font-size: 14pt;
    color: #444440;
}

.overview-list_item-block p.event-location,
.overview-list_item-block p.event-date {
    color: #949494;
    font-size: 10pt;
    margin-top: 10px;
}

.event-view p.event-date {
    background: url("media/img/events_date_icon.png") no-repeat left;
    padding-left: 15px;
}

.event-view p.event-location {
    background: url("media/img/events_location_icon.png") no-repeat left;
    padding-left: 15px;
}

.overview-list_item-block p.event-location span,
span.event-location,
.event-description-details p.event-location {
    display: block;
    background: url("media/img/events_location_icon.png") no-repeat left 4px;
    padding-left: 18px;
}

.event-description-details {
    width: 100%;
}

.event-description-embed {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
}

.event-description-embed .event-description-body * {
    all: revert;
    box-sizing: border-box;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
}

.event-description-embed .event-description-body {
    font-family: 'Roboto', Arial, sans-serif;
    font-size: 16px;
    line-height: 1.55;
    word-wrap: break-word;
    color: #333;
}

.event-description-embed .event-description-body table {
    border-collapse: collapse;
    border: 1px solid #ccc;
    box-sizing: border-box;
}

.event-description-embed .event-description-body th,
.event-description-embed .event-description-body td {
    border: 1px solid #ccc;
    padding: 8px 12px;
    vertical-align: top;
}

.event-description-embed .event-description-body img {
    max-width: 100%;
    height: auto;
}

.event-description-details .event-descr-apply {
    width: 100%;
}

.overview-list_item-block p.event-date span,
span.event-date,
.event-description-details div.event-date {
    display: block;
    background: url("media/img/events_date_icon.png") no-repeat left 4px;
    padding-left: 18px;
    white-space: nowrap;
}

.event-description-details div.event-date {
    padding-left: 30px;
}

.overview-list_item-block p.event-read-more {
    margin-top: 17px;
    padding-bottom: 10px;
}

td.event-read-more {
    width: 15%;
    padding-left: 0 !important;
    padding-right: 8px !important;
}

.overview-list_item-block p.event-read-more a,
td.event-read-more a {
    display: block;
    background: #00447a;
    color: #fff;
    width: 100%;
    line-height: 50px;
    font-size: 14px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    white-space: nowrap;
    box-sizing: border-box;
    padding-left: 14px;
    padding-right: 14px;
}

.overview-list_item-block p.event-read-more a:hover,
td.event-read-more a:hover {
    text-decoration: none;
    color: #fff;
    cursor: pointer;
    opacity: 0.9;
}

.overview-list_item-block button.event-apply {
    width: 100%;
    margin-top: -10px;
    white-space: nowrap;
}

td.event-apply button.event-apply {
    white-space: nowrap;
    box-sizing: border-box;
    padding-left: 14px;
    padding-right: 14px;
}

td.event-apply {
    padding-left: 8px !important;
    padding-right: 0 !important;
}

td.action {
    text-align: right;
    width: 12%;
}

.club-list-overview {
    margin: 10px;
    padding: 10px;
    background-color: grey;
    font-weight: bold;
    font-size: 20px;
}

.club-list-overview:hover {
    background-color: dimgrey;
    cursor: pointer;
}

.reset-password-success-block {
    margin-left: auto;
    margin-right: auto;
    width: 1280px;
    display: block;
    background: #00447a;
    padding: 40px;
}

/* Profile page */

.relative-content-container {
    padding-left: 80px !important;
    padding-right: 80px !important;
    padding-top: 30px;
    /*position: relative;*/
    margin-bottom: 80px;
}

.a-container .relative-content-container {
    padding: 10px !important;
}

.relative-content-container .view-content {
    padding: 30px;
}

.profile-content-container .content {
    background: #FFFFFF;
    overflow: hidden;
}

.events-content {
    background: transparent;
}

.menu-container {
    margin-bottom: 12px;
    position: relative;
    z-index: 1;
}

.menu-container ul.menu {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    border-bottom: 1px solid rgba(0, 68, 122, 0.16);
}

.menu-container ul.menu li {
    float: none;
    margin: 0;
    padding: 0;
    color: rgba(0, 68, 122, 0.62);
    background: transparent;
    position: relative;
    transition: color 0.2s ease;
    &.active {
        color: #00355e;
        font-weight: 600;
    }

    &.active::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: -1px;
        height: 3px;
        background: #00447a;
        border-radius: 2px 2px 0 0;
    }
}

.menu-container ul.menu li a {
    padding: 10px 0;
    line-height: 1.2;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    color: inherit;
}

.menu-container ul.menu li a .material-symbols-outlined,
.menu-container ul.menu li a i {
    font-size: 18px;
    line-height: 1;
}

.menu-container ul.menu li:not(.active):hover a {
    color: #2f628d;
}

.event-menu-container.menu-container ul.menu li {
        float: none;
    margin-right: 0;
    padding: 0;
    margin-top: 0;
    margin-bottom: 0;
}

.event-menu-container.menu-container {
    background: transparent;
}

.profile-content-container .content-row {
    padding: 20px 30px 20px 30px;
}

.content-row {
    padding: 20px 30px 20px 30px
}

.profile-content-container .content-row p {
    color: #444440;
}

.profile-content-container .main-info-row {}

.profile-content-container .club-logo {
    text-align: left;
}
.club-logo img:not(.change-club-profile-logo) {
    width: 240px;
    height: 240px;
}
.club-logo .profile-user-avatar-wrap {
    position: relative;
    display: inline-block;
    max-width: 100%;
}

.club-logo .profile-user-avatar-wrap > img:not(.change-club-profile-logo) {
    display: block;
    width: 240px;
    height: 240px;
    max-width: 100%;
    object-fit: cover;
    background-color: #f0f0f0;
}

.profile-content-container h1 {
    font-size: 22pt;
    color: #00447a;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.profile-content-container .main-info-right {
    padding: 20px 30px 20px 30px;
}

.profile-content-container .main-info-right p.breed-title {
    color: #a5a5a5;
    font-size: 9pt;
    text-transform: uppercase;
    margin-top: 20px;
}

.profile-content-container .main-info-right p.description {
    margin-top: 30px;
    color: #444440;
    font-size: 11pt;
    word-wrap: break-word;
}

p.club-description {
    white-space: pre-wrap;
    word-wrap: break-word;
    text-align: justify;
}

.profile-content-container .location-info-row {
    margin-top: 40px;
}

.profile-content-container p.location,
.profile-content-container p.info,
.profile-content-container p.club-info-date {
    color: #444440;
    font-size: 9pt;
}

.profile-content-container p.location {
    padding: 5px 0 9px 28px;
    background: url("media/img/location_icon.png") no-repeat scroll 0 4px;
}

.profile-content-container p.info {
    padding: 5px 0 0 28px;
    background: url("media/img/info_icon.png") no-repeat scroll 0 4px;
}

.profile-content-container p.info.check {
    background: url("media/img/icon-check.svg") no-repeat scroll 0 0;
    background-size: 20px 20px;
    min-height: 50px;
    padding: 3px 0 0 29px;
}

.profile-content-container .edit-profile {
    position: absolute;
    top: 0;
    right: 0;
    float: none;
    left: auto;
    padding: 0;
}

/* Add dog */

.add-dog-steps p {
    text-align: center;
    color: #a5a5a5;
    margin: 0;
    padding-top: 10px;
}

.add-dog-form input[type="text"] {
    width: 50%;
}

div.form-col-padding-left {
    padding-left: 15px;
}

.dog-document-button {
    width: 270px;
    max-width: 100%;
}

.add-club-form input[type="text"] {
    width: 50%;
}

.add-club-form input[type="email"] {
    width: 50%;
}

.add-club-form textarea {
    width: 50%;
}

.my-profile-info-checkbox {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding-top: 0;
    color: #2e2e2a;
    font-size: 13pt;
    font-weight: 600;
    line-height: normal;
    cursor: pointer;
}

.my-profile-info-checkbox-text {
    flex: 1;
    min-width: 0;
    line-height: normal;
}

.my-profile-info-checkbox input[type="checkbox"] {
    width: 22px;
    height: 22px;
    min-width: 22px;
    min-height: 22px;
    margin: 0;
    flex-shrink: 0;
    cursor: pointer;
}

/* Title in grey strip above white card: match .view-content horizontal padding (30px) */
.add-event-page-title-grey {
    margin-bottom: 20px;
}

.add-event-page-title-grey h1.title {
    margin-top: 0;
}

.add-event-form input[type="text"] {
    width: 100%;
}

.add-event-form .add-event-form-actions .app-button-secondary,
.add-event-form .add-event-form-actions .btn-primary {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 46px;
    padding: 0 15px;
}

.add-event-form .add-event-form-paytype-column-title {
    font-weight: 700;
}

.add-event-form .add-event-form-class-option {
    display: block;
    font-weight: 500;
    cursor: pointer;
}

.add-event-form .add-event-form-class-option--unchecked,
.add-event-form .add-event-form-class-option:has(input[type="checkbox"]:not(:checked)) {
    color: rgba(31, 42, 54, 0.48);
    font-weight: 400;
}

@media (min-width: 992px) {
    .add-event-form .handler-age-group-col {
        padding-left: 24px;
    }
}

@media (min-width: 992px) {
    /* Small horizontal gap between side-by-side fields in event form */
    .add-event-form > form > .row {
        margin-left: -6px;
        margin-right: -6px;
    }

    .add-event-form > form > .row > .col-md-6,
    .add-event-form > form > .row > .form-group.col-md-6 {
        padding-left: 6px;
        padding-right: 6px;
    }
}

#content {
    position: relative;
}

#content .edit-profile {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
}

.club-edit-profile-btn {
    position: absolute;
    top: 0;
    right: 0;
}

.change-club-profile-logo {
    position: absolute;
    margin-top: 200px;
    margin-left: -40px;
    cursor: pointer;
}

.profile-user-avatar-wrap .change-club-profile-logo {
    right: 0;
    bottom: 0;
    margin: 0;
    padding: 0;
}

.avatar-crop-group {
    margin-top: 15px;
    max-width: 240px;
    margin-left: auto;
    margin-right: auto;
}

.avatar-crop-canvas-wrap {
    width: 240px;
    height: 240px;
    max-width: 100%;
    margin: 0 auto 10px;
    border: 1px solid #d9d9d9;
    background: #f5f5f5;
    overflow: hidden;
}

.avatar-crop-canvas {
    width: 100%;
    height: 100%;
    display: block;
    cursor: move;
}

.avatar-crop-zoom {
    display: block;
    width: 100%;
    max-width: 240px;
    margin: 0 auto;
    box-sizing: border-box;
}

.change-logo-modal-btn {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 52px;
    line-height: normal;
    padding-top: 0;
    padding-bottom: 0;
    text-transform: uppercase;
    text-align: center;
}

.add-new-event-btn-container {
    margin: 20px 0;
    margin-top: 50px;
}

.add-new-event-btn-container--top {
    margin-top: 0;
    margin-bottom: 20px;
}

/* Club / owned events: create button toolbar inside white panel (aligned with profile dogs layout) */
.owned-events-toolbar {
    display: flex;
    align-items: center;
    margin-top: 12px;
    margin-bottom: 0;
}

.owned-events-toolbar--centered {
    justify-content: center;
}

/* Apply to event */

.apply-event-info-block {
    padding: 15px;
    margin-bottom: 30px;
}

.apply-event-info-block p.overview-item-title {
    font-weight: bold;
    font-size: 12pt;
}

.app-page-shell--form .apply-event-info-block p {
    color: #444440;
}

.app-page-shell--form .apply-event-info-block p.overview-item-title {
    color: #1f2a36;
}

.apply-event-info-block p.event-location span {
    background: url("media/img/events_location_icon.png") no-repeat left;
    padding-left: 15px;
}

.apply-event-info-block p.event-date span {
    background: url("media/img/events_date_icon.png") no-repeat left;
    padding-left: 15px;
}

.apply-event-info-block div.apply {
    padding-top: 5px;
}

.checkout-summary-page .checkout-summary-title {
    font-size: 22pt;
    line-height: 1.2;
    margin-bottom: 8px;
}

.checkout-summary-page .checkout-event-title {
    display: block;
    color: #00447a;
    font-size: 12pt;
    font-weight: bold;
    line-height: 1.35;
    margin: 0 0 15px;
}

.checkout-summary-page .checkout-summary-table td.checkout-action-cell::before {
    content: none;
}

/* Keep Angular ng-show/ng-hide reliable when table rows use !important display rules */
.checkout-summary-page .checkout-summary-table tr.ng-hide {
    display: none !important;
}

.checkout-summary-page .checkout-totals-table tr td:first-child {
    text-align: right;
}

.checkout-summary-page .checkout-totals-table tr td:last-child {
    text-align: right;
    white-space: nowrap;
}

.checkout-summary-page .checkout-warning-icon {
    color: #f0ad4e;
}

.checkout-summary-page .checkout-warning-inline {
    display: inline-block;
    margin-top: 4px;
    padding: 4px 8px;
    background-color: #fff8e1;
    border-radius: 4px;
}

.checkout-summary-page .checkout-warning-mobile {
    display: none;
}

.checkout-summary-page .checkout-warning-desktop {
    display: none;
}

@media (min-width: 992px) {
    .checkout-summary-page .checkout-warning-mobile {
        display: none;
    }

    .checkout-summary-page .checkout-warning-desktop {
        display: table-row;
    }
}

.checkout-summary-page .checkout-summary-table tr.checkout-warning-row td {
    background-color: #fff8e1;
    border-top: none;
    border-bottom: 1px solid #ffe08a;
    padding: 8px 12px;
}

.checkout-summary-page .checkout-warning-link {
    margin-left: 6px;
    color: #8a6d3b;
    font-weight: 600;
    text-decoration: underline;
}

.checkout-summary-page .checkout-summary-table td.checkout-ch-cell {
    vertical-align: middle;
}

.checkout-summary-page .checkout-summary-table .checkout-ch-icon {
    display: inline-block;
    width: 1em;
    text-align: center;
    line-height: 1;
}

.checkout-summary-page .checkout-warning-banner {
    margin-top: 6px;
    margin-bottom: 8px;
    padding-top: 8px;
    padding-bottom: 8px;
    background-color: #fff8e1;
    border: 1px solid #ffe08a;
    border-radius: 4px;
}

.checkout-summary-page .checkout-totals-table .checkbox label input[type="checkbox"] {
    margin-right: 6px;
}

.checkout-summary-page .checkout-club-member-top .checkbox label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    padding-left: 0;
    cursor: pointer;
}

.checkout-summary-page .checkout-club-member-top .checkbox label input[type="checkbox"] {
    position: static;
    width: 22px;
    height: 22px;
    min-width: 22px;
    margin: 0;
}

@media (max-width: 1200px) {
    .checkout-summary-page .checkout-totals-table {
        display: table !important;
        width: 100%;
    }

    .checkout-summary-page .checkout-totals-table tbody {
        display: table-row-group !important;
    }

    .checkout-summary-page .checkout-totals-table tr {
        display: table-row !important;
        width: auto !important;
    }

    .checkout-summary-page .checkout-totals-table td {
        display: table-cell !important;
        width: auto !important;
    }
}

@media (max-width: 991px) {

    .checkout-summary-page .checkout-summary-table {
        margin-bottom: 20px;
    }

    .checkout-summary-page .checkout-summary-table thead {
        display: none;
    }

    .checkout-summary-page .checkout-summary-table,
    .checkout-summary-page .checkout-summary-table tbody,
    .checkout-summary-page .checkout-summary-table tr,
    .checkout-summary-page .checkout-summary-table td {
        display: block;
        width: 100%;
    }

    .checkout-summary-page .checkout-summary-table tbody tr {
        border: 1px solid #e7e7e7;
        border-radius: 4px;
        margin-bottom: 12px;
        padding: 8px 10px;
    }

    .checkout-summary-page .checkout-summary-table td {
        border: none;
        border-bottom: 1px solid #f3f3f3;
        padding: 8px 0;
        display: flex;
        justify-content: space-between;
        gap: 10px;
        text-align: left !important;
    }

    .checkout-summary-page .checkout-summary-table td:last-child {
        border-bottom: none;
    }

    .checkout-summary-page .checkout-summary-table td[colspan] {
        display: block;
        border-bottom: none;
        text-align: center !important;
    }

    .checkout-summary-page .checkout-summary-table td[colspan]::before {
        content: none;
    }

    .checkout-summary-page .checkout-summary-table td::before {
        content: attr(data-label);
        font-weight: 600;
        color: #555;
        flex: 0 0 45%;
        max-width: 45%;
    }

    .checkout-summary-page .checkout-summary-table td.checkout-action-cell {
        justify-content: flex-end;
    }

    .checkout-summary-page .checkout-summary-table td.checkout-dog-name-cell {
        flex-wrap: wrap;
    }

    .checkout-summary-page .checkout-summary-table td .checkout-warning-inline {
        display: block;
        width: 100%;
        margin-top: 8px;
    }

    .checkout-summary-page .checkout-warning-mobile {
        display: block;
    }

    .checkout-summary-page .checkout-warning-desktop {
        display: none !important;
    }
}

@media (min-width: 992px) and (max-width: 1200px) {
    .checkout-summary-page .checkout-summary-table {
        display: table !important;
        width: 100%;
    }

    .checkout-summary-page .checkout-summary-table thead {
        display: table-header-group !important;
    }

    .checkout-summary-page .checkout-summary-table tbody {
        display: table-row-group !important;
    }

    .checkout-summary-page .checkout-summary-table tr {
        display: table-row !important;
        width: auto !important;
    }

    .checkout-summary-page .checkout-summary-table th,
    .checkout-summary-page .checkout-summary-table td {
        display: table-cell !important;
        width: auto !important;
        padding: 8px !important;
    }

    .checkout-summary-page .checkout-summary-table td.checkout-ch-cell {
        text-align: left;
    }
}

@media (max-width: 991px) {
    .checkout-summary-page .checkout-summary-title {
        font-size: 24px;
    }
}

.apply-event-block {
    padding: 30px;
}

.contest-apply-card {
    padding: 24px;
}

.contest-apply-form .contest-field-control > * {
    width: 100%;
}

.event-view-quick-button {
    width: 80%;
    margin: auto;
    margin-bottom: 10px;
    margin-top: 10px;
}

div.review-apply-event-btn {
    float: right;
    margin: 30px;
    width: 300px;
}

div.review-apply-event-btn button {
    word-wrap: break-word;
    white-space: normal;
    width: inherit;
}

/* Collapse */

.fci-collapse {
    margin-top: 10px;
}

.appl-list-page .appl-item .head {
    display: flex;
    align-items: center;
    gap: 12px;
}

.appl-list-page .profile-content-container .appl-list-page-menu {
    margin-top: 4px;
}

@media (max-width: 991px) {
    .appl-list-page .appl-list-page-menu.page-menu-container ul.menu {
        font-size: 13px;
        gap: 16px;
    }

    .appl-list-page .appl-list-page-menu ul.menu li a {
        padding-top: 8px;
        padding-bottom: 8px;
    }
}

.appl-list-page .appl-item {
    border: 1px solid #c7dcef;
    background: #ffffff;
}

.appl-list-page .fci-collapse div.head {
    background: #e6f2ff;
    color: #00447a;
}

.appl-list-page .fci-collapse div.head p.title,
.appl-list-page .fci-collapse p.title a,
.appl-list-page .fci-collapse div.head span.open-close-icon {
    color: #00447a;
}

.appl-list-page p.application-list-message.bg-danger {
    background-color: #fbeaea;
    border: 1px solid #f1c7c7;
}

.appl-list-page .appl-status-square {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-right: 8px;
    border: 1px solid #d9d9d9;
    vertical-align: middle;
    border-radius: 2px;
}

.appl-list-page .appl-status-square-uncompleted {
    background-color: #ffffff;
}

.appl-list-page .appl-status-square-rejected {
    background-color: #f8b6c8;
    border-color: #f19ab2;
}

.appl-list-page .appl-status-square-accepted {
    background-color: #9ad18b;
    border-color: #7fba70;
}

.appl-list-page .appl-status-square-new {
    background-color: #ffe27a;
    border-color: #f6cf4f;
}

.appl-list-page .appl-item-head-main {
    flex: 1 1 auto;
    min-width: 0;
}

.appl-list-page .appl-item-head-toggle {
    flex: 0 0 auto;
    margin-left: auto;
}

.appl-list-page .appl-item-content-inner {
    padding: 15px;
}

.appl-list-page .appl-item-message-row {
    margin-bottom: 10px;
}

.appl-list-page .appl-item-body {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 20px;
}

.appl-list-page .appl-item-info {
    flex: 1 1 420px;
}

.appl-list-page .appl-item-status {
    flex: 0 1 220px;
    padding-right: 15px;
}

.appl-list-page .appl-item-actions {
    flex: 0 1 280px;
    margin-left: auto;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-end;
    gap: 10px;
    align-content: flex-start;
}

.appl-list-page .appl-item-action {
    flex: 0 0 auto;
    width: 200px;
    max-width: 200px;
}

.appl-list-page .appl-item-action .btn-group {
    display: block;
    width: 100%;
}

.appl-list-page .appl-item-actions .btn-primary,
.appl-list-page .appl-item-actions .btn-danger,
.appl-list-page .appl-item-actions .app-button-secondary {
    white-space: normal;
    overflow-wrap: anywhere;
    box-sizing: border-box;
    height: auto;
    min-height: 50px;
    padding: 8px 12px;
    text-align: center;
    line-height: 1.2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.appl-list-page .appl-item-price {
    white-space: nowrap;
}

.appl-list-page .appl-item-price-header h5,
.appl-list-page .appl-item-total-row h5 {
    display: flex;
    gap: 12px;
    margin: 0 0 8px 0;
}

.appl-list-page .appl-item-total-row h5 {
    justify-content: space-between;
}

.appl-list-page .appl-item-total-right h5 {
    justify-content: flex-end;
}

.appl-list-page .appl-item-list-header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}

.appl-list-page .appl-item-list-header h5 {
    margin: 0;
}

.appl-list-page .animal-list li p {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.appl-list-page .appl-item-entry-label {
    flex: 1 1 auto;
    min-width: 0;
}

@media (max-width: 991px) {
    .appl-list-page .appl-item-status {
        flex: 1 1 100%;
        margin-left: 0;
        padding-right: 0;
    }

    .appl-list-page .appl-item-actions {
        flex: 1 1 100%;
        margin-left: 0;
        padding-right: 0;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-end;
        align-items: flex-start;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .appl-list-page .appl-item-actions {
        flex-wrap: nowrap;
        align-items: stretch;
    }

    .appl-list-page .appl-item-action {
        flex: 1 1 0;
        width: auto;
        max-width: none;
    }
}

@media (max-width: 767px) {
    .appl-list-page .appl-item-actions {
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: stretch;
    }

    .appl-list-page .appl-item-action {
        flex: 1 1 100%;
        width: 100%;
        max-width: 100%;
    }
}

.fci-collapse div.head {
    background: #00447A;
    color: #FFFFFF;
    padding: 10px 15px 10px 15px;
    cursor: pointer;
}

.fci-collapse div.head p.title {
    color: #FFFFFF;
    padding: 0;
    margin: 0;
}

.fci-collapse div.head span.open-close-icon {
    display: block;
    width: 15px;
    text-align: center;
}

.fci-collapse div.content {}

.fci-collapse div.content ul {
    padding: 0;
    margin: 0;
}

.fci-collapse div.content ul li {
    list-style-type: none;
    padding: 20px 20px 20px 30px;
}

.fci-collapse div.content ul li div.status-message {
    font-size: 8pt;
}

.fci-collapse div.content ul li.accepted {
    background-color: rgba(154, 248, 154, 0.36);
}

.fci-collapse div.content ul li.accepted .status-message {
    color: rgba(66, 116, 66, 0.31);
}

.fci-collapse div.content ul li.rejected {
    background-color: rgba(255, 0, 0, 0.18);
}

.fci-collapse div.content ul li.rejected .status-message {
    color: rgba(153, 0, 0, 0.41);
}

.fci-collapse div.content ul li.new {
    background-color: rgba(211, 211, 211, 0.31);
}

.fci-collapse div.content ul li.new .status-message {
    color: rgba(137, 137, 137, 0.31);
}

.fci-collapse div.content p {
    margin: 0;
}

.fci-collapse div.content .collapse-info p {
    color: #444440;
}

.fci-collapse div.content ul.animal-list li {
    padding: 0 0 0 0;
    margin: 10px 0 0 30px;
    list-style-type: decimal;
}

.fci-collapse p.title a {
    color: #FFFFFF;
    text-decoration: none;
}

.fci-collapse p.title a:hover {
    text-decoration: underline;
}

/* Modal */

.document-preview-link {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-align: left;
    text-overflow: ellipsis;
    vertical-align: middle;
    white-space: nowrap;
}

.document-preview-cell {
    max-width: 0;
    overflow: hidden;
}

.document-preview-cell .document-preview-link {
    width: 100%;
}

.document-preview-link[disabled] {
    color: #999;
    cursor: not-allowed;
    text-decoration: none;
}

.modal-header {
    background: #00447A;
    color: #FFFFFF;
}

.modal-header a {
    color: #FFFFFF;
}

.modal-header a:hover {
    color: #FFFFFF;
}

.modal-title {
    color: #FFFFFF;
}

.modal-body {
    background: #FFFFFF;
    padding: 20px;
}

.modal-backdrop.in {
    opacity: 0.4 !important;
}

.modal {
    text-align: center;
}

/* Keep GDPR apply popup in a stable viewport position on phones */
.gdpr-disclaimer-modal.modal {
    text-align: center;
}

.gdpr-disclaimer-modal.modal.fade .modal-dialog,
.gdpr-disclaimer-modal.modal.in .modal-dialog {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}

.gdpr-disclaimer-modal.modal .modal-dialog {
    margin: 30px auto;
}

.gdpr-disclaimer-modal .gdpr-disclaimer-footer {
    display: flex;
    gap: 8px;
}

.gdpr-disclaimer-modal .modal-content {
    max-width: 920px;
    margin: 0 auto;
}

.gdpr-disclaimer-modal .modal-body {
    padding: 28px 26px 18px;
}

.gdpr-disclaimer-modal .gdpr-disclaimer-text {
    white-space: pre-wrap;
    display: block;
    font-size: 20px;
    line-height: 1.2;
    color: #222;
    margin-bottom: 26px;
}

.gdpr-disclaimer-modal .gdpr-consent-box {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 18px 20px;
    border: 2px solid #ddd;
    background: #fff;
    margin-bottom: 6px;
    cursor: pointer;
}

.gdpr-disclaimer-modal .gdpr-consent-box.is-checked {
    border-color: #dfeede;
    background: #fbfffb;
}

.gdpr-disclaimer-modal .gdpr-consent-box input[type="checkbox"] {
    width: 42px;
    height: 42px;
    min-width: 42px;
    margin: 0;
}

.gdpr-disclaimer-modal .gdpr-consent-label {
    font-size: 20px;
    line-height: 1.2;
    color: #222;
    font-weight: 700;
}

.gdpr-disclaimer-modal .gdpr-disclaimer-footer .btn,
.gdpr-disclaimer-modal .gdpr-disclaimer-footer .app-button-secondary {
    flex: 1 1 0;
    flex-basis: 0;
    width: 0;
    min-width: 0;
    box-sizing: border-box;
    font-size: 22px;
    font-weight: 400;
    letter-spacing: normal;
    line-height: 1.2;
    min-height: 68px;
    text-transform: uppercase;
}

.gdpr-disclaimer-modal .gdpr-disclaimer-footer .btn span,
.gdpr-disclaimer-modal .gdpr-disclaimer-footer .app-button-secondary span {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
}

.gdpr-disclaimer-modal .gdpr-disclaimer-footer .btn + .btn,
.gdpr-disclaimer-modal .gdpr-disclaimer-footer .app-button-secondary + .btn {
    margin-left: 0;
}

.checkout-confirm-action .btn.btn-success {
    padding: 15px;
    border: none;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 14px;
}

/* checkout action area — mobile first, desktop override */

/* --- mobile (default) --- */
.checkout-summary-page .checkout-action-row {
    width: 100%;
    margin-bottom: 8px;
}

.checkout-summary-page .checkout-buttons-row {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.checkout-summary-page .checkout-buttons-row .checkout-bottom-action {
    width: 100%;
    box-sizing: border-box;
}

.checkout-summary-page .checkout-buttons-row .checkout-bottom-action > button,
.checkout-summary-page .checkout-buttons-row .checkout-confirm-action > span,
.checkout-summary-page .checkout-buttons-row .checkout-confirm-action .btn.btn-success {
    height: 100%;
    width: 100%;
}

.checkout-summary-page .checkout-buttons-row .checkout-confirm-action > span {
    display: flex;
    width: 100%;
}

.checkout-summary-page .checkout-club-member-top {
    display: flex;
    justify-content: flex-start;
    margin-top: 8px;
}

.checkout-summary-page .checkout-club-member-top .checkbox {
    width: 100%;
    box-sizing: border-box;
}

/* --- desktop --- */
@media (min-width: 992px) {
    .checkout-summary-page .checkout-buttons-row {
        flex-direction: row;
        justify-content: flex-end;
        gap: 0;
    }

    .checkout-summary-page .checkout-buttons-row .checkout-bottom-action {
        width: 25%;
    }

    /* on desktop: cancel left (with right margin as spacer), confirm right */
    .checkout-summary-page .checkout-buttons-row .checkout-confirm-action {
        order: 2;
    }

    .checkout-summary-page .checkout-buttons-row .checkout-bottom-action:not(.checkout-confirm-action) {
        order: 1;
        padding-right: 10px;
        box-sizing: border-box;
    }

    .checkout-summary-page .checkout-club-member-top {
        justify-content: flex-end;
    }

    .checkout-summary-page .checkout-club-member-top .checkbox {
        width: 25%;
    }
}

.gdpr-disclaimer-modal .gdpr-disclaimer-footer .btn.btn-success[disabled],
.gdpr-disclaimer-modal .gdpr-disclaimer-footer .btn.btn-success:disabled,
.gdpr-disclaimer-modal .gdpr-disclaimer-footer .btn.btn-success.disabled,
.checkout-confirm-action .btn.btn-success[disabled],
.checkout-confirm-action .btn.btn-success:disabled,
.checkout-confirm-action .btn.btn-success.disabled {
    opacity: 0.55;
    background: #bcbcbc;
    border-color: #bcbcbc;
    color: #ffffff;
    cursor: not-allowed;
}

/* events/apply/checkout upload modals — avoid 49%/50% inline-block wrap on phones */
.modal-body .checkout-modal-actions {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    align-items: stretch;
    margin-bottom: 0;
}

.modal-body .checkout-modal-actions > .app-button-secondary,
.modal-body .checkout-modal-actions > .btn {
    flex: 1 1 0;
    min-width: 0;
    width: auto !important;
    margin: 0;
    box-sizing: border-box;
}

@media screen and (max-width: 767px) {
    /* DOM order is cancel then confirm (cancel left / confirm right in row); reverse column so primary is on top */
    .modal-body .checkout-modal-actions {
        flex-direction: column-reverse;
    }

    .modal-body .checkout-modal-actions > .app-button-secondary,
    .modal-body .checkout-modal-actions > .btn ,
    .checkout-success-actions button {
        width: 100% !important;
        flex: none;
    }
}

.modal-dialog {
    text-align: left;
}

@media screen and (max-width: 767px) {

    .modal-dialog {
        display: block;
        margin: 10px auto;
    }

    .gdpr-disclaimer-modal.modal .modal-dialog {
        margin: 16vh auto 12px;
    }

    .gdpr-disclaimer-modal .gdpr-disclaimer-text {
        font-size: 14px;
        line-height: 1.35;
    }

    .gdpr-disclaimer-modal .gdpr-consent-label {
        font-size: 14px;
    }

    .gdpr-disclaimer-modal .gdpr-consent-box input[type="checkbox"] {
        width: 34px;
        height: 34px;
        min-width: 34px;
    }

    .gdpr-disclaimer-modal .gdpr-disclaimer-footer .btn,
    .gdpr-disclaimer-modal .gdpr-disclaimer-footer .app-button-secondary {
        min-height: 48px;
        font-size: 18px;
    }

    /* Bootstrap CSS is loaded after app.css, so use higher specificity on mobile */
    html body .modal.fade .modal-dialog,
    html body .modal.in .modal-dialog {
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        -o-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    html body .modal .modal-dialog {
        margin: 12vh auto 12px;
        max-height: calc(100vh - 24px);
    }

    html body .modal .modal-content {
        max-height: calc(100vh - 24px);
        display: flex;
        flex-direction: column;
    }

    html body .modal .modal-body {
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media screen and (min-width: 768px) {
    .modal:before {
        display: inline-block;
        vertical-align: middle;
        content: " ";
        height: 100%;
    }
    .modal-dialog {
        display: inline-block;
        vertical-align: middle;
    }

    .document-preview-modal.modal {
        text-align: right;
    }

    .document-preview-modal.modal .modal-dialog {
        margin-left: 0;
        margin-right: 0;
    }

    .document-preview-modal .modal-header {
        cursor: move;
        cursor: grab;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    .document-preview-modal .modal-header:active {
        cursor: grabbing;
    }

    .document-preview-modal .modal-header a {
        cursor: pointer;
    }

    .document-preview-modal .document-preview-dragging iframe {
        pointer-events: none;
    }
}

/* datatables style */

.dataTables_length,
.dataTables_filter,
.dataTables_info,
.dataTables_paginate {
    display: inline-block;
    width: 50%;
    margin: 0 0 20px;
}

.dataTables_paginate,
.dataTables_filter {
    text-align: right;
}

.dataTables_paginate span > a, .dataTables_paginate > a,
.dataTables_filter input {
    margin-left: 15px;
    cursor: pointer;
}

table.fci-table.dataTable tr th {
    position: relative;
    cursor: pointer;
}

table.fci-table.dataTable td {
    padding: 0px;
}

table.fci-table.dataTable tr.ng-scope td,
table.fci-table.dataTable table td {
    padding: 10px 10px 10px 20px;
}

table.fci-table.dataTable table tr:last-child td {
    border-bottom: 0px;
}

table.fci-table.dataTable td>.glyphicon-minus-sign,
table.fci-table.dataTable .parent td>.glyphicon-plus-sign {
    display: none;
}

table.fci-table.dataTable td>.glyphicon-plus-sign,
table.fci-table.dataTable .parent td>.glyphicon-minus-sign {
    display: block;
    cursor: pointer;
}

table .details hr {
    display: block;
    width: 600px;
    height: 1px;
    margin: 0px;
    background: none;
    border: none !important;
}

table .child ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

table .details {
    padding: 20px 20px 50px 50px;
}

table .details h4 {
    margin-bottom: 10px;
}

table .details h5 {
    color: #337ab7;
    display: block;
    margin-bottom: 10px;
    cursor: pointer;
    position: relative;
    -webkit-user-select: none;
    user-select: none;
}

table .details .expand {
    display: none;
}

table .details .expand.open {
    display: block;
    margin-bottom: 15px;
}

table .details ul+h4 {
    margin-top: 40px;
}

table.dataTable>tbody>tr.child ul {
    width: 100%;
    margin-left: 20px;
}

table.dataTable>tbody>tr.child ul li {
    padding: 0px;
}

table.fci-table.dataTable table {
    width: 100%;
}

.sorting_desc:after,
.sorting_asc:after,
table .details h5:before {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: 14px;
    left: 5px;
    border-style: solid;
    border-width: 4px 4px 0 4px;
    border-color: #007bff transparent transparent transparent;
}

table .details h5:before {
    top: 6px;
    left: -12px;
}

.sorting_desc:after,
table .details h5.open:before {
    border-width: 0 4px 4px 4px;
    border-color: transparent transparent #007bff transparent;
}

table.fci-table.dataTable {
    margin-bottom: 30px;
}

table.fci-table.dataTable tr th {
    padding-left: 20px;
}

/* Table styles */

table.fci-table {
    margin-bottom: 50px;
}

table.fci-table.full-width {
    width: 100%;
}

table.fci-table tr th {
    background: #f0f0f0;
    padding: 7px 10px 7px 10px;
    font-weight: normal;
}

table.fci-table tr.ACCEPTED td {
    background: #eaf6e3;
}

table.fci-table tr:hover {
    background: #F9F9F9;
}

table.fci-table tr td {
    padding: 10px 10px 10px 10px;
    border-bottom: 1px solid #f0f0f0;
}

@media (max-width: 991px) {
    .dog-table-hide-small {
        display: none;
    }
}

@media (max-width: 991px) {
    div.form-col-padding-left {
        padding-left: 0;
    }

    .content-row {
        padding: 8px 8px 12px 8px;
    }

    .profile-content-container .content-row {
        padding: 8px 8px 12px 8px;
    }

    .profile-dogs-content {
        padding: 4px 2px;
    }

    .profile-dogs-content .dogs-toolbar-row {
        flex-wrap: wrap;
        align-items: center;
        margin-top: 2px;
        margin-bottom: 6px;
        gap: 4px;
    }

    .profile-dogs-content .dogs-toolbar-row .dogs-toolbar-button-col,
    .profile-dogs-content .dogs-toolbar-row .dogs-toolbar-search-col {
        align-items: center;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .profile-dogs-content .dogs-toolbar-row .dogs-toolbar-search-col {
        justify-content: flex-start;
        text-align: left;
    }

    .profile-dogs-content .dogs-toolbar-row .dogs-toolbar-search-col .form-control {
        width: 100%;
        max-width: 220px;
        height: 30px;
        padding: 4px 8px;
    }

    .profile-dogs-content table.fci-table {
        margin-bottom: 8px;
    }

    .profile-dogs-content table.fci-table tr th,
    .profile-dogs-content table.fci-table tr td {
        padding: 2px 4px;
        font-size: 12px;
    }

    .profile-dogs-content button.btn-primary {
        font-size: 10px;
        padding: 4px 6px;
    }

    .profile-dogs-content .dog-actions-cell {
        width: 52px;
        white-space: nowrap;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 4px;
        vertical-align: middle;
    }

    .profile-dogs-content .dog-edit-btn,
    .profile-dogs-content .dog-delete-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 26px;
        height: 26px;
        line-height: 26px;
        text-align: center;
        margin: 0;
        padding: 0;
        vertical-align: top;
    }

    .profile-dogs-content .dog-edit-icon {
        width: 26px;
        height: 26px;
        display: block;
    }

    .profile-dogs-content .dog-delete-btn {
        font-size: 12px;
        line-height: 26px;
    }

    .profile-dogs-content .dog-delete-btn.fa-lg {
        font-size: 12px;
        line-height: 26px;
    }

    .profile-dogs-content .dog-sort-mobile {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
        margin-bottom: 8px;
    }

    .profile-dogs-content .dog-sort-mobile button {
        border: 1px solid #d5d5d5;
        background: #ffffff;
        color: #00447a;
        font-size: 14px;
        line-height: 1.2;
        padding: 8px 10px;
    }

    .profile-dogs-content table.fci-table {
        display: none;
    }

    .profile-dogs-content .dog-cards-mobile {
        display: block;
    }

    .profile-dogs-content .dog-card {
        background: #ffffff;
        border: 1px solid #ededed;
        padding: 12px;
        margin-bottom: 8px;
        cursor: pointer;
    }

    .profile-dogs-content .dog-card-name {
        color: #00447a;
        font-size: 20px;
        line-height: 1.2;
        font-weight: 600;
        margin-bottom: 10px;
        word-break: break-word;
    }

    .profile-dogs-content .dog-card-row {
        display: flex;
        justify-content: space-between;
        gap: 10px;
        margin-bottom: 6px;
    }

    .profile-dogs-content .dog-card-label {
        color: #777;
        font-size: 14px;
        line-height: 1.25;
    }

    .profile-dogs-content .dog-card-value {
        color: #333;
        font-size: 16px;
        line-height: 1.25;
        text-align: right;
        word-break: break-word;
    }

    .profile-dogs-content .dog-card-actions {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 8px;
        margin-top: 8px;
    }

    .profile-dogs-content .dog-card .dog-edit-btn,
    .profile-dogs-content .dog-card .dog-delete-btn {
        width: 32px;
        height: 32px;
        line-height: 32px;
    }

    .profile-dogs-content .dog-card .dog-edit-icon {
        width: 32px;
        height: 32px;
    }
}

table.fci-table tr.clickable-row:hover td {
    background: #F9F9F9;
}

table tr.REJECTED td {
    background: rgba(255, 0, 0, 0.07);
}

.fci-select select.status-select {
    font-size: 10pt;
}

.green_button-link {
    background-color: #009544;
    text-transform: uppercase;
    color: #fff;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 10px;
    padding-left: 10px;
    font-size: 14px;
}

.secondary_button-link {
    background-color: #ffffff;
    border: 1px solid #00447a;
    display: inline-block;
    text-transform: uppercase;
    color: #00447a;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 10px;
    padding-left: 10px;
    margin-top: 2px;
    margin-bottom: 2px;
    margin-left: 4px;
    margin-right: 4px;
    font-size: 14px;
    text-decoration: none;
}

.secondary_button-link:hover,
.secondary_button-link:focus,
.secondary_button-link:active {
    background: #dfefff;
    border-color: #9ec6eb;
    color: #00447a;
    text-decoration: none;
}

.success-message-text {
    font-size: 14px;
    display: inline;
}

.button-link {
    text-transform: uppercase;
    color: #fff;
    padding: 10px;
    font-size: 14px;
}

.button-link.ACCEPTED {
    background-color: #009544;
}

.button-link.NEW,
.button-link.EDITED {
    background-color: #454545;
}

.button-link.REJECTED {
    background-color: #D32F00;
    color: #FFF;
}

p.rejected-text-content {
    background-color: #D32F00;
    color: #FFF;
}

span.accepted {
    color: #009544;
}

span.new {
    color: #454545;
}

span.rejected {
    color: #D32F00;
}

p.new-text-content {
    background-color: #454545;
    color: #FFF;
}

.more-info-btn {
    background-color: #454545;
    width: 120px;
    padding: 8px;
    text-align: center;
    font-size: 7pt;
    color: #FFF;
    cursor: pointer;
}

p.accepted-text-content {
    background-color: #009544;
    color: #FFF;
}

.decline-message-dialog {
    font-weight: bolder;
}

a.green_button-link :link {
    background-color: #009544;
    color: #fff;
    text-decoration: none;
}

a.green_button-link :visited {
    background-color: #009544;
    color: #fff;
    text-decoration: none;
}

a.green_button-link :hover {
    background-color: #006504;
    color: #fff;
    text-decoration: none;
}

a.green_button-link :active {
    background-color: #006504;
    color: #fff;
    text-decoration: none;
}

a.registration-success-link:active {
    background-color: #009544;
    color: #fff;
    text-decoration: none;
}

button.event-view-quick-button.accept {
    background-color: #009544;
    color: #fff;
    text-decoration: none;
}

.col-form input {
    width: 100%;
}

.col-form input[type="radio"] {
    width: auto;
}

.col-form textarea {
    width: 100%;
}

ul.competitions-list {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.dogs-list li,
.competitions-list li {
    border-bottom: 1px solid #f0f0f0;
}

.competitions-list li {
    padding: 20px 20px 20px 30px;
}

.dog-info-container p.dog-info-breed-text {
    text-transform: uppercase;
    font-size: 14px;
    color: #949494;
}

.dog-info-container td.dog-info-legend {
    color: #949494;
    padding-right: 20px;
    padding-bottom: 8px;
    padding-top: 8px;
}

.dog-info-container tr.dog-info-rows {
    padding: 10px;
    font-size: 13px;
}

.dog-info-container #content {
    background: #FFFFFF;
    overflow: hidden;
}

.dog-info-container .content-row .main-info-right {
    padding: 20px 30px 20px 30px;
}

.dog-view-document-row {
    margin-bottom: 8px;
}

.dog-view-document-actions {
    text-align: right;
}

.dog-view-document-remove {
    color: #c92a2a;
    cursor: pointer;
    margin-left: 12px;
    vertical-align: middle;
}

.dog-info-container {
    color: #444440;
}

.info-meta-block {
    padding: 20px 40px;
    top: 0;
    position: relative;
}

.info-meta-block h3:first-child {
    margin-top: 0;
}

.info-meta-block h3 {
    color: #00447a;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.02em;
}

.info-meta-block p {
    color: #000;
    font-size: 9pt;
    width: 100%;
    word-wrap: break-word;
}

.info-meta-block-edit {
    position: absolute;
    right: 0;
    top: 30px;
}

.info-block-divider {
    width: 100%;
    height: 2px;
    margin-top: 10px;
    padding-bottom: 20px;
    border-bottom: 1px solid #c7c7c7;
    margin-bottom: 40px;
}

div.event-info {
    top: 0;
}

.event-meta-container {
    background: 100%;
    background: white;
    margin-bottom: 120px;
}

.event-meta-content {
    padding: 80px;
    width: 1280px;
    margin-left: auto;
    margin-right: auto
}

.event-price-col,
.event-price-name-col {
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 10px;
    padding-top: 10px;
}

.event-price-header {
    background: rgba(137, 137, 137, 0.31);
    text-transform: uppercase;
}

.event-price-header th {
    padding-bottom: 10px;
    padding-top: 10px;

}

.row.welcome-icons {
    width: 80%;
    margin: 0 auto;
}

.welcome-icons a {
    font-family: 'Roboto', sans-serif;
    font-weight: 600;
    display: block;
    height: 145px;
    border-radius: 10px;
    margin: 30px 10px 50px;
    color: #00437c;
    text-align: center;
    padding-top: 30px;
    box-sizing: border-box;
}

.welcome-icons svg {
    display: block;
    margin: 0 auto 20px;
}

.welcome-icons span {
    display: block;
    position: absolute;
    width: 100%;
    top: 120px;
}

.welcome-icons a:hover {
    background: #00437c;
    color: #fff;
    text-decoration: none;
}

.welcome-icons a:hover svg path {
    fill: #fff;
}

.embed-responsive {
    position: relative;
}

.embed-responsive .video-overlay {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    background: tomato;
    z-index: 2;
    background: #f7f5c9 url('media/img/video-overlay.png') center center no-repeat;
    background-size: auto 100%;
    margin-bottom: 50px;
    cursor: pointer;
}

.embed-responsive .video-overlay span {
    display: block;
    width: 69px;
    height: 67px;
    background: url('media/img/play-button.svg') center center no-repeat;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -34px 0 0 -34px;
    text-indent: -4700px;
}

.embed-responsive .video-overlay:hover span {
    opacity: 0.5;
}

/* textAngular  */
.ta-scroll-window.form-control {
    min-height: 260px;
    height: auto;
    overflow-y: visible;
}

.ta-scroll-window > .ta-bind {
    min-height: 260px;
    height: auto;
    font-size: 16px;
    line-height: 1.55;
}

.ta-bind {
    border: 1px solid #d5d5d5;
}

/* Event form: textAngular toolbar — square controls, wrap to new rows (no horizontal scroll) */
.add-event-form .ta-root .btn-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
    max-width: 100%;
    overflow: visible;
    position: sticky;
    top: 0;
    z-index: 6;
    background-color: #fff;
    padding-top: 4px;
    padding-bottom: 4px;
    border-bottom: 1px solid #e8e8e8;
}

.add-event-form .ta-root .btn-toolbar > .btn-group {
    display: inline-flex;
    flex-wrap: wrap;
    float: none !important;
    vertical-align: middle;
    margin-right: 0;
    margin-bottom: 0;
    align-items: center;
    gap: 4px;
}

.add-event-form .ta-root .btn-toolbar .btn-group > .btn + .btn {
    margin-left: 0;
}

.add-event-form .ta-root .btn-toolbar .btn-group > .btn {
    float: none !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px;
    min-height: 40px;
    padding: 0 !important;
    flex: 0 0 40px;
    box-sizing: border-box;
    line-height: 1;
    font-size: 12px;
    border-radius: 2px !important;
}

.add-event-form .ta-root .btn-toolbar .btn-group > .btn > i {
    margin: 0;
    line-height: 1;
}

.ta-bind table {
    border-collapse: collapse;
}

.ta-bind th,
.ta-bind td {
    padding: 6px 10px;
    vertical-align: top;
}

/* textAngular image popover: min / max width (taToolFunctions decorator in app.js) */
.add-event-form .popover .ta-img-minmax-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 8px 10px;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #e5e5e5;
}

.add-event-form .popover .ta-img-minmax-field {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.add-event-form .popover .ta-img-minmax-label {
    margin: 0;
    font-size: 11px;
    font-weight: 600;
    color: #555;
}

.add-event-form .popover .ta-img-minmax-input {
    width: 118px;
    height: 28px;
    padding: 2px 6px;
    font-size: 12px;
}

.add-event-form .popover .ta-img-minmax-apply {
    margin-bottom: 1px;
}

/* Options menu */

.fci-collapse ul.list-options-dropdown-menu li {
    padding: 0px 0 0px 0 !important;
}

.fci-collapse ul.list-options-dropdown-menu li a {
    padding: 5px 10px 5px 10px !important;
    margin: 0 !important;
}

.modal-body p {
    color: #444444;
}

p.warning-messsage {
    padding: 10px 15px 10px 15px;
}

p.application-list-message {
    margin-top: 10px !important;
    padding: 10px 15px 10px 15px;
}

div.white:has(application-view) {
    min-width: 960px;
}

.application-page div.white:has(application-view),
.event-application-page div.white:has(application-view) {
    min-width: 0;
}

.application-page application-view,
.event-application-page application-view {
    display: block;
    min-width: 0;
}

.nav,
.carousel,
.panel-title a {
    cursor: pointer;
}

/*[aria-hidden="true"] {
    visibility: hidden;
}*/

.collapse {
    display: none;
}

.collapse.in {
    display: block;
}

tr.collapse.in {
    display: table-row;
}

tbody.collapse.in {
    display: table-row-group;
}

.panel-default {
    margin-top: 10px;
}

.panel-heading {
    border: 1px solid #ddd;
}

.panel-heading .panel-title {
    margin-left: 10px;
}

.panel-collapse .panel-body {
    border: 1px solid #ddd;
    border-top: none;
}

.showdog-table {
    padding: 40px;
}

.group-search-table {
    position: relative;
    padding: clamp(10px, 2.5vw, 40px);
}

.group-search-table .club-applications-header__event {
    display: block;
    margin: 0 0 6px;
    padding: 8px 10px;
    border: 1px solid transparent;
    border-radius: 4px;
    color: inherit;
    text-decoration: none;
    cursor: pointer;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.group-search-table .club-applications-header__event:last-child {
    margin-bottom: 0;
}

.group-search-table .club-applications-header__event:hover {
    background: #f0f6fb;
    border-color: rgba(0, 68, 122, 0.25);
    text-decoration: none;
    color: inherit;
}

.group-search-table .club-applications-header__event--current {
    background: #e8f4ff;
    border-color: #00447a;
    cursor: default;
}

.group-search-table .club-applications-header__event--current:hover {
    background: #e8f4ff;
    border-color: #00447a;
}

.group-search-table .club-applications-header__event-body {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
}

.group-search-table .club-applications-header__event-body event-date-name {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
}

.group-search-table .club-applications-header__event-id {
    flex: 0 0 auto;
    color: #5f7080;
    font-size: 13px;
    line-height: 1.4;
    padding-top: 2px;
}

.group-search-table .group-search-form .form-group {
    margin-bottom: 14px;
}

.group-search-table .group-search-form .row {
    margin-left: -8px;
    margin-right: -8px;
}

.group-search-table .group-search-form .row > [class*="col-"] {
    padding-left: 8px;
    padding-right: 8px;
}

.group-search-table .group-search-form__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 4px 0 0;
}

.group-search-table .group-search-form__actions .btn-primary {
    margin: 0;
}

.group-search-table .ui-grid-cell-contents {
    white-space: normal;
}

.group-search-table .ui-grid-row:hover .ui-grid-cell {
    cursor: pointer;
    background-color: #eaf4ff !important;
}

.group-search-table form input[type="text"],
.group-search-table .fci-select,
.group-search-table .fci-select select {
    width: 100%;
}

@media (max-width: 767px) {
    .group-search-table .club-applications-header__event {
        padding: 8px;
    }

    .group-search-table .club-applications-header__event-body {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }

    .group-search-table .group-search-form__actions {
        flex-direction: column;
    }

    .group-search-table .group-search-form__actions .btn-primary {
        width: 100%;
    }
}

.ring-setup-table {
    padding: 20px 20px 20px 0;
}

.ring-setup-table>div {
    padding: 0 20px
}

.ring-setup-table>div:last-child {
    padding: 0;
}

/* Event catalog: shrink-wrapped toolbar so row 2 matches primary buttons width; e-Critiques uses margin-left:auto inside that width */
.ring-setup-table .event-catalog-reports-toolbar {
    display: inline-flex;
    flex-direction: column;
    align-items: stretch;
    max-width: 100%;
    box-sizing: border-box;
    margin-bottom: 14px;
    vertical-align: top;
}

.ring-setup-table .event-catalog-reports-primary {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    max-width: 100%;
}

.ring-setup-table .event-catalog-primary-report-download-icon {
    margin-right: 0.45em;
}

@supports not (gap: 10px) {
    .ring-setup-table .event-catalog-reports-primary {
        margin: -5px;
    }

    .ring-setup-table .event-catalog-reports-primary>.btn {
        margin: 5px;
    }
}

.ring-setup-table .event-catalog-reports-secondary {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 12px;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

.ring-setup-table .event-catalog-other-report-select-wrap {
    position: relative;
    display: inline-flex;
    flex-direction: row;
    align-items: stretch;
    min-width: 0;
}

/* Native select chevron cannot be repositioned; hide it and draw caret (or spinner) in the affix. */
.ring-setup-table .event-catalog-other-report-select-wrap select.event-catalog-other-report-select.button-primary {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 15px 3rem 15px 15px;
    background-image: none;
}

.ring-setup-table .event-catalog-other-report-select-wrap select.event-catalog-other-report-select.button-primary::-ms-expand {
    display: none;
}

.ring-setup-table .event-catalog-other-report-select-affix {
    position: absolute;
    top: 50%;
    right: 1.25rem;
    transform: translateY(-50%);
    width: 1.1em;
    text-align: center;
    line-height: 1;
    pointer-events: none;
    color: rgba(255, 255, 255, 0.92);
    z-index: 1;
}

.ring-setup-table .event-catalog-other-report-select-affix-icon {
    display: inline-block;
    vertical-align: middle;
}

.ring-setup-table .event-catalog-reports-secondary>.event-catalog-other-report-select-wrap>select.button-primary,
.ring-setup-table .event-catalog-reports-secondary>.event-catalog-ecritiques {
    float: none;
}

.ring-setup-table .event-catalog-reports-secondary .event-catalog-ecritiques {
    margin-left: auto;
    flex-shrink: 0;
}

body .ui-grid {
    border-width: 0;
}

.ui-grid .ui-grid-top-panel,
.ui-grid .ui-grid-top-panel-background,
.ui-grid .ui-grid-no-row-overlay,
.ui-grid .ui-grid-footer-panel,
.ui-grid .ui-grid-footer-panel-background {
    background-image: none !important;
    background-color: #f0f0f0 !important;
    font-weight: normal;
    color: #333;
}

.ui-grid .ui-grid-header-cell .ui-grid-cell-contents {
    font-size: 14px;
    padding-bottom: 0;
}

.ui-grid .ui-grid-cell-contents {
    padding: 10px 5px 10px 5px;
    text-overflow: clip;
}

.ui-grid-row:nth-child(odd) .ui-grid-row-header-cell {
    background-color: #fff !important;
}

.ui-grid-row:nth-child(even) .ui-grid-row-header-cell {
    background-color: #fff !important;
}

.ui-grid .ui-grid-row:nth-child(odd) .ui-grid-cell {
    background-color: #fff;
}

.ui-grid .ui-grid-row:nth-child(even) .ui-grid-cell {
    background-color: #fff;
}

.ui-grid .ui-grid-filter-container {
    padding: 2px 5px;
}

.ui-grid-menu .ui-grid-menu-inner,
.ui-grid-menu .ui-grid-menu-inner ul li:hover,
.ui-grid-menu .ui-grid-menu-inner ul li.ui-grid-menu-item-active {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

body .ui-grid,
.ui-grid .ui-grid-header,
.ui-grid .ui-grid-header-cell,
.ui-grid .ui-grid-cell,
.ui-grid .ui-grid-row-header-cell,
.ui-grid-no-row-overlay,
.ui-grid .ui-grid-footer-panel,
.ui-grid .ui-grid-footer-cell,
.ui-grid .ui-grid-pinned-container.ui-grid-pinned-container-left .ui-grid-header-cell:last-child,
.ui-grid .ui-grid-pinned-container.ui-grid-pinned-container-left .ui-grid-cell:last-child {
    border-color: #f0f0f0;
}

.ui-grid-pinned-container.ui-grid-pinned-container-left .ui-grid-header-cell:last-child {
    border-right-width: 0;
}

.ui-grid-pinned-container.ui-grid-pinned-container-left .ui-grid-cell:last-child {
    border-top-width: 0;
    border-bottom-width: 0;
}

.ui-grid .ui-grid-header {
    border-width: 0;
}

.ui-grid .ui-grid-header-cell,
.ui-grid .ui-grid-cell {
    border-width: 0 0 1px 0;
    border-bottom-style: solid;
}

.dataGrid {
    margin-bottom: 30px;
}

.event-show-dogs-page .club-applications-header {
    margin-bottom: 16px;
}

.event-show-dogs-page .event-show-dogs-sex-filters {
    justify-content: flex-end;
}

.event-show-dogs-page.club-applications-view .event-show-dogs-class-filters.club-applications-status-breakdown {
    display: grid !important;
    flex: 1 1 100%;
    flex-basis: 100%;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 6px;
    width: 100%;
}

.event-show-dogs-page .event-show-dogs-filter-chip {
    flex: 0 1 auto !important;
    width: auto;
    max-width: 180px;
    padding: 4px 6px;
    gap: 6px;
}

.event-show-dogs-page.club-applications-view .event-show-dogs-class-filters .event-show-dogs-filter-chip.club-applications-status-breakdown__item {
    flex: none !important;
    width: 100%;
    max-width: none;
    min-width: 0;
}

.event-show-dogs-page .event-show-dogs-sex-filters .event-show-dogs-filter-chip:nth-child(1),
.event-show-dogs-page .event-show-dogs-class-filters .event-show-dogs-filter-chip:nth-child(6n + 1) {
    background: #f4efff;
}

.event-show-dogs-page .event-show-dogs-sex-filters .event-show-dogs-filter-chip:nth-child(2),
.event-show-dogs-page .event-show-dogs-class-filters .event-show-dogs-filter-chip:nth-child(6n + 2) {
    background: #e8f4ff;
}

.event-show-dogs-page .event-show-dogs-class-filters .event-show-dogs-filter-chip:nth-child(6n + 3) {
    background: #fff2e6;
}

.event-show-dogs-page .event-show-dogs-class-filters .event-show-dogs-filter-chip:nth-child(6n + 4) {
    background: #ffecec;
}

.event-show-dogs-page .event-show-dogs-class-filters .event-show-dogs-filter-chip:nth-child(6n + 5) {
    background: #fff8d8;
}

.event-show-dogs-page .event-show-dogs-class-filters .event-show-dogs-filter-chip:nth-child(6n) {
    background: #eefaf0;
}

.event-show-dogs-page .event-show-dogs-column-filters {
    display: flex;
    flex: 1 1 100%;
    flex-wrap: wrap;
    gap: 6px;
    min-width: 0;
}

.event-show-dogs-page .event-show-dogs-column-filter {
    display: flex;
    flex: 1 1 calc(25% - 6px);
    flex-direction: column;
    gap: 4px;
    min-width: 160px;
    margin: 0;
    padding: 4px 8px;
    border: 1px solid #e7edf4;
    background: #fff;
    font-weight: normal;
}

.event-show-dogs-page .event-show-dogs-column-filter__label {
    color: #637789;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.event-show-dogs-page .event-show-dogs-column-filter input {
    width: 100%;
    height: 28px;
    margin: 0;
    padding: 2px 6px;
    border: 1px solid #d8e6f2;
    background: #fbfdff;
    color: #00355e;
    font-size: 13px;
    line-height: 1.2;
}

.event-show-dogs-page .event-show-dogs-column-filter input:focus {
    outline: none;
    border-color: #00447a;
    box-shadow: 0 0 0 1px rgba(0, 68, 122, 0.2);
}

.event-show-dogs-page .event-show-dogs-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 20px;
}

.event-show-dogs-page .event-show-dogs-toolbar .dataTables_length {
    display: block;
    width: auto;
    margin: 0;
}

.event-show-dogs-page .event-show-dogs-table-controls {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 0 auto;
}

.event-show-dogs-page .event-show-dogs-table-controls .btn-primary-small:disabled {
    opacity: 0.5;
    cursor: default;
}

.event-show-dogs-page .showdog-table {
    position: relative;
    padding: clamp(10px, 2.5vw, 40px);
}

.event-show-dogs-page .event-show-dogs-grid-scroll {
    display: block;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-bottom: 30px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    border: 1px solid #d8e6f2;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .dataGrid {
    margin-bottom: 0;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box;
    border: 0;
    overflow: hidden;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid-viewport,
.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid-header-viewport {
    overflow: hidden !important;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid-render-container-body .ui-grid-viewport {
    overflow-x: hidden !important;
    overflow-y: hidden !important;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid-scrollbar-dummy,
.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid-horizontal-bar {
    display: none !important;
    height: 0 !important;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-header-cell,
.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-header-cell .ui-grid-cell-contents {
    box-sizing: border-box;
    height: 56px !important;
    max-height: 56px;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-top-panel,
.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-top-panel-background,
.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-header,
.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-header-viewport,
.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-header-canvas,
.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-header-cell {
    background: #f4f8fb !important;
    background-image: none !important;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-header {
    border-bottom: 0;
    box-shadow: inset 0 -2px 0 #d8e6f2;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-header-cell {
    border-color: transparent !important;
    border-right: 0 !important;
    box-shadow: inset -1px 0 0 #e7edf4;
    text-align: center;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-header-cell:last-child {
    box-shadow: none;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-header-cell .ui-grid-cell-contents {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #00355e;
    letter-spacing: 0.01em;
    line-height: 1.25;
    padding: 6px 8px;
    text-align: center;
    white-space: normal;
    overflow: hidden;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-cell .ui-grid-cell-contents {
    padding: 10px;
    color: #2c3e50;
}

.event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid .ui-grid-row:hover .ui-grid-cell {
    background-color: #eaf4ff !important;
    cursor: pointer;
}

@media (max-width: 1279px) {
    .event-show-dogs-page .event-show-dogs-grid-scroll .ui-grid {
        min-width: 1100px !important;
        max-width: none !important;
    }
}

.event-show-dogs-page .page-menu-container {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}

.event-show-dogs-page .page-menu-container ul.menu {
    flex-wrap: nowrap;
    gap: 18px;
    min-width: max-content;
}

.event-show-dogs-page .page-menu-container li {
    flex: 0 0 auto;
}

.event-show-dogs-page .page-menu-container li a {
    white-space: nowrap;
}

.event-show-dogs-page .dataTables_length label {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    white-space: nowrap;
}

.event-show-dogs-page .dataTables_length select {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
}

@media (max-width: 767px) {
    .event-show-dogs-page.club-applications-view .event-show-dogs-class-filters.club-applications-status-breakdown {
        grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    }

    .event-show-dogs-page .event-show-dogs-toolbar {
        flex-direction: column;
        align-items: stretch;
    }

    .event-show-dogs-page .dataTables_length label {
        display: flex;
        align-items: center;
        gap: 8px;
        width: 100%;
    }

    .event-show-dogs-page .dataTables_length select {
        flex: 1 1 auto;
        width: auto;
        min-width: 0;
    }

    .event-show-dogs-page .event-show-dogs-table-controls {
        width: 100%;
        margin-left: 0;
    }

    .event-show-dogs-page .event-show-dogs-table-controls .btn-primary-small {
        flex: 1 1 auto;
    }

    .event-show-dogs-page .dataTables_paginate {
        white-space: nowrap !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch;
    }

    .event-show-dogs-page .dataTables_paginate ul.pagination {
        display: inline-block !important;
        margin: 0 !important;
    }

    .event-show-dogs-page .dataTables_paginate ul.pagination li {
        margin-left: 15px !important;
    }

    .event-show-dogs-page .dataTables_paginate ul.pagination li:first-child {
        margin-left: 0 !important;
    }

    .event-show-dogs-page .dataTables_paginate ul.pagination li a,
    .event-show-dogs-page .dataTables_paginate ul.pagination li span {
        float: none !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        line-height: inherit !important;
    }
}

ul.pagination {
    list-style-type: none;
    padding-left: 0;
    display: inline-block;
    cursor: default;
}

ul.pagination li {
    display: inline-block;
    margin-left: 15px;
}

ul.pagination li.disabled a {
    cursor: default;
    color: lightgrey;
}

ul.pagination li.active a {
    cursor: default;
    color: #00447a;
}

ul.pagination li.disabled a:hover,
ul.pagination li.disabled a:focus,
ul.pagination li.active a:hover,
ul.pagination li.active a:focus {
    text-decoration: none;
}

.showdog-view {
    padding-top: 30px;
}

.club-menu-content-view {
    padding-left: 10px;
    padding-right: 10px;
}

.club-applications-view .relative-content-container {
    padding-top: 30px !important;
}

.club-applications-view .club-application-open-button {
    border: 0;
    background: transparent;
    color: #00447a;
    padding: 0;
}

.club-applications-view .club-application-open-button:hover,
.club-applications-view .club-application-open-button:focus {
    color: #337ab7;
}

.club-applications-view .page-menu-container {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}

.club-applications-view .page-menu-container ul.menu {
    flex-wrap: nowrap;
    gap: 18px;
    min-width: max-content;
}

.club-applications-view .page-menu-container li {
    flex: 0 0 auto;
}

.club-applications-view .page-menu-container li a {
    white-space: nowrap;
}

.club-applications-view .club-applications-header {
    margin-bottom: 16px;
    padding: 10px 12px;
    border: 1px solid #d8e6f2;
    background: #fbfdff;
}

.club-applications-view .club-applications-header__main {
    margin-bottom: 8px;
}

.club-applications-view .club-applications-header .event-name-title {
    margin: 0 0 4px;
    font-size: 22px;
    line-height: 1.2;
}

.club-applications-view .club-applications-header__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 18px;
    color: #5f7080;
    font-size: 13px;
}

.club-applications-view .club-applications-header__meta-item {
    position: relative;
}

.club-applications-view .club-applications-header__meta-item + .club-applications-header__meta-item::before {
    content: "";
    position: absolute;
    left: -10px;
    top: 50%;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #9fb5c8;
    transform: translateY(-50%);
}

.club-applications-view .club-applications-metrics {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 12px;
    align-items: stretch;
}

.club-applications-view .club-applications-summary,
.club-applications-view .club-applications-status-breakdown {
    display: flex;
    flex: 1 1 0;
    flex-wrap: wrap;
    gap: 6px;
    min-width: 0;
}

.club-applications-view .club-applications-summary {
    flex-basis: 44%;
}

.club-applications-view .club-applications-status-breakdown {
    flex-basis: 52%;
}

.club-applications-view .club-applications-summary__card {
    flex: 1 1 calc(50% - 6px);
}

.club-applications-view .club-applications-status-breakdown__item {
    flex: 1 1 calc(33.333% - 6px);
}

.club-applications-view .club-applications-summary__card,
.club-applications-view .club-applications-status-breakdown__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: 26px;
    border: 1px solid #e7edf4;
    background: #fff;
    padding: 4px 8px;
}

.club-applications-view .club-applications-status-breakdown__item {
    cursor: pointer;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.club-applications-view .club-applications-status-breakdown__item:hover {
    border-color: rgba(0, 68, 122, 0.35);
    box-shadow: 0 1px 4px rgba(0, 68, 122, 0.12);
    transform: translateY(-1px);
}

.club-applications-view .club-applications-status-breakdown__item--active {
    border-color: #00447a !important;
    box-shadow: inset 0 0 0 1px #00447a, 0 1px 4px rgba(0, 68, 122, 0.14);
}

.club-applications-view .club-applications-status-breakdown__item--active .club-applications-status-breakdown__label {
    color: #00355e;
}

.club-applications-view .club-applications-summary__label,
.club-applications-view .club-applications-status-breakdown__label {
    display: block;
    margin-bottom: 0;
    color: #637789;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.club-applications-view .club-applications-summary__value,
.club-applications-view .club-applications-status-breakdown__count {
    display: block;
    flex: 0 0 auto;
    color: #00355e;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
}

.club-applications-view .club-applications-status-breakdown__item {
    border-color: transparent;
}

.club-applications-view .club-applications-status-breakdown__item.club-application-status-ACCEPTED {
    border-color: #e7edf4;
}

.club-applications-view .club-applications-status-breakdown__item.club-application-status-ACCEPTED:hover {
    border-color: rgba(0, 68, 122, 0.35);
}

.club-applications-view .club-applications-status-breakdown__item.club-application-status-ACCEPTED,
.club-applications-view table.fci-table.dataTable tr.club-application-status-ACCEPTED > td {
    background: #fff;
}

.club-applications-view .club-applications-status-breakdown__item.club-application-status-NEW,
.club-applications-view table.fci-table.dataTable tr.club-application-status-NEW > td {
    background: #f4efff;
}

.club-applications-view .club-applications-status-breakdown__item.club-application-status-REJECTED,
.club-applications-view table.fci-table.dataTable tr.club-application-status-REJECTED > td {
    background: #fff2e6;
}

.club-applications-view .club-applications-status-breakdown__item.club-application-status-CANCELED,
.club-applications-view table.fci-table.dataTable tr.club-application-status-CANCELED > td {
    background: #ffecec;
}

.club-applications-view .club-applications-status-breakdown__item.club-application-status-EDITED,
.club-applications-view table.fci-table.dataTable tr.club-application-status-EDITED > td {
    background: #fff8d8;
}

.club-applications-view .club-applications-status-breakdown__item.club-application-status-UNCOMPLETED,
.club-applications-view table.fci-table.dataTable tr.club-application-status-UNCOMPLETED > td {
    background: #eefaf0;
}

.club-applications-view table.fci-table.dataTable tr.club-application-status-NEW:hover > td {
    background: #ece2ff;
}

.club-applications-view table.fci-table.dataTable tr.club-application-status-REJECTED:hover > td {
    background: #ffe8d4;
}

.club-applications-view table.fci-table.dataTable tr.club-application-status-CANCELED:hover > td {
    background: #ffdfdf;
}

.club-applications-view table.fci-table.dataTable tr.club-application-status-EDITED:hover > td {
    background: #fff1bc;
}

.club-applications-view table.fci-table.dataTable tr.club-application-status-UNCOMPLETED:hover > td {
    background: #e1f5e4;
}

.club-applications-view table.fci-table.dataTable {
    font-size: 14px;
    line-height: 1.45;
}

.club-applications-view table.fci-table.dataTable tr th,
.club-applications-view table.fci-table.dataTable tbody tr td {
    padding: 10px 12px !important;
    vertical-align: middle;
}

@media (min-width: 992px) and (max-width: 1199px) {
    .club-applications-view .event-info.relative-content-container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .club-applications-view .view-content.white {
        padding: 24px 18px 30px !important;
    }

    .club-applications-view .event-name-title {
        font-size: 24px;
        line-height: 1.3;
    }

    .club-applications-view .page-menu-container ul.menu {
        gap: 16px;
        font-size: 15px;
    }

    .club-applications-view .club-applications-header {
        padding: 9px 10px;
    }

    .club-applications-view .dataTables_length,
    .club-applications-view .dataTables_filter,
    .club-applications-view .dataTables_info,
    .club-applications-view .dataTables_paginate {
        margin-bottom: 12px;
    }

    .club-applications-view .dataTables_filter input {
        width: 150px;
        max-width: 150px;
    }

    .club-applications-view table.fci-table.dataTable {
        table-layout: auto;
        font-size: 13px;
        line-height: 1.45;
    }

    .club-applications-view table.fci-table.dataTable tr th,
    .club-applications-view table.fci-table.dataTable tbody tr td {
        padding: 9px 10px !important;
        overflow-wrap: normal;
        word-break: normal;
    }

    .club-applications-view table.fci-table.dataTable tr th:nth-child(1),
    .club-applications-view table.fci-table.dataTable tr td:nth-child(1) {
        width: 4%;
    }

    .club-applications-view table.fci-table.dataTable tr th:nth-child(2),
    .club-applications-view table.fci-table.dataTable tr td:nth-child(2) {
        width: 7%;
    }

    .club-applications-view table.fci-table.dataTable tr th:nth-child(3),
    .club-applications-view table.fci-table.dataTable tr td:nth-child(3) {
        width: 12%;
    }

    .club-applications-view table.fci-table.dataTable tr th:nth-child(4),
    .club-applications-view table.fci-table.dataTable tr td:nth-child(4) {
        width: 8%;
    }

    .club-applications-view table.fci-table.dataTable tr th:nth-child(5),
    .club-applications-view table.fci-table.dataTable tr td:nth-child(5) {
        width: 12%;
    }

    .club-applications-view table.fci-table.dataTable tr th:nth-child(6),
    .club-applications-view table.fci-table.dataTable tr td:nth-child(6) {
        width: 15%;
    }

    .club-applications-view table.fci-table.dataTable tr th:nth-child(7),
    .club-applications-view table.fci-table.dataTable tr td:nth-child(7) {
        width: 12%;
    }

    .club-applications-view table.fci-table.dataTable tr th:nth-child(8),
    .club-applications-view table.fci-table.dataTable tr td:nth-child(8) {
        width: 13%;
    }

    .club-applications-view table.fci-table.dataTable tr th:nth-child(9),
    .club-applications-view table.fci-table.dataTable tr td:nth-child(9) {
        width: 9%;
    }

    .club-applications-view table.fci-table.dataTable tr th:nth-child(10),
    .club-applications-view table.fci-table.dataTable tr td:nth-child(10) {
        width: 8%;
    }
}

@media (max-width: 991px) {
    .club-applications-view .page-menu-container ul.menu {
        gap: 16px;
        font-size: 15px;
    }

    .club-applications-view .page-menu-container li a {
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .club-applications-view .event-info.relative-content-container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .club-applications-view .view-content.white {
        padding: 18px 10px 24px !important;
        overflow-x: hidden;
    }

    .club-applications-view .event-name-title {
        font-size: 20px;
        line-height: 1.3;
    }

    .club-applications-view .club-applications-header {
        padding: 10px;
    }

    .club-applications-view .club-applications-header__main {
        margin-bottom: 10px;
    }

    .club-applications-view .club-applications-header__meta {
        display: block;
        font-size: 13px;
    }

    .club-applications-view .club-applications-header__meta-item {
        display: block;
        margin-top: 4px;
    }

    .club-applications-view .club-applications-header__meta-item + .club-applications-header__meta-item::before {
        display: none;
    }

    .club-applications-view .club-applications-summary,
    .club-applications-view .club-applications-status-breakdown {
        flex-basis: 100%;
    }

    .club-applications-view .club-applications-summary__card,
    .club-applications-view .club-applications-status-breakdown__item {
        flex-basis: calc(50% - 6px);
        padding: 5px 8px;
    }

    .club-applications-view .club-applications-summary__value,
    .club-applications-view .club-applications-status-breakdown__count {
        font-size: 14px;
    }

    .club-applications-view .top-buffer .col-md-4 {
        padding-left: 0;
        padding-right: 0;
    }

    .club-applications-view .dataTables_length,
    .club-applications-view .dataTables_filter,
    .club-applications-view .dataTables_info,
    .club-applications-view .dataTables_paginate {
        display: block;
        width: 100%;
        text-align: left;
        margin-bottom: 12px;
    }

    .club-applications-view .dataTables_filter input {
        display: block;
        width: 100%;
        max-width: 100%;
        margin: 6px 0 0;
        box-sizing: border-box;
    }

    .club-applications-view table.fci-table.dataTable,
    .club-applications-view table.fci-table.dataTable thead,
    .club-applications-view table.fci-table.dataTable tbody,
    .club-applications-view table.fci-table.dataTable tr,
    .club-applications-view table.fci-table.dataTable td {
        display: block;
        width: 100% !important;
        box-sizing: border-box;
    }

    .club-applications-view table.fci-table.dataTable thead {
        display: none;
    }

    .club-applications-view table.fci-table.dataTable tbody tr {
        margin-bottom: 12px;
        border: 1px solid #d8e6f2;
        background: #fff;
    }

    .club-applications-view table.fci-table.dataTable tbody tr td {
        display: flex !important;
        align-items: flex-start;
        justify-content: space-between;
        gap: 12px;
        padding: 8px 10px !important;
        border-bottom: 1px solid #f0f0f0;
        overflow-wrap: anywhere;
        text-align: right;
    }

    .club-applications-view table.fci-table.dataTable tbody tr td:last-child {
        border-bottom: 0;
    }

    .club-applications-view table.fci-table.dataTable tbody tr td::before {
        content: attr(data-label);
        flex: 0 0 42%;
        color: #00447a;
        font-weight: bold;
        text-align: left;
    }

    .club-applications-view table.fci-table.dataTable tbody tr td.club-application-open-cell {
        justify-content: flex-end;
    }

    .club-applications-view table.fci-table.dataTable tbody tr td.club-application-open-cell::before {
        flex-basis: auto;
        margin-right: auto;
    }

    .club-applications-view table.fci-table.dataTable tbody tr td.club-application-status-cell {
        display: none !important;
    }

    .club-applications-view table.fci-table.dataTable tbody tr td.dataTables_empty {
        display: block !important;
        padding: 14px 12px !important;
        text-align: center;
        line-height: 1.4;
    }

    .club-applications-view table.fci-table.dataTable tbody tr td.dataTables_empty::before {
        display: none;
        content: none;
    }

    .club-applications-view .club-application-open-button {
        min-width: 44px;
        min-height: 36px;
        font-size: 18px;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .club-applications-view .page-menu-container ul.menu {
        gap: 18px;
        font-size: 16px;
    }

    .club-applications-view .view-content.white {
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

    .club-applications-view .event-name-title {
        font-size: 24px;
    }

    .club-applications-view table.fci-table.dataTable tbody tr td::before {
        flex-basis: 34%;
    }
}

@media (max-width: 480px) {
    .club-applications-view .view-content.white {
        padding: 12px 8px 18px !important;
    }

    .club-applications-view .page-menu-container ul.menu {
        gap: 10px;
        font-size: 12px;
    }

    .club-applications-view .page-menu-container li a {
        padding-top: 7px;
        padding-bottom: 7px;
        letter-spacing: 0;
    }

    .club-applications-view .club-applications-header {
        margin-bottom: 10px;
        padding: 8px;
    }

    .club-applications-view .club-applications-header .event-name-title {
        font-size: 17px;
    }

    .club-applications-view .club-applications-header__main {
        margin-bottom: 6px;
    }

    .club-applications-view .club-applications-header__meta {
        font-size: 11px;
    }

    .club-applications-view .club-applications-metrics {
        gap: 5px;
    }

    .club-applications-view .club-applications-summary,
    .club-applications-view .club-applications-status-breakdown {
        display: flex;
        flex-basis: 100%;
        gap: 5px;
    }

    .club-applications-view .club-applications-summary__card {
        flex: 1 1 100%;
    }

    .club-applications-view .club-applications-status-breakdown__item {
        flex: 1 1 calc(33.333% - 5px);
    }

    .club-applications-view .club-applications-summary__card,
    .club-applications-view .club-applications-status-breakdown__item {
        min-height: 24px;
        margin-bottom: 0;
        padding: 3px 5px;
        gap: 4px;
    }

    .club-applications-view .club-applications-summary__label,
    .club-applications-view .club-applications-status-breakdown__label {
        font-size: 13px;
        font-weight: 500;
        white-space: normal;
        overflow: visible;
        text-overflow: clip;
    }

    .club-applications-view .club-applications-summary__value,
    .club-applications-view .club-applications-status-breakdown__count {
        font-size: 14px;
    }
}

.page-menu-container ul.menu {
    list-style-type: none;
    font-size: large;
    padding: 0;
    margin: 0;
}

.page-menu-container li {
        float: none;
    margin-right: 0;
    padding: 0;
    margin-top: 0;
    margin-bottom: 0;
    text-transform: uppercase;
}

.page-menu-container li a {
    text-decoration: none;
    color: #00447a;
}





ul[dnd-list],
ul[dnd-list]>li {
    position: relative;
}

.breed-list {
    list-style-type: none;
    margin: 0 10px;
    padding: 5px 10px;
    min-height: 3em;
}

.ring-list {
    list-style-type: none;
    margin: 0 10px;
    padding: 0 10px;
    min-height: 3em;
}

.ring-list>li {
    border: 1px solid #ddd;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    margin: 5px 0;
}

.ring-list>li>div:first-child {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    background-color: #00447a;
    color: #fff;
}

.ring-list>li>div:first-child input {
    border: 1px solid #fff;
    color: initial;
}

.ring-list .breed-list,
.ring-list ul[dnd-list].breed-list li {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0;
}

.ring-list ul[dnd-list].breed-list li>.row>*:first-child {
    padding-left: 10px;
}

.ring-name input {
    width: 94%;
    left: 16px;
    margin-left: 16px
}

.ring-name a {
    margin-right: -16px;
    color: lightcoral;
    margin-left: 1px;
}

.ring-name a:hover {
    color: lightsalmon
}

ul[dnd-list] .dndPlaceholder {
    display: block;
    background-color: #ddd;
    min-height: 3em;
}

ul[dnd-list] li {
    background-color: #fff;
    display: block;
    padding: 2px 3px;
    margin-bottom: -1px;
}


.cat-panel-heading {
    padding: 5px 10px;
}

.cat-panel-heading>div {
    margin-top: -16px;
}

.cat-column-heading {
    padding: 3px 20px;
    background-color: #f0f0f0
}

.cat-column-heading.rings {
    padding-left: 23px;
    padding-right: 23px;
}

.btn {
    border-radius: 0 !important;
}

.dropdown-menu>li>a.disabled {
    pointer-events: none;
    color: #aaa
}

.price-table {
    width: 100%
}

.price-table-responsive {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.price-table th {
    vertical-align: middle;
    padding-left: 10px;
}

.price-table th.price-header-with-currency {
    white-space: nowrap;
}

.price-table th.price-header-with-currency .price-header-inline {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.price-table th.price-header-with-currency .price-header-inline label {
    margin-bottom: 10px;
}

.price-table th.price-header-with-currency .price-header-inline input {
    width: 60px;
    min-width: 60px;
    max-width: 60px;
    height: 28px;
    min-height: 28px;
    padding: 2px 6px !important;
    margin-bottom: 10px;
}

.price-table td {
    padding-right: 10px;
    vertical-align: top;
}

.documents-table th,
.documents-table td {
    padding-right: 10px;
    vertical-align: top;
    white-space: nowrap;
}

.price-table td:last-child,
.documents-table td:last-child {
    padding-right: 0;
    font-size: 0;
}

.price-table button,
.documents-table button {
    margin: 1px;
}

/* Event form documents: horizontal scroll + sticky actions so buttons stay visible at any width */
.add-event-form .documents-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
}

/* Hug content width; wrapper scrolls when URL rows exceed container */
.add-event-form .documents-table {
    width: max-content;
}

.add-event-form .documents-table td:first-child {
    min-width: 7rem;
}

.add-event-form .documents-table__link-cell {
    max-width: none;
}

.add-event-form .documents-table th.documents-table__actions,
.add-event-form .documents-table td.documents-table__actions {
    position: sticky;
    right: 0;
    z-index: 2;
    width: auto;
    min-width: 4.5rem;
    padding-left: 8px;
    vertical-align: middle;
    background-color: #fff;
    box-shadow: -6px 0 8px -4px rgba(0, 0, 0, 0.12);
}

.add-event-form .documents-table tr:first-child th.documents-table__actions {
    z-index: 3;
}

@media (max-width: 767px) {
    .add-event-form .documents-table-wrap {
        margin-left: -4px;
        margin-right: -4px;
        padding-left: 4px;
        padding-right: 4px;
    }
}

.price-table tr.gap-before td {
    padding-top: 20px;
}

/* Price table uses od-date-input[fluid]; cap those fields explicitly. */
.price-table [od-date-input][fluid],
.price-table od-date-input[fluid] {
    max-width: 180px;
}

.price-table .datepicker.dp-control.od-date-input--fluid {
    max-width: 180px;
}

@media (max-width: 991px) {
    .add-event-form .price-table {
        min-width: 980px;
    }
}

form .progressb {
    line-height: 15px;
}

.progressb {
    display: inline-block;
    width: 202px;
    border: 1px solid #CCC;
    text-align: center;
}

.progressb div {
    font-size: smaller;
    background: green;
    color: white;
    width: 0;
}

.progress-list {
    list-style-type: none;
    padding-left: 0;
}

.clap-table.table>tbody+tbody {
    border-top: inherit;
}

table.clap-table.table tbody.first-open-row {
    border: 2px solid #bbb;
    border-bottom: none;
}

.clap-table tbody.last-open-row {
    border: 2px solid #bbb;
    border-top: none;
}

.clap-table a.heading {
    font-size: larger;
}

.clap-table span.heading {
    font-weight: bold;
}

.five-button {
    width: 194px;
    padding-left: 10px;
    float: right !important;
}

.five-button:last-child {
    width: 184px;
    padding-left: 0;
}

.two-button {
    width: 485px;
    padding-left: 10px;
    float: right !important;
}

.two-button:last-child {
    width: 475px;
    padding-left: 0;
}

table.clreg-table,
table.clap-table {
    table-layout: fixed;
}

.application-page .application-page-card,
.event-application-page .content-container.white {
    max-width: 100%;
}

.event-application-page .club-applications-header__main {
    margin-bottom: 0;
}

.application-page application-view .clreg-table,
.application-page application-view .clap-table,
.event-application-page application-view .clreg-table,
.event-application-page application-view .clap-table {
    width: 100%;
    max-width: 100%;
}

.application-page application-view .clap-table td.nobreak,
.event-application-page application-view .clap-table td.nobreak {
    text-align: right;
}

table.clreg-table.edit-mode>tr>td:first-child,
table.clap-table.edit-mode>tr>td:first-child,
table.clap-table tbody.edit-mode>tr>td.shift,
table.clap-table tbody.edit-mode>tr>td:first-child {
    padding-top: 16px;
}

table.clreg-table.edit-mode>tr>td.with-input,
table.clap-table.edit-mode>tr>td.with-input,
table.clap-table tbody.edit-mode>tr>td.with-input {
    padding: 0;
    vertical-align: middle;
}

table.clreg-table.edit-mode td.with-input input,
table.clap-table.edit-mode td.with-input input,
table.clap-table tbody.edit-mode td.with-input input[type="text"],
table.clap-table tbody.edit-mode td.with-input input[type="email"],
table.clap-table tbody.edit-mode td.with-input textarea {
    width: 100%;
    border: none;
}

table.clap-table tbody.edit-mode td.with-input input[type="number"] {
    border: none;
}

breeders-edit .breeders-field input[type="text"] {
    width: 100% !important;
    border: 1px solid #ddd !important;
}

breeders-edit .breeders-row {
    margin-bottom: 6px;
}

breeders-edit .breeders-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 36px;
    grid-template-areas:
        "first actions"
        "last actions";
    column-gap: 8px;
    row-gap: 6px;
    align-items: start;
}

breeders-edit .breeders-field {
    padding: 0 !important;
}

breeders-edit .breeders-field--first {
    grid-area: first;
}

breeders-edit .breeders-field--last {
    grid-area: last;
}

breeders-edit .breeders-actions {
    grid-area: actions;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: stretch;
    padding: 0 !important;
    margin-top: 0;
}

breeders-edit .breeders-action-btn {
    margin: 0;
    width: 32px;
    height: 32px;
    line-height: 32px;
    padding: 0;
    border: none;
    background: #00447a;
    color: #fff;
    text-align: center;
}

breeders-edit .breeders-action-btn:hover,
breeders-edit .breeders-action-btn:focus {
    background: #003a67;
}

tbody.edit-mode td.with-input select {
    padding: 15px 20px;
    border: none;
}

table.clap-table td:not(.with-input),
table.clreg-table td:not(.with-input),
td breeders-edit div {
    background-color: #f9f9f9;
}

table.clap-table td:not(.nobreak),
table.clreg-table td:not(.nobreak) {
    word-wrap: break-word;
}

table.clap-table td.subtitle {
    padding-top: 3px;
    padding-bottom: 4px;
}

table.clap-table td.subtitle>span:first-child {
    margin: 0;
    font-weight: bold;
    padding-top: 1px;
}

table.clap-table td.subtitle .btn {
    padding: 0;
}

@media (min-width: 768px) and (max-width: 991px) {
    .application-page,
    .event-application-page {
        padding-left: 12px;
        padding-right: 12px;
    }

    .application-page .relative-content-container,
    .event-application-page .relative-content-container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .application-page .content-container.white,
    .event-application-page .content-container.white {
        padding: 28px 28px 36px !important;
    }

    .application-page application-view .clap-table,
    .event-application-page application-view .clap-table {
        table-layout: auto;
    }

    .application-page application-view .clap-table colgroup,
    .event-application-page application-view .clap-table colgroup {
        display: none;
    }

    .application-page application-view .clap-table td.shift,
    .event-application-page application-view .clap-table td.shift {
        min-width: 120px;
        white-space: nowrap;
    }

    .application-page application-view .clap-table td:not(.shift):not(.nobreak),
    .event-application-page application-view .clap-table td:not(.shift):not(.nobreak) {
        overflow-wrap: anywhere;
        word-break: break-word;
    }
}

@media (max-width: 767px) {
    .application-page {
        padding-left: 6px;
        padding-right: 6px;
    }

    .application-page > .row,
    .event-application-page > .row,
    .application-page .relative-content-container > .row,
    .event-application-page .relative-content-container > .row,
    .application-page application-view > .row,
    .event-application-page application-view > .row {
        margin-left: 0;
        margin-right: 0;
    }

    .application-page .relative-content-container,
    .event-application-page .relative-content-container {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-bottom: 30px;
    }

    .application-page .content-container.white,
    .event-application-page .content-container.white {
        padding: 18px 10px 24px !important;
        overflow-x: hidden;
    }

    .checkout-summary-page .checkout-event-title {
        font-size: 16px;
        line-height: 1.35;
        padding-left: 10px;
        padding-right: 10px;
        box-sizing: border-box;
    }

    .application-page h3,
    .event-application-page h3 {
        float: none;
        width: 100%;
        padding-left: 0;
        padding-right: 0;
        margin-top: 16px;
        line-height: 1.25;
    }

    .application-page .five-button,
    .event-application-page .five-button,
    .application-page .two-button,
    .event-application-page .two-button {
        float: none !important;
        width: 100%;
        padding-left: 0;
        margin-bottom: 8px;
    }

    .application-page application-view .btn-primary[print-btn],
    .event-application-page application-view .btn-primary[print-btn] {
        float: none !important;
        width: 100%;
        margin-bottom: 12px;
    }

    .application-page application-view .clreg-table,
    .application-page application-view .clreg-table tbody,
    .application-page application-view .clreg-table tr,
    .application-page application-view .clreg-table td,
    .application-page application-view .clap-table,
    .application-page application-view .clap-table tbody,
    .application-page application-view .clap-table tr,
    .application-page application-view .clap-table td,
    .event-application-page application-view .clreg-table,
    .event-application-page application-view .clreg-table tbody,
    .event-application-page application-view .clreg-table tr,
    .event-application-page application-view .clreg-table td,
    .event-application-page application-view .clap-table,
    .event-application-page application-view .clap-table tbody,
    .event-application-page application-view .clap-table tr,
    .event-application-page application-view .clap-table td {
        display: block;
        width: 100% !important;
        max-width: 100%;
    }

    .application-page application-view .clreg-table,
    .application-page application-view .clap-table,
    .event-application-page application-view .clreg-table,
    .event-application-page application-view .clap-table {
        border: 0 !important;
    }

    .application-page application-view .clreg-table colgroup,
    .application-page application-view .clap-table colgroup,
    .event-application-page application-view .clreg-table colgroup,
    .event-application-page application-view .clap-table colgroup {
        display: none;
    }

    .application-page application-view .clreg-table tr,
    .application-page application-view .clap-table tr,
    .event-application-page application-view .clreg-table tr,
    .event-application-page application-view .clap-table tr {
        border: none;
        border-bottom: 1px solid #ddd;
        margin-bottom: 10px;
    }

    .application-page application-view .clreg-table td,
    .application-page application-view .clap-table td,
    .event-application-page application-view .clreg-table td,
    .event-application-page application-view .clap-table td {
        border: none;
        padding: 8px 10px;
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .application-page application-view .table-bordered > tbody > tr > td,
    .event-application-page application-view .table-bordered > tbody > tr > td {
        border: 0;
    }

    .application-page application-view .clap-table tr.application-total-row,
    .event-application-page application-view .clap-table tr.application-total-row {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        column-gap: 0;
    }

    .application-page application-view .clap-table tr.application-total-row td:first-child,
    .event-application-page application-view .clap-table tr.application-total-row td:first-child {
        grid-column: 1 / -1;
        padding-bottom: 0;
    }

    .application-page application-view .clap-table tr.application-total-row td,
    .event-application-page application-view .clap-table tr.application-total-row td {
        background-color: #f9f9f9;
    }

    .application-page application-view .clap-table tr.application-total-row td:nth-child(2),
    .event-application-page application-view .clap-table tr.application-total-row td:nth-child(2) {
        text-align: right;
    }

    .application-page application-view .clap-table td.subtitle,
    .event-application-page application-view .clap-table td.subtitle {
        border-bottom: none;
        margin-top: 12px;
    }

    .application-page application-view .clap-table td.subtitle > span,
    .application-page application-view .clap-table td.subtitle > div,
    .event-application-page application-view .clap-table td.subtitle > span,
    .event-application-page application-view .clap-table td.subtitle > div {
        float: none;
        display: block;
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    .application-page application-view .clap-table span.pull-right,
    .event-application-page application-view .clap-table span.pull-right {
        float: none !important;
        display: inline-flex;
        flex-wrap: wrap;
        gap: 4px;
        margin-top: 6px;
    }

    .application-page application-view select,
    .event-application-page application-view select {
        max-width: 100% !important;
    }
}

sex-edit label {
    padding: 16px;
    margin-bottom: 0 !important;
}

sex-edit input {
    margin-right: 5px;
}

age-group-edit label {
    padding: 2px 16px;
    margin-bottom: 0 !important;
}

age-group-edit div:first-child label {
    padding-top: 16px;
}

age-group-edit div:last-child label {
    padding-bottom: 16px;
}

age-group-edit input {
    margin-right: 5px;
}

.typeahead-group-header {
    font-weight: bold;
    font-style: italic;
}

.cat-header h4 {
    color: #00447a;
}

.cat-header p {
    margin-top: 10px;
}

.form-line input:not([type=radio]),
select {
    width: 350px;
}

.form-line input[type=radio] {
    margin: 8px 10px;
}

.form-line bool-edit label {
    margin-right: 10px
}

.form-line select {
    padding: 15px 10px;
}

.form-line>label {
    margin-bottom: 2px;
    margin-top: 10px;
}

a .fib {
    height: 45px;
    width: 22px;
    display: inline-block;
    background-position: 0 24px;
    text-align: center;
}

a .lang-code {
    display: inline-block;
    margin-left: 6px;
    vertical-align: middle;
}

a.active .fib {
    background-position: 0 3px;
    line-height: 1;
    vertical-align: middle;
}

.home-lang-switcher a {
    display: inline-flex;
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
}

.home-lang-switcher a.active {
    flex-direction: column;
}

.home-lang-switcher a .lang-code {
    margin-left: 0;
    line-height: 1.1;
}

.home-lang-switcher a .fib {
    height: 18px;
    line-height: 1;
    margin: 0;
    background-position: 0 2px;
}

/* Unified responsive form system */

:root {
    --app-form-control-height: 46px;
    --app-form-radius: 0;
    --app-form-border: #cdd4df;
    --app-form-focus: #00447a;
    --app-form-label: #2f3c4a;
    --app-form-text: #1f2a36;
    --app-form-error: #c92a2a;
    /* od-date-input: cap width on wide columns; use [fluid] to fill table cells */
    --app-datepicker-max-width: 220px;
}

.a-container form:not(#loginForm) .form-group,
.modal-content form .form-group {
    margin-bottom: 16px;
}

.a-container form:not(#loginForm) .form-group > label,
.a-container form:not(#loginForm) .form-group .control-label,
.modal-content form .form-group > label,
.modal-content form .form-group .control-label {
    color: var(--app-form-label);
    font-weight: 500;
    letter-spacing: 0.01em;
    margin-bottom: 6px;
    text-transform: uppercase;
}

.a-container form:not(#loginForm) .form-group input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.a-container form:not(#loginForm) .form-group select,
.a-container form:not(#loginForm) .form-group textarea,
.modal-content form .form-group input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.modal-content form .form-group select,
.modal-content form .form-group textarea {
    width: 100%;
    max-width: 100%;
    min-height: var(--app-form-control-height);
    color: var(--app-form-text);
    background: #fff;
    border: 1px solid var(--app-form-border);
    border-radius: var(--app-form-radius);
    padding: 10px 12px !important;
}

/* Narrow money / competition price inputs: must beat the rule above (max-width: 100%) — same ID
   (#loginForm in :not) plus .view-content.add-event-form so specificity wins without !important. */
.a-container .view-content.add-event-form form:not(#loginForm) .form-group input[type="text"][money],
.a-container .view-content.add-event-form form:not(#loginForm) .form-group input[type="text"].add-event-form-competition-price-input {
    max-width: 100px;
    box-sizing: border-box;
}

/* Currency input in price table header: override generic .form-group input width/max-width:100%. */
.a-container .view-content.add-event-form form:not(#loginForm) .price-table th.price-header-with-currency .price-header-inline input,
.modal-content .view-content.add-event-form form:not(#loginForm) .price-table th.price-header-with-currency .price-header-inline input {
    width: 60px;
    min-width: 60px;
    max-width: 60px;
}

.a-container form:not(#loginForm) .form-group textarea,
.modal-content form .form-group textarea {
    min-height: 120px;
    resize: vertical;
}

.a-container form:not(#loginForm) .form-group input:focus,
.a-container form:not(#loginForm) .form-group select:focus,
.a-container form:not(#loginForm) .form-group textarea:focus,
.modal-content form .form-group input:focus,
.modal-content form .form-group select:focus,
.modal-content form .form-group textarea:focus {
    border-color: var(--app-form-focus);
}

.a-container form:not(#loginForm) .fci-select,
.modal-content form .fci-select {
    width: 100%;
    max-width: 100%;
    background-position: right 12px center;
    border-radius: var(--app-form-radius);
}

.a-container form:not(#loginForm) .fci-select select,
.modal-content form .fci-select select {
    width: 100%;
    padding: 10px 36px 10px 12px !important;
    border: 0 !important;
    box-shadow: none;
    background: transparent;
}

.a-container form:not(#loginForm) .form-group .help-block,
.modal-content form .form-group .help-block {
    margin-top: 6px;
    margin-bottom: 0;
    color: var(--app-form-error) !important;
}

.a-container form:not(#loginForm) .input-group,
.modal-content form .input-group {
    display: block;
    width: 100%;
}

.a-container form:not(#loginForm) .input-group .form-control,
.modal-content form .input-group .form-control {
    float: none;
}

.app-form--stacked {
    max-width: 100%;
}

.app-page-shell {
    max-width: 1080px;
    margin: 0 auto;
    padding: 30px 20px 60px;
}

.app-page-shell--form {
    max-width: 760px;
}

.app-page-shell--form.app-page-shell--no-title {
    padding-top: 30px;
}

.app-page-shell--form.app-page-shell--no-title .app-title-placeholder {
    display: block;
    height: 42px;
    margin: 0 auto 20px;
    line-height: 42px;
    visibility: hidden;
    pointer-events: none;
}

.app-page-shell--form .signup-title {
    max-width: 680px;
    margin: 0 auto 20px;
}

.app-page-shell--form .signup-type-group {
    margin-bottom: 18px;
}

.app-page-shell--form .user-type-row {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
    border: 1px solid #dfe5ec;
}

.app-page-shell--form .user-type {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 88px;
    padding: 16px 20px;
    border: 0;
    border-right: 1px solid #dfe5ec;
    transition: background-color 0.15s ease;
}

.app-page-shell--form .user-type:last-child {
    border-right: 0;
}

.app-page-shell--form .user-type.is-selected {
    background: #eaf4ff;
}

.app-page-shell--form .user-type input[type="radio"] {
    margin: 0;
    flex: 0 0 auto;
}

.app-page-shell--form .user-type label {
    margin: 0;
    line-height: 1.3;
}

.app-page-shell--form .signup-email-input-row {
    padding-bottom: 0;
}

.app-page-shell--form .signup-email-input-row .app-form-actions {
    margin-top: 14px;
}

.app-page-shell--form .checkbox label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.app-page-shell--form .checkbox label input[type="checkbox"] {
    margin: 0;
    flex: 0 0 auto;
}

.app-form-row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -8px;
    margin-right: -8px;
}

.app-form-col {
    padding-left: 8px;
    padding-right: 8px;
    flex: 1 1 auto;
}

.app-form-col--half {
    flex: 0 0 50%;
    max-width: 50%;
}

.app-form-card {
    background: #ffffff;
    border: 1px solid #dfe5ec;
    border-radius: 0;
    padding: 24px;
    box-shadow: 0 2px 8px rgba(20, 31, 51, 0.06);
}

.app-form-actions {
    margin-top: 24px;
}

.app-form-actions .btn-primary,
.app-form-actions .btn.btn-primary,
.app-form-actions a.button-primary {
    width: 100%;
    border-radius: 0;
}

.app-form-actions a.button-primary {
    display: block;
    text-decoration: none;
}

.app-form-actions .app-button-secondary,
.app-button-secondary {
    width: 100%;
    text-align: center;
    padding: 15px;
    box-sizing: border-box;
    border: 1px solid #00447a;
    color: #00447a;
    background: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 14px;
    border-radius: 0;
}

.app-form-actions .app-button-secondary:hover,
.app-form-actions .app-button-secondary:focus,
.app-button-secondary:hover,
.app-button-secondary:focus {
    background: #dfefff;
    border-color: #9ec6eb;
    color: #00447a;
}

.app-form-actions .app-button-secondary[disabled],
.app-form-actions .app-button-secondary:disabled,
.app-form-actions .app-button-secondary.disabled,
.app-button-secondary[disabled],
.app-button-secondary:disabled,
.app-button-secondary.disabled {
    opacity: 0.55;
    background: #f0f0f0;
    border-color: #d0d0d0;
    color: #9a9a9a;
    cursor: not-allowed;
}

.app-form-shell {
    max-width: 680px;
    margin: 0 auto;
}

.app-form-center {
    max-width: 420px;
    margin: 30px auto 0;
}

.a-container form:not(#loginForm) .btn-primary,
.a-container form:not(#loginForm) .btn.btn-primary,
.a-container form:not(#loginForm) .btn.btn-default,
.modal-content form .btn-primary,
.modal-content form .btn.btn-primary,
.modal-content form .btn.btn-default {
    border-radius: 0;
}

/* Dog form: sex — each option is a real <label> wrapping control + text */
.a-container .dog-form-sex-radios {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    column-gap: 20px;
    row-gap: 8px;
}

.a-container .dog-form-radio-option {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    cursor: pointer;
    font-weight: normal;
    text-transform: uppercase;
}

/* Native radio + label: flex centers the row; do not add transform (throws off Chrome vs caps text). */
.a-container .dog-form-radio-option input[type="radio"],
.a-container form[name="dogFormThree"] .radio label input[type="radio"] {
    margin: 0;
    padding: 0 !important;
    border: 0;
    flex-shrink: 0;
}

.a-container .dog-form-radio-option > span,
.a-container form[name="dogFormThree"] .radio label > span {
    line-height: normal;
}

/* Step 3 / titles: Yes–No radios — center control with label text */
.a-container form[name="dogFormThree"] .radio label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-transform: uppercase;
    margin-right: 22px;
    margin-bottom: 0;
    cursor: pointer;
    font-weight: normal;
    vertical-align: middle;
}

@media (max-width: 992px) {
    .signup-form {
        width: 100% !important;
    }

    .app-form-card {
        padding: 16px;
        border-radius: 0;
    }

    .app-page-shell {
        padding: 20px 12px 30px;
    }

    .app-page-shell--form .signup-title {
        margin-bottom: 14px;
    }

    .app-page-shell--form.app-page-shell--no-title {
        padding-top: 20px;
    }

    .app-page-shell--form.app-page-shell--no-title .app-title-placeholder {
        height: 42px;
        line-height: 42px;
        margin-bottom: 14px;
    }

    .app-page-shell--form .user-type {
        border-right: 0;
        border-bottom: 1px solid #dfe5ec;
        min-height: 64px;
        padding: 12px 14px;
    }

    .app-page-shell--form .user-type:last-child {
        border-bottom: 0;
    }

    .app-form-col--half {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .app-form-center {
        max-width: 100%;
        margin-top: 20px;
    }

    .a-container form:not(#loginForm) .col-md-3,
    .a-container form:not(#loginForm) .col-md-4,
    .a-container form:not(#loginForm) .col-md-5,
    .a-container form:not(#loginForm) .col-md-6,
    .a-container form:not(#loginForm) .col-md-7,
    .a-container form:not(#loginForm) .col-md-8,
    .a-container form:not(#loginForm) .col-sm-3,
    .a-container form:not(#loginForm) .col-sm-4,
    .a-container form:not(#loginForm) .col-sm-5,
    .a-container form:not(#loginForm) .col-sm-6,
    .a-container form:not(#loginForm) .col-sm-7 {
        width: 100%;
        float: none;
    }

    .a-container form:not(#loginForm) .control-label {
        text-align: left;
        padding-right: 0;
    }

    .a-container form:not(#loginForm) .btn-primary:not(.btn-xs):not(.btn-sm),
    .a-container form:not(#loginForm) .btn.btn-primary:not(.btn-xs):not(.btn-sm),
    .a-container form:not(#loginForm) .btn.btn-default:not(.btn-xs):not(.btn-sm),
    .app-form-actions .app-button-secondary,
    .app-form-actions a.button-primary:not(.btn-xs):not(.btn-sm),
    .modal-content form .btn-primary:not(.btn-xs):not(.btn-sm),
    .modal-content form .btn.btn-primary:not(.btn-xs):not(.btn-sm),
    .modal-content form .btn.btn-default:not(.btn-xs):not(.btn-sm) {
        width: 100% !important;
        margin-top: 8px;
    }
}

.tab-container {
    display: flex;
}

/* Keep events tab layout aligned with main content container */
.events-page .tab-container {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: stretch;
}

.events-page .tab-container > .white,
.events-page .tab-container > .content-container {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 100%;
}

.events-page .tab-buttons~div.white {
    border-bottom: 1px solid #ccc;
}

.events-page .tab-buttons {
    height: 100%;
}

.events-page td.event-read-more a,
.events-page td.event-apply button.event-apply {
    width: 170px;
    max-width: 100%;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-left: 14px;
    padding-right: 14px;
}

.events-page td.event-read-more,
.events-page td.event-apply {
    width: 1%;
    white-space: nowrap;
    padding-left: 4px !important;
    padding-right: 4px !important;
}

.events-page td.event-apply button.event-apply {
    background: #2e8b57;
    border-color: #2e8b57;
}

.events-page td.event-apply button.owned-event-action-button {
    width: 170px;
    max-width: 100%;
    height: 50px;
    padding: 7px 14px;
    white-space: normal;
    line-height: 1.15;
}

.events-page td.event-apply button.owned-event-action-button .glyphicon,
.events-page td.event-apply button.owned-event-action-button .fa {
    margin-right: 8px;
}

.events-page td.event-apply button.owned-event-action-button--browse {
    background: #f6fbf4;
    border: 1px solid #6fa858;
    color: #6fa858;
}

.events-page td.event-apply button.event-apply.owned-event-action-button--browse:hover,
.events-page td.event-apply button.event-apply.owned-event-action-button--browse:focus {
    background: #e8f6e1;
    border-color: #5a9348;
    color: #5a9348;
}

.events-page td.event-apply button.owned-event-action-button--browse.owned-event-action-button--browse-new {
    background: #f4efff;
    border-color: #9b7fd8;
    color: #9b7fd8;
}

.events-page td.event-apply button.event-apply.owned-event-action-button--browse.owned-event-action-button--browse-new:hover,
.events-page td.event-apply button.event-apply.owned-event-action-button--browse.owned-event-action-button--browse-new:focus {
    background: #ece2ff;
    border-color: #8568c9;
    color: #8568c9;
}

.events-page td.event-apply button.owned-event-action-button--browse.owned-event-action-button--browse-edited {
    background: #fff8d8;
    border-color: #c9a83a;
    color: #c9a83a;
}

.events-page td.event-apply button.event-apply.owned-event-action-button--browse.owned-event-action-button--browse-edited:hover,
.events-page td.event-apply button.event-apply.owned-event-action-button--browse.owned-event-action-button--browse-edited:focus {
    background: #fff1bc;
    border-color: #b89428;
    color: #b89428;
}

.events-page td.event-apply button.owned-event-action-button--copy {
    background: #00447a;
    border-color: #00447a;
}

.events-page td.event-apply button.event-apply.owned-event-action-button--copy:hover,
.events-page td.event-apply button.event-apply.owned-event-action-button--copy:focus,
.events-page td.event-apply button.event-apply.owned-event-action-button--copy:focus-visible,
.events-page td.event-apply button.event-apply.owned-event-action-button--copy:active {
    background: #1f5f92;
    border-color: #1f5f92;
}

.events-page td.event-apply button.event-apply:hover,
.events-page td.event-apply button.event-apply:focus {
    background: #26744a;
    border-color: #26744a;
}

.events-page td.event-apply div[translate="REGISTRATION_CLOSED"] {
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    white-space: normal;
}

@media (max-width: 991px) {
    .events-page .tab-container {
        display: flex;
        flex-direction: column;
        grid-template-columns: none;
    }

    .events-page .tab-buttons {
        height: auto;
    }

    .events-page .tab-container > .white,
    .events-page .tab-container > .content-container {
        min-height: 0;
        width: 100%;
    }

    .events-page .events-show-list .top-buffer {
        padding-left: 0;
        padding-right: 0;
    }

    .events-page .apply-event-info-block .fci-table td.event-read-more,
    .events-page .apply-event-info-block .fci-table td.event-apply {
        display: block;
        width: calc(50% - 4px);
        flex: 1 1 calc(50% - 4px);
    }

    .events-page td.event-read-more a,
    .events-page td.event-apply button.event-apply,
    .events-page td.event-apply div[translate="REGISTRATION_CLOSED"] {
        width: 100% !important;
        max-width: none;
    }

    .events-page .apply-event-info-block .fci-table td.event-read-more {
        padding-left: 0 !important;
        padding-right: 4px !important;
    }

    .events-page .apply-event-info-block .fci-table td.event-apply {
        padding-left: 4px !important;
        padding-right: 0 !important;
    }

    .events-page .apply-event-info-block .fci-table td.owned-event-action {
        display: block;
        width: calc(50% - 4px);
        flex: 1 1 calc(50% - 4px);
        min-width: 0;
        box-sizing: border-box;
    }

    .events-page .apply-event-info-block .fci-table td.owned-event-action:nth-last-child(2) {
        padding-left: 0 !important;
        padding-right: 4px !important;
    }

    .events-page .apply-event-info-block .fci-table td.owned-event-action:nth-last-child(1) {
        padding-left: 4px !important;
        padding-right: 0 !important;
    }

    .events-page .apply-event-info-block .fci-table td.owned-event-action button.owned-event-action-button {
        width: 100% !important;
        height: 50px !important;
        max-width: none;
        padding: 6px 8px;
        line-height: 1.15;
        white-space: normal;
    }
}

@media (max-width: 400px) {
    .events-page .apply-event-info-block {
        padding-left: 10px;
        padding-right: 10px;
    }

    .events-page .apply-event-info-block .fci-table td.owned-event-action button.owned-event-action-button {
        padding: 5px 4px;
    }

    .events-page td.event-apply button.owned-event-action-button .glyphicon,
    .events-page td.event-apply button.owned-event-action-button .fa {
        margin-right: 4px;
    }
}

@media (min-width: 768px) and (max-width: 1200px) {
    .events-page .apply-event-info-block .fci-table td.event-read-more a,
    .events-page .apply-event-info-block .fci-table td.event-apply button.event-apply {
        width: 170px !important;
    }

    .events-page .apply-event-info-block .fci-table td.owned-event-action {
        width: auto;
        flex: 0 1 auto;
    }

    .events-page .apply-event-info-block .fci-table td.owned-event-action:nth-last-child(2) {
        margin-left: auto;
        padding-left: 0 !important;
        padding-right: 4px !important;
    }

    .events-page .apply-event-info-block .fci-table td.owned-event-action:nth-last-child(1) {
        padding-left: 4px !important;
        padding-right: 0 !important;
    }

    .events-page .apply-event-info-block .fci-table td.owned-event-action button.owned-event-action-button {
        width: 170px !important;
        height: 50px !important;
        max-width: none;
        padding: 7px 14px;
        line-height: 1.15;
        white-space: normal;
    }
}

/* Events list: club grouping with accordion */
.events-page {
    letter-spacing: normal;
}

.events-page,
.events-page * {
    border-radius: 0 !important;
}

.events-page .events-show-list {
    width: 100%;
    min-width: 0;
    overflow-x: clip;
}

.events-page .events-show-list .date-filter-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.events-page .events-show-list .date-chip {
    padding: 5px 12px;
    border: 1px solid #d1d5db;
    background: #f9fafb;
    color: #4b5563;
    cursor: pointer;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.events-page .events-show-list .date-chip:hover {
    border-color: #94a3b8;
    color: #1f2937;
}

.events-page .events-show-list .date-chip.active {
    background: #e2e8f0;
    border-color: #94a3b8;
    color: #1e293b;
    font-weight: 700;
}

.events-page .events-show-list .event-list {
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

.events-page .events-show-list .event-list-entry {
    border: 1px solid #e2e8f0;
    margin-bottom: 8px;
    background: #fff;
    overflow: hidden;
}

.events-page .events-show-list .event-list-entry:hover {
    border-color: #cbd5e1;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);
}

.events-page .events-show-list .event-list-entry--open {
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.1);
}

.events-page .events-show-list .event-list-row {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-width: 0;
    padding: 10px 16px 10px 12px;
    box-sizing: border-box;
}

.events-page .events-show-list .event-list-row--single,
.events-page .events-show-list .event-list-row--child {
    align-items: center;
}

.events-page .events-show-list .event-list-row--club-header {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-width: 0;
    padding: 10px 16px 10px 12px;
    border: 0;
    background: #fff;
    text-align: left;
    cursor: pointer;
}

.events-page .events-show-list .event-list-row--club-header:hover {
    background: #fafafa;
}

.events-page .events-show-list .event-list-row__grid {
    display: grid;
    grid-template-columns: 10.5rem 25px 88px 25px minmax(0, 1fr);
    column-gap: 0;
    align-items: center;
    flex: 1;
    min-width: 0;
}

.events-page .events-show-list .event-list-row__grid--child {
    grid-template-columns: max-content 25px minmax(0, 1fr);
}

.events-page .events-show-list .event-list-row__grid--child .event-list-date-wrap {
    grid-column: 1;
    position: relative;
    display: block;
    min-width: 10.5rem;
    width: max-content;
    padding-right: 12px;
    box-sizing: border-box;
}

.events-page .events-show-list .event-list-row__grid--child .event-list-date-wrap .event-list-day-mark {
    position: absolute;
    left: calc(10.5rem / 2);
    top: 50%;
    transform: translate(-50%, -50%);
}

.events-page .events-show-list .event-list-row__grid--child .event-list-date-wrap .event-list-date--child {
    position: relative;
    padding-left: calc(10.5rem / 2 + 10px);
}

.events-page .events-show-list .event-list-row__grid--child .event-list-col-sep {
    grid-column: 2;
}

.events-page .events-show-list .event-list-row__grid--child .event-list-row__content {
    grid-column: 3;
    padding-right: 16px;
}

.events-page .events-show-list .event-list-col-sep {
    width: 1px;
    height: 1.5rem;
    background: #e2e8f0;
    justify-self: center;
    align-self: center;
}

.events-page .events-show-list .event-list-date {
    width: 10.5rem;
    min-width: 10.5rem;
    max-width: 10.5rem;
    box-sizing: border-box;
    font-size: 1.625rem;
    font-weight: 400;
    color: #334155;
    line-height: 1.1;
    white-space: nowrap;
}

.events-page .events-show-list .event-list-date--single {
    text-align: center;
}

.events-page .events-show-list .event-list-date--range {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.events-page .events-show-list .event-list-date__inline {
    display: inline-block;
    line-height: 1.1;
}

.events-page .events-show-list .event-list-date__range {
    display: block;
    line-height: 1.1;
}

.events-page .events-show-list .event-list-date__year--block {
    display: block;
    margin-top: 3px;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    text-align: center;
}

.events-page .events-show-list .event-list-day-mark {
    width: 3px;
    height: 2.25rem;
    flex-shrink: 0;
    align-self: center;
    background: #3b82f6;
}

.events-page .events-show-list .event-list-date--child {
    font-size: 1.625rem;
    width: auto;
    min-width: 0;
    max-width: none;
}

.events-page .events-show-list .event-list-logo {
    width: 56px;
    height: 56px;
    min-width: 56px;
    max-width: 56px;
    max-height: 56px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: center;
    justify-self: center;
    background: transparent;
    border: none;
    overflow: hidden;
    padding: 1px;
    box-sizing: border-box;
}

.events-page .events-show-list .event-list-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.events-page .events-show-list .event-list-logo__placeholder {
    width: 22px;
    height: 22px;
    color: #cbd5e1;
    flex-shrink: 0;
}

.events-page .events-show-list .event-list-row__content {
    min-width: 0;
    overflow: visible;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-right: 16px;
}

.events-page .events-show-list .event-list-title {
    display: block;
    margin: 0 0 2px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.35;
    color: #337ab7;
    text-decoration: none;
    word-break: break-word;
}

.events-page .events-show-list .event-list-title:hover {
    color: #286090;
    text-decoration: underline;
}

.events-page .events-show-list .event-list-club {
    display: block;
    margin: 0 0 2px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.35;
    color: #0f172a;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    word-break: break-word;
}

.events-page .events-show-list .event-list-location {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    font-size: 13px;
    line-height: 1.35;
    color: #64748b;
    word-break: break-word;
}

.events-page .events-show-list .event-list-location__icon {
    flex-shrink: 0;
    font-size: 12px;
    line-height: 1;
    color: #94a3b8;
}

.events-page .events-show-list .event-list-row__meta {
    display: flex;
    align-items: center;
    flex: 0 0 270px;
    width: 270px;
    min-width: 270px;
    max-width: 270px;
    margin-left: auto;
}
.events-page .events-show-list .event-list-chevron {
    font-size: 12px;
    color: #6b7280;
    transition: transform 0.2s ease;
    flex-shrink: 0;
    line-height: 1;
    margin-left: auto;
}
.events-page .events-show-list .event-list-entry--open .event-list-show-count .event-list-chevron {
    transform: translateY(-50%) rotate(180deg);
}
.events-page .events-show-list .event-list-row__actions {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    flex: 0 0 270px;
    width: 270px;
    min-width: 270px;
    max-width: 270px;
    justify-content: flex-end;
    align-items: center;
}

.events-page .events-show-list .event-list-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 0;
    min-width: 0;
    min-height: 36px;
    padding: 7px 12px;
    border: 1px solid transparent;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
}

.events-page .events-show-list .event-list-btn--read {
    background: rgba(239, 246, 255, 0.8);
    border-color: #1e3a8a;
    color: #1e3a8a;
}

.events-page .events-show-list .event-list-btn--read:hover {
    background: rgba(219, 234, 254, 0.95);
    color: #1e3a8a;
    text-decoration: none;
}

.events-page .events-show-list .event-list-btn--apply {
    background: rgba(236, 253, 245, 0.9);
    border-color: #059669;
    color: #047857;
}

.events-page .events-show-list .event-list-btn--apply:hover {
    background: rgba(209, 250, 229, 0.95);
}

.events-page .events-show-list .event-list-show-count {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    width: 100%;
    min-height: 36px;
    padding: 7px 28px 7px 12px;
    border: 1px solid #9333ea;
    background: transparent;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.2;
    color: #6b21a8;
    white-space: nowrap;
    text-transform: uppercase;
    box-sizing: border-box;
    transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.events-page .events-show-list .event-list-row--club-header:hover .event-list-show-count {
    background: #f5f3ff;
}

.events-page .events-show-list .event-list-show-count .event-list-chevron {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    margin-left: 0;
    color: #6b21a8;
}

.events-page .events-show-list .event-list-show-count__label {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
    text-align: center;
}

.events-page .events-show-list .event-list-header-chevron {
    display: none;
}

.events-page .events-show-list .event-list-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 0;
    min-width: 0;
    min-height: 36px;
    padding: 7px 10px;
    border: 1px solid #94a3b8;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.2;
    color: #475569;
    white-space: normal;
    text-align: center;
    max-width: none;
}

.events-page .events-show-list .event-list-status--closed {
    background: #f8fafc;
    border-color: #cbd5e1;
    color: #94a3b8;
    font-weight: 400;
    cursor: not-allowed;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.events-page .events-show-list .event-list-status--open {
    border-color: #10b981;
    color: #047857;
}

.events-page .events-show-list .event-list-club-body {
    border-top: 1px solid #f1f5f9;
    background: rgba(248, 250, 252, 0.85);
}

.events-page .events-show-list .event-list-row--child {
    border-bottom: 1px solid #f1f5f9;
}

.events-page .events-show-list .event-list-row--child:last-child {
    border-bottom: 0;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-0 {
    background: #eff6ff;
    border-color: #bfdbfe;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-0 .event-list-row--club-header {
    background: #eff6ff;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-0 .event-list-row--club-header:hover {
    background: #dbeafe;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-0 .event-list-club-body {
    background: #f5f9ff;
    border-top-color: #dbeafe;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-0 .event-list-row--child {
    border-bottom-color: #dbeafe;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-1 {
    background: #f5f3ff;
    border-color: #ddd6fe;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-1 .event-list-row--club-header {
    background: #f5f3ff;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-1 .event-list-row--club-header:hover {
    background: #ede9fe;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-1 .event-list-club-body {
    background: #faf5ff;
    border-top-color: #ede9fe;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-1 .event-list-row--child {
    border-bottom-color: #ede9fe;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-2 {
    background: #ecfdf5;
    border-color: #a7f3d0;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-2 .event-list-row--club-header {
    background: #ecfdf5;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-2 .event-list-row--club-header:hover {
    background: #d1fae5;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-2 .event-list-club-body {
    background: #f0fdf9;
    border-top-color: #d1fae5;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-2 .event-list-row--child {
    border-bottom-color: #d1fae5;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-3 {
    background: #fff7ed;
    border-color: #fed7aa;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-3 .event-list-row--club-header {
    background: #fff7ed;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-3 .event-list-row--club-header:hover {
    background: #ffedd5;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-3 .event-list-club-body {
    background: #fffbf5;
    border-top-color: #ffedd5;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-3 .event-list-row--child {
    border-bottom-color: #ffedd5;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-4 {
    background: #fff1f2;
    border-color: #fecdd3;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-4 .event-list-row--club-header {
    background: #fff1f2;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-4 .event-list-row--club-header:hover {
    background: #ffe4e6;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-4 .event-list-club-body {
    background: #fff5f6;
    border-top-color: #ffe4e6;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-4 .event-list-row--child {
    border-bottom-color: #ffe4e6;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-5 {
    background: #f0fdfa;
    border-color: #99f6e4;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-5 .event-list-row--club-header {
    background: #f0fdfa;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-5 .event-list-row--club-header:hover {
    background: #ccfbf1;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-5 .event-list-club-body {
    background: #f5fffe;
    border-top-color: #ccfbf1;
}

.events-page .events-show-list .event-list-entry--club.event-list-entry--tone-5 .event-list-row--child {
    border-bottom-color: #ccfbf1;
}

.events-page .events-show-list .event-list-entry--club[class*="event-list-entry--tone-"]:hover {
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
}

.events-page .events-show-list .event-list-day-mark--b {
    background: #f59e0b;
}

.events-page .events-show-list .event-list-empty {
    padding: 32px 16px;
    text-align: center;
    color: #6b7280;
    font-size: 14px;
}

@media (max-width: 1200px) {
    .events-page .events-show-list .event-list-row__actions,
    .events-page .events-show-list .event-list-row__meta {
        flex: 0 0 240px;
        width: 240px;
        min-width: 240px;
        max-width: 240px;
    }

    .events-page .events-show-list .event-list-row__grid {
        grid-template-columns: 9rem 25px 72px 25px minmax(0, 1fr);
    }

    .events-page .events-show-list .event-list-date {
        width: 9rem;
        min-width: 9rem;
        max-width: 9rem;
        font-size: 1.375rem;
    }

    .events-page .events-show-list .event-list-date--child {
        font-size: 1.375rem;
    }

    .events-page .events-show-list .event-list-row__grid--child .event-list-date-wrap {
        min-width: 9rem;
    }

    .events-page .events-show-list .event-list-row__grid--child .event-list-date-wrap .event-list-day-mark {
        left: calc(9rem / 2);
    }

    .events-page .events-show-list .event-list-row__grid--child .event-list-date-wrap .event-list-date--child {
        padding-left: calc(9rem / 2 + 10px);
    }

    .events-page .events-show-list .event-list-logo {
        width: 48px;
        height: 48px;
        min-width: 48px;
        max-width: 48px;
        max-height: 48px;
    }
}

@media (max-width: 991px) {
    .events-page .events-show-list .event-list-location {
        color: #94a3b8;
    }

    .events-page .events-show-list .event-list-row,
    .events-page .events-show-list .event-list-row--club-header,
    .events-page .events-show-list .event-list-row--child {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 12px 10px;
    }

    .events-page .events-show-list .event-list-row__grid {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
        grid-template-rows: auto auto;
        column-gap: 12px;
        row-gap: 10px;
        align-items: center;
        width: 100%;
    }

    .events-page .events-show-list .event-list-row__grid .event-list-date {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
        align-self: center;
    }

    .events-page .events-show-list .event-list-row__grid .event-list-logo {
        grid-column: 2;
        grid-row: 1;
        justify-self: center;
        align-self: center;
    }

    .events-page .events-show-list .event-list-row__grid .event-list-row__content {
        grid-column: 1 / -1;
        grid-row: 2;
        width: 100%;
        padding-right: 0;
        text-align: left;
    }

    .events-page .events-show-list .event-list-row__grid--child {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
        grid-template-rows: auto auto;
        column-gap: 12px;
        row-gap: 10px;
        align-items: center;
        width: 100%;
    }

    .events-page .events-show-list .event-list-row__grid--child .event-list-date-wrap {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
        position: relative;
        display: block;
        min-width: 10.5rem;
        width: max-content;
        padding-right: 12px;
        box-sizing: border-box;
    }

    .events-page .events-show-list .event-list-row__grid--child .event-list-date-wrap .event-list-day-mark {
        display: block;
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        flex-shrink: 0;
    }

    .events-page .events-show-list .event-list-row__grid--child .event-list-date-wrap .event-list-date--child {
        position: relative;
        padding-left: 13px;
        font-size: 1.625rem;
        font-weight: 500;
        width: auto;
        text-align: left;
    }

    .events-page .events-show-list .event-list-row__grid--child .event-list-col-sep {
        display: none;
    }

    .events-page .events-show-list .event-list-row__grid--child .event-list-row__content {
        grid-column: 1 / -1;
        grid-row: 2;
        flex: none;
        width: 100%;
        align-self: stretch;
        text-align: left;
    }

    .events-page .events-show-list .event-list-col-sep {
        display: none;
    }

    .events-page .events-show-list .event-list-date,
    .events-page .events-show-list .event-list-row__grid .event-list-date {
        width: auto;
        min-width: 0;
        max-width: none;
        font-size: 1.625rem;
        font-weight: 500;
        text-align: left;
    }

    .events-page .events-show-list .event-list-date--single {
        text-align: left;
    }

    .events-page .events-show-list .event-list-date--range {
        align-items: center;
        text-align: center;
    }

    .events-page .events-show-list .event-list-date__year--block {
        text-align: center;
    }

    .events-page .events-show-list .event-list-logo {
        width: 56px;
        height: 56px;
        min-width: 56px;
        max-width: 56px;
        max-height: 56px;
        flex: 0 0 56px;
        margin-left: 0;
        margin-right: 0;
    }

    .events-page .events-show-list .event-list-row__actions,
    .events-page .events-show-list .event-list-row__meta {
        width: 100%;
        min-width: 0;
        max-width: none;
        flex: none;
        margin-left: 0;
        justify-content: stretch;
    }

    .events-page .events-show-list .event-list-btn,
    .events-page .events-show-list .event-list-status {
        flex: 1 1 calc(50% - 4px);
        min-width: 0;
    }

    .events-page .events-show-list .date-filter-row {
        gap: 6px;
    }

    .events-page .events-show-list .date-chip {
        font-size: 11px;
        padding: 5px 10px;
    }

    .events-page .events-show-list .event-list-row--club-header {
        position: relative;
        padding-bottom: 28px;
    }

    .events-page .events-show-list .event-list-row--club-header .event-list-row__meta {
        display: none;
    }

    .events-page .events-show-list .event-list-row--club-header .event-list-row__grid .event-list-logo,
    .events-page .events-show-list .event-list-row--single .event-list-row__grid .event-list-logo {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
    }

    .events-page .events-show-list .event-list-row--club-header .event-list-row__grid .event-list-date,
    .events-page .events-show-list .event-list-row--single .event-list-row__grid .event-list-date {
        grid-column: 2;
        grid-row: 1;
        justify-self: center;
        align-self: center;
        font-size: 1.875rem;
        font-weight: 700;
        text-align: center;
    }

    .events-page .events-show-list .event-list-row--club-header .event-list-row__grid .event-list-date--range,
    .events-page .events-show-list .event-list-row--single .event-list-row__grid .event-list-date--range {
        align-items: center;
    }

    .events-page .events-show-list .event-list-header-chevron {
        display: block;
        position: absolute;
        right: 10px;
        bottom: 10px;
        font-size: 14px;
        color: #6b7280;
        line-height: 1;
        transition: transform 0.2s ease;
        pointer-events: none;
    }

    .events-page .events-show-list .event-list-entry--open .event-list-header-chevron {
        transform: rotate(180deg);
    }

    .events-page .events-show-list .event-list-entry--club.event-list-entry--tone-0 .event-list-club-body { background: #dbeafe; }
    .events-page .events-show-list .event-list-entry--club.event-list-entry--tone-1 .event-list-club-body { background: #ede9fe; }
    .events-page .events-show-list .event-list-entry--club.event-list-entry--tone-2 .event-list-club-body { background: #d1fae5; }
    .events-page .events-show-list .event-list-entry--club.event-list-entry--tone-3 .event-list-club-body { background: #ffedd5; }
    .events-page .events-show-list .event-list-entry--club.event-list-entry--tone-4 .event-list-club-body { background: #ffe4e6; }
    .events-page .events-show-list .event-list-entry--club.event-list-entry--tone-5 .event-list-club-body { background: #ccfbf1; }
}

@media (max-width: 480px) {
    .events-page .events-show-list .event-list-row,
    .events-page .events-show-list .event-list-row--club-header,
    .events-page .events-show-list .event-list-row--child {
        padding: 10px 8px;
    }

    .events-page .events-show-list .event-list-row--club-header {
        padding-bottom: 28px;
    }

    .events-page .events-show-list .event-list-date,
    .events-page .events-show-list .event-list-date--child,
    .events-page .events-show-list .event-list-row__grid--child .event-list-date-wrap .event-list-date--child {
        font-size: 1.5rem;
    }

    .events-page .events-show-list .event-list-title {
        font-size: 14px;
    }

    .events-page .events-show-list .event-list-club {
        font-size: 14px;
    }

    .events-page .events-show-list .event-list-row--club-header .event-list-row__grid .event-list-date,
    .events-page .events-show-list .event-list-row--single .event-list-row__grid .event-list-date {
        font-size: 1.75rem;
        font-weight: 700;
    }

    .events-page .events-show-list .event-list-btn,
    .events-page .events-show-list .event-list-status,
    .events-page .events-show-list .event-list-show-count {
        font-size: 10px;
        padding: 7px 8px;
        min-height: 34px;
    }

    .events-page .events-show-list .event-list-row__actions {
        flex-wrap: wrap;
    }

    .events-page .events-show-list .event-list-status--closed {
        flex: 1 1 100%;
    }
}

/* Tabs on the left */
.tab-buttons {
    display: flex;
    flex-direction: column;

}

.tab-buttons~div.white {
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
}

.tab-buttons button {
    padding: 30px 15px;
    font-size: 1.5em;
    background: #ddd;
    text-align: left;
    cursor: pointer;
    outline: none;
    transition: background-color 0.3s;
    writing-mode: sideways-lr;
    border: 1px solid #ccc;

    &.LV,
    &.UA,
    &.MT {
        padding-top: 110px;
        background-repeat: no-repeat;
        background-size: 80%;
        background-clip: padding-box;
        background-position: 50% 10px;
    }

    &.LV {
        background-image: url(/media/img/coa_lv.png);

    }

    &.UA {
        background-image: url(/media/img/coa_ua.png);

    }

    &.MT {
        background-image: url(/media/img/coa_mt.png);

    }
}

.tab-buttons button:hover {
    background-color: #eee;
}

.tab-buttons button.active {
    background-color: white;
    border-right: none;
}

.tab-content {
    flex: 1;
    padding: 20px;
    display: none;
}

.tab-content.active {
    display: block;
}

/*.pulsing-image {
  animation: pulse 2s infinite;
}*/

@keyframes pulse {
    0% {
        transform: scale(1);

    }

    50% {
        transform: scale(1.05);

    }

    100% {
        transform: scale(1);

    }
}

a.alert-button {
    display: inline-flex;
    align-items: center;
    background: white;
    padding: 10px 15px;
    border: 3px groove #e2322e;
    color: #e2322e;
    font-weight: 800;
    gap: 10px;

    &:hover {
        text-decoration: none;
        color: maroon;

        svg {
            fill: maroon;
        }
    }

    animation: pulse 2s infinite;
}

.greenHi {
    color: limegreen;
    font-weight: 600;
}

.registration-message {
    font-size: 15px;
    /* larger text */
    line-height: 1.3;
    /* tighter line spacing */
    color: #222;
    /* darker text for readability */
    padding: 0;
}

.registration-message p {
    margin: 4px 0;
    color: #222;
    word-break: break-word;

    /* smaller gap between paragraphs */
    b {
        font-size: 1.1em;
    }
}

.registration-message a {
    color: #00447a;
}

.registration-message .title {
    font-size: 18px;
    /* larger for the heading */
    font-weight: bold;
    /* bold, like in screenshot */
    margin-bottom: 6px;
    /* small gap after heading */
}

.signup-success-card {
    padding: 22px;
}

.dogs-success-card {
    padding: 22px;
}

.dogs-success-message {
    font-size: 15px;
    line-height: 1.3;
    color: #222;
}

.dogs-success-message p {
    margin: 4px 0;
    color: #222;
    word-break: break-word;
}

.dogs-success-message .title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 6px;
}

.dogs-success-message a {
    color: #00447a;
}

.dogs-success-message b a {
    font-size: 1.1em;
    font-weight: 700;
}

.signup-confirm-card {
    padding: 22px;
}

.signup-confirm-message {
    color: #222;
}

.signup-confirm-title {
    margin: 0 0 20px;
    color: #00447a;
    font-size: 22px;
    line-height: 1.25;
}

.signup-confirm-action {
    text-align: center;
}

.profile-edit-card p,
.profile-edit-card h4 {
    color: #444440;
}

.profile-edit-card a {
    color: #00447a;
}

.profile-edit-card .success-container,
.profile-edit-card .error-container {
    margin-bottom: 14px;
}

.profile-edit-card .glyphicon-remove {
    color: #c92a2a;
}

.profile-edit-card .glyphicon-info-sign {
    color: #00447a;
}

/* Dogs add page */

.dogs-add-header {
    margin-bottom: 8px;
}

.dogs-progress {
    width: 100%;
}

.dogs-progress-track {
    height: 10px;
    background: #eaf4ff;
}

.dogs-progress-fill {
    height: 100%;
    background: linear-gradient(to right, #00447a 0%, #00447a 88%, rgba(0, 68, 122, 0.35) 100%);
    transition: width 0.2s ease;
}

.dogs-add-footer-steps {
    margin-top: 0;
}

.dogs-progress--header {
    margin-bottom: 0;
}

.dogs-progress--footer {
    margin-top: 14px;
}

.dogs-step-actions {
    display: flex;
    gap: 12px;
}

.dogs-step-actions .dogs-step-action-back,
.dogs-step-actions .dogs-step-action-primary {
    flex: 1 1 0;
}

.dogs-step-actions .dogs-step-action-back {
    box-sizing: border-box;
    padding: 14px 15px;
}

@media (min-width: 576px) and (max-width: 992px) {
    .dogs-step-actions .dogs-step-action-back,
    .dogs-step-actions .dogs-step-action-primary {
        width: auto !important;
        margin-top: 0 !important;
    }
}

.dogs-document-card .glyphicon-info-sign {
    color: #00447a;
}

.dogs-document-card .glyphicon-remove {
    color: #c92a2a;
}

.dogs-document-card p {
    color: #444440;
}

.dogs-document-card .dogs-document-submit-button {
    width: 100%;
}

@media (max-width: 767px) {
    .dogs-add-header {
        margin-bottom: 10px;
    }

    .a-container form[name="dogFormTwo"] .my-profile-info-checkbox {
        margin-top: 4px;
        margin-bottom: 12px;
    }
}

@media (max-width: 575px) {
    .dogs-step-actions {
        flex-direction: column;
    }

    .dogs-step-actions .dogs-step-action-primary {
        order: 1;
    }

    .dogs-step-actions .dogs-step-action-back {
        order: 2;
    }
}

.signup-confirm-action--success {
    background: #008200 !important;
}

.signup-confirm-action--success:hover,
.signup-confirm-action--success:focus {
    background: #006d00 !important;
    color: #fff;
}

@media (max-width: 767px) {
    h1.title {
        font-size: 28px;
        line-height: 34px;
        margin: 10px 0;
    }

    h2.title {
        font-size: 20px;
    }

    h1.signup-title {
        font-size: 20pt;
    }

    .profile-content-container h1 {
        font-size: 18pt;
    }

    .event-view h1.title.event-name-title {
        font-size: 24px;
        line-height: 30px;
    }

    .event-name-inline {
        font-size: 0.82em;
    }

    .signup-success-card {
        padding: 14px;
    }

    .dogs-success-card {
        padding: 14px;
    }

    .signup-confirm-card {
        padding: 14px;
    }

    .registration-message {
        font-size: 14px;
        line-height: 1.35;
    }

    .registration-message .title {
        font-size: 16px;
        line-height: 1.3;
        margin-bottom: 8px;
    }

    .registration-message p {
        margin: 8px 0;
    }

    .dogs-success-message {
        font-size: 14px;
        line-height: 1.35;
    }

    .dogs-success-message .title {
        font-size: 16px;
        line-height: 1.3;
        margin-bottom: 8px;
    }

    .dogs-success-message p {
        margin: 8px 0;
    }

    .signup-confirm-title {
        font-size: 18px;
        margin-bottom: 14px;
    }

    /* About / contacts: same spacing and alignment on small screens */
    .textpage.a-container.content-container {
        padding-left: 16px !important;
        padding-right: 16px !important;
        padding-top: 24px;
        padding-bottom: 32px;
        margin-bottom: 24px;
    }

    .textpage .textpage-panel.content-container {
        padding-left: 20px !important;
        padding-right: 20px !important;
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .textpage .paragraph {
        text-align: start;
        text-justify: auto;
    }

    .textpage p.contactUs {
        text-align: start;
    }

    .textpage p.contactUs + p.contactUs {
        margin-top: 10px;
    }

    .welcome-page.content-container {
        display: flex;
        flex-direction: column;
        padding: 12px 12px 24px !important;
        margin-bottom: 20px;
    }

    .welcome-page h1.title {
        font-size: 22px;
        line-height: 28px;
        margin: 4px 0 8px;
    }

    .welcome-page .lkf-card-warning {
        order: 3;
        margin-left: -6px;
        margin-right: -6px;
        margin-bottom: 10px;
    }

    .welcome-page .lkf-card-warning p {
        margin: 0 0 8px;
        font-size: 14px;
        line-height: 1.25;
    }

    .welcome-page .lkf-card-warning .col-md-12 {
        padding-left: 6px;
        padding-right: 6px;
    }

    .welcome-page a.alert-button {
        padding: 7px 10px;
        gap: 7px;
        font-size: 13px;
    }

    .welcome-page a.alert-button svg {
        width: 30px;
        height: 30px;
        flex: 0 0 auto;
    }

    .welcome-page .welcome-icons {
        order: 2;
        display: block;
        width: 100%;
        margin: 0;
    }

    .welcome-page .welcome-icons > div {
        padding-left: 4px;
        padding-right: 4px;
    }

    .welcome-page .welcome-icons a {
        height: 104px;
        margin: 0 0 8px;
        padding: 10px 4px 8px;
        font-size: 14px;
        line-height: 1.2;
    }

    .welcome-page .welcome-icons svg {
        margin: 0 auto 6px !important;
    }

    .welcome-page .welcome-icons span {
        position: static;
        width: auto;
    }
}



    .a-container {
        max-width: 1680px;
        margin: auto;
    }

.prior-field-changed,
.prior-field-changed > td {
    background-color: #fff3cd !important;
}

.prior-approval-row-yes > td {
    background-color: #e8f6ef !important;
}

.prior-approval-row-partially > td {
    background-color: #fff8e1 !important;
}

.prior-approval-row-no > td,
.prior-approval-row-unknown > td {
    background-color: #fdecea !important;
}

.prior-approval-status-cell {
    text-align: left;
    vertical-align: middle !important;
    white-space: nowrap;
    cursor: help;
    padding-left: 12px !important;
}

.prior-approval-badge {
    display: inline-block;
    width: 28px;
    height: 28px;
    line-height: 28px;
    border-radius: 50%;
    color: #fff;
    text-align: center;
    font-size: 14px;
    vertical-align: middle;
}

.prior-approval-badge .fa {
    line-height: 28px;
}

.prior-approval-badge.prior-approval-yes {
    background-color: #2ecc71;
}

.prior-approval-badge.prior-approval-partially {
    background-color: #f5a623;
}

.prior-approval-badge.prior-approval-no,
.prior-approval-badge.prior-approval-unknown {
    background-color: #e74c3c;
}

.prior-approval-status-text {
    display: inline-block;
    margin-left: 8px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    vertical-align: middle;
    color: #333;
}

.prior-approval-tooltip.tooltip {
    opacity: 1;
}

.prior-approval-tooltip .tooltip-inner {
    max-width: 360px;
    padding: 0;
    text-align: left;
    background: transparent;
    color: #222;
    border-radius: 0;
    box-shadow: none;
}

.prior-approval-tooltip .tooltip-arrow {
    border-top-color: #003d6b !important;
    border-bottom-color: #003d6b !important;
}

.prior-approval-tooltip.top .tooltip-arrow {
    border-top-color: #003d6b !important;
}

.prior-approval-tooltip.bottom .tooltip-arrow {
    border-bottom-color: #003d6b !important;
}

.prior-approval-tip {
    width: 340px;
    border: 1px solid #003d6b;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.prior-approval-tip-header {
    background: #003d6b;
    color: #fff;
    padding: 4px 10px;
    font-size: 14px;
    line-height: 1.2;
}

.prior-approval-tip-body {
    padding: 12px 14px 14px;
}

.prior-approval-tip-yes .prior-approval-tip-body {
    background: #e8f6ef;
}

.prior-approval-tip-partially .prior-approval-tip-body {
    background: #fff8e1;
}

.prior-approval-tip-no .prior-approval-tip-body,
.prior-approval-tip-unknown .prior-approval-tip-body {
    background: #fdecea;
}

.prior-approval-tip-title {
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 4px;
    line-height: 1.3;
}

.prior-approval-tip-dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin-right: 8px;
    vertical-align: middle;
}

.prior-approval-tip-yes .prior-approval-tip-dot {
    background: #2ecc71;
}

.prior-approval-tip-partially .prior-approval-tip-dot {
    background: #f5a623;
}

.prior-approval-tip-no .prior-approval-tip-dot,
.prior-approval-tip-unknown .prior-approval-tip-dot {
    background: #e74c3c;
}

.prior-approval-tip-subtitle {
    font-weight: 700;
    font-size: 13px;
    margin: 0 0 8px 18px;
}

.prior-approval-tip-text {
    font-size: 12px;
    line-height: 1.45;
    margin-left: 18px;
}

.prior-approval-tip-footer {
    font-size: 12px;
    font-weight: 700;
    margin: 10px 0 0 18px;
}

.prior-file-added-badge {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 5px;
    font-size: 11px;
    line-height: 1.2;
    color: #8a6d3b;
    background: #fcf8e3;
    border: 1px solid #faebcc;
    border-radius: 2px;
    vertical-align: middle;
}
