@font-face {
    font-family: "Capture Smallz Clean";
    src: url("fonts/Capture-Smallz-Clean.ttf") format("truetype");
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

.vecbeh-card,
.vecbeh-list-section,
.vecbeh-lists {
    --vecbeh-ink: #18263d;
    --vecbeh-muted: #59677c;
    --vecbeh-primary: #174788;
    --vecbeh-primary-dark: #0e3268;
    --vecbeh-line: #d8e2f0;
    --vecbeh-soft: #eef4fb;
    --vecbeh-sheet-navy: #243f73;
    --vecbeh-sheet-navy-dark: #172e58;
    --vecbeh-sheet-border: #111827;
    color: var(--vecbeh-ink);
    box-sizing: border-box;
}

.vecbeh-card {
    max-width: 920px;
    margin: 2rem auto;
    padding: clamp(1.25rem, 3vw, 2.5rem);
    border: 1px solid var(--vecbeh-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(18, 53, 103, .10);
}

.vecbeh-card h2,
.vecbeh-lists h2,
.vecbeh-list-section h3 { margin-top: 0; }

.vecbeh-form { display: grid; gap: 1.25rem; }
.vecbeh-grid { display: grid; gap: 1rem; }
.vecbeh-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.vecbeh-field,
.vecbeh-fieldset { display: grid; gap: .45rem; margin: 0; }
.vecbeh-field > span,
.vecbeh-fieldset legend,
.vecbeh-relay legend { font-weight: 650; }
.vecbeh-field small { color: var(--vecbeh-muted); font-weight: 400; }

.vecbeh-form input:not([type="checkbox"]):not([type="radio"]),
.vecbeh-form select,
.vecbeh-form textarea {
    width: 100%;
    min-height: 46px;
    box-sizing: border-box;
    border: 1px solid #aebbd0;
    border-radius: 9px;
    padding: .7rem .8rem;
    background: #fff;
    color: var(--vecbeh-ink);
    font: inherit;
}

.vecbeh-form textarea { resize: vertical; }
.vecbeh-form input:focus,
.vecbeh-form select:focus,
.vecbeh-form textarea:focus { outline: 3px solid rgba(23,71,136,.18); border-color: var(--vecbeh-primary); }

.vecbeh-fieldset,
.vecbeh-relay {
    padding: 1rem;
    border: 1px solid var(--vecbeh-line);
    border-radius: 12px;
}
.vecbeh-relay { display: grid; gap: 1rem; background: var(--vecbeh-soft); }
.vecbeh-primary-participant {
    display: grid;
    min-width: 0;
    gap: 1.25rem;
    margin: 0;
    padding: 0;
    border: 0;
}
.vecbeh-primary-participant.is-relay {
    gap: 1rem;
    padding: 1rem;
    border: 1px solid var(--vecbeh-line);
    border-radius: 12px;
    background: var(--vecbeh-soft);
}
.vecbeh-primary-participant > legend { padding: 0 .35rem; font-weight: 650; }
.vecbeh-primary-participant > legend[hidden] { display: none !important; }
.vecbeh-relay[hidden],
.vecbeh-fieldset[hidden],
.vecbeh-field[hidden] { display: none !important; }
.vecbeh-radio-row { display: flex; flex-wrap: wrap; gap: 1rem; }
.vecbeh-radio-row label,
.vecbeh-consents label { display: flex; align-items: flex-start; gap: .5rem; }
.vecbeh-consents { display: grid; gap: .75rem; }
.vecbeh-consents input { margin-top: .3rem; flex: 0 0 auto; }

.vecbeh-before-registration {
    margin: 1rem 0 1.25rem;
    padding: 1rem 1.1rem;
    border: 1px solid #a9bfdb;
    border-left: 5px solid var(--vecbeh-primary);
    border-radius: 10px;
    background: #f3f7fc;
}
.vecbeh-before-registration h3 {
    margin: 0 0 .65rem;
    color: var(--vecbeh-primary-dark);
    font-size: 1.08rem;
}
.vecbeh-before-registration ul {
    display: grid;
    gap: .38rem;
    margin: 0;
    padding-left: 1.25rem;
}
.vecbeh-before-registration li { margin: 0; }
.vecbeh-before-registration a { font-weight: 700; }

.vecbeh-category-info {
    display: grid;
    gap: .9rem;
    padding: 1rem;
    border: 1px solid #a9c8ad;
    border-left: 5px solid #2c7a3f;
    border-radius: 12px;
    background: #f2faf4;
}
.vecbeh-category-info[hidden] { display: none !important; }
.vecbeh-category-info h3 {
    margin: 0;
    color: #215f31;
    font-size: 1.08rem;
}
.vecbeh-category-info dl {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .55rem;
    margin: 0;
}
.vecbeh-category-info dl > div {
    min-width: 0;
    padding: .65rem .7rem;
    border: 1px solid #c9ddcc;
    border-radius: 8px;
    background: #fff;
}
.vecbeh-category-info dt {
    color: #52665a;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .025em;
    text-transform: uppercase;
}
.vecbeh-category-info dd {
    margin: .2rem 0 0;
    overflow-wrap: anywhere;
    color: #173f24;
    font-weight: 750;
    line-height: 1.3;
}
.vecbeh-category-info dl > div:nth-child(2) { grid-column: span 2; }
.vecbeh-category-info__note {
    margin: 0;
    padding-top: .8rem;
    border-top: 1px solid #c9ddcc;
    color: #294c33;
}
.vecbeh-category-info__note[hidden] { display: none !important; }

.vecbeh-fee {
    min-height: 1.5rem;
    padding: .75rem 1rem;
    border-left: 4px solid #2271b1;
    background: #eef6ff;
    color: #173a63;
    font-weight: 650;
}
.vecbeh-fee:empty { display: none; }
.vecbeh-relay-type { color: var(--vecbeh-primary-dark); font-weight: 700; }

.vecbeh-button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: fit-content;
    min-height: 46px;
    padding: .7rem 1.1rem;
    border: 2px solid var(--vecbeh-primary);
    border-radius: 9px;
    background: var(--vecbeh-primary);
    color: #fff !important;
    text-decoration: none !important;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}
.vecbeh-button:hover { background: var(--vecbeh-primary-dark); border-color: var(--vecbeh-primary-dark); }
.vecbeh-button--secondary { background: transparent; color: var(--vecbeh-primary) !important; }
.vecbeh-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.vecbeh-required { margin: 0; color: var(--vecbeh-muted); font-size: .9rem; }
.vecbeh-event-intro {
    display: grid;
    grid-template-columns: minmax(155px, .32fr) minmax(0, 1fr);
    overflow: hidden;
    margin: 0;
    border: 1px solid #b7c7dc;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(18, 53, 103, .12);
}
.vecbeh-event-intro__date,
.vecbeh-event-intro__place { display: grid; align-content: center; gap: .18rem; min-height: 82px; padding: .9rem 1.1rem; box-sizing: border-box; }
.vecbeh-event-intro__date { background: #173f7b; color: #fff; text-align: center; }
.vecbeh-event-intro__place { position: relative; padding-left: 1.35rem; background: linear-gradient(120deg, #f8fbff 0%, #eef4fb 100%); }
.vecbeh-event-intro__place::before { content: ""; position: absolute; top: 20%; bottom: 20%; left: 0; width: 4px; border-radius: 999px; background: #df315f; }
.vecbeh-event-intro span { font-size: .68rem; font-weight: 800; letter-spacing: .085em; text-transform: uppercase; }
.vecbeh-event-intro__date span { color: #c9dcf8; }
.vecbeh-event-intro__date time { color: #fff; font-size: 1.35rem; font-weight: 900; letter-spacing: .025em; line-height: 1.1; }
.vecbeh-event-intro__place span { color: #667792; }
.vecbeh-event-intro__place strong { color: #17345f; font-size: clamp(1rem, 2vw, 1.18rem); font-weight: 750; line-height: 1.3; }
.vecbeh-deadline { margin: -.5rem 0 0; color: var(--vecbeh-muted); font-size: .95rem; }
.vecbeh-submit-note { margin: -.65rem 0 0; color: var(--vecbeh-muted); font-size: .92rem; }
.vecbeh-honeypot { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }

.vecbeh-notice { margin: 1rem 0; padding: 1rem; border-radius: 9px; }
.vecbeh-notice ul { margin-bottom: 0; }
.vecbeh-notice--error { border: 1px solid #d69a9a; background: #fff0f0; color: #7e2020; }
.vecbeh-notice--info { border: 1px solid #9eb7d8; background: #eff6ff; }
.vecbeh-registration-age-warning {
    grid-column: 1 / -1;
    margin: -.15rem 0 .25rem;
    padding: .8rem .95rem;
    border: 1px solid #d89900;
    border-left: 5px solid #d89900;
    border-radius: 8px;
    background: #fff5cf;
    color: #603800;
    font-size: .92rem;
    font-weight: 750;
    line-height: 1.4;
}
.vecbeh-success-mark { display: grid; place-items: center; width: 58px; height: 58px; border-radius: 50%; background: var(--vecbeh-primary); color: #fff; font-size: 2rem; }
.vecbeh-assigned-bibs { display: grid; gap: .8rem; margin: 1.35rem 0; padding: 1.1rem; border: 2px solid var(--vecbeh-primary); border-radius: 14px; background: var(--vecbeh-soft); text-align: center; }
.vecbeh-assigned-bibs > p { margin: 0; color: var(--vecbeh-primary-dark); font-size: .85rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.vecbeh-assigned-bibs > div { display: flex; flex-wrap: wrap; justify-content: center; gap: .8rem; }
.vecbeh-assigned-bib { display: grid; flex: 1 1 210px; gap: .25rem; max-width: 330px; padding: .8rem 1rem; border: 1px solid #9eb7d8; border-radius: 10px; background: #fff; }
.vecbeh-assigned-bib span { color: var(--vecbeh-muted); font-weight: 700; }
.vecbeh-assigned-bib strong { color: var(--vecbeh-primary-dark); font-size: clamp(2.8rem, 9vw, 4.8rem); font-weight: 900; letter-spacing: .04em; line-height: 1; }
.vecbeh-assigned-bibs small { color: var(--vecbeh-muted); font-weight: 650; }

.vecbeh-lists { display: grid; gap: 2rem; margin: 2rem 0; }
.vecbeh-lists.vecbeh-tabbed-lists {
    position: relative;
    left: 50%;
    width: 100vw;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
    padding-right: clamp(12px, 2vw, 32px);
    padding-left: clamp(12px, 2vw, 32px);
    transform: translateX(-50vw);
    box-sizing: border-box;
    gap: 1rem;
}
.vecbeh-tabs {
    display: flex;
    gap: .35rem;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    padding: .4rem .4rem 0;
    border: 1px solid #b9c7db;
    border-bottom: 3px solid var(--vecbeh-sheet-navy);
    border-radius: 8px 8px 0 0;
    background: #f4f6f9;
    scrollbar-color: #9eb7d8 transparent;
    scrollbar-width: thin;
}
.vecbeh-tab {
    appearance: none;
    flex: 0 0 auto;
    margin: 0;
    padding: .72rem .95rem .65rem;
    border: 1px solid #c6d0df;
    border-bottom: 4px solid transparent;
    border-radius: 6px 6px 0 0;
    background: #fff;
    color: var(--vecbeh-sheet-navy-dark);
    font: inherit;
    font-size: .92rem;
    font-weight: 650;
    line-height: 1.2;
    white-space: nowrap;
    cursor: pointer;
}
.vecbeh-tab:hover { border-color: #8ea2bf; background: #f9fbff; }
.vecbeh-tab[aria-selected="true"] { border-color: var(--vecbeh-sheet-navy); border-bottom-color: #df315f; background: var(--vecbeh-sheet-navy); color: #fff; }
.vecbeh-tab:focus-visible { outline: 3px solid rgba(23,71,136,.22); outline-offset: 2px; }
.vecbeh-tab-panels { min-width: 0; }
.vecbeh-results-workspace { min-width: 0; }
.vecbeh-results-editor-active .vecbeh-results-workspace {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(310px, 360px);
    align-items: start;
    gap: 1rem;
}
.vecbeh-results-access,
.vecbeh-results-login {
    justify-self: end;
    max-width: 620px;
    box-sizing: border-box;
    border: 1px solid #9eb7d8;
    border-radius: 8px;
    background: #f4f8fd;
    color: var(--vecbeh-ink);
}
.vecbeh-results-access { display: flex; flex-wrap: wrap; align-items: center; gap: .45rem 1rem; padding: .7rem 1rem; }
.vecbeh-results-access a { margin-left: auto; }
.vecbeh-results-access span { color: var(--vecbeh-muted); }
.vecbeh-results-login { width: min(100%, 420px); padding: .75rem 1rem; }
.vecbeh-results-login__title { display: block; padding-right: 2rem; color: var(--vecbeh-primary-dark); font-weight: 750; }
.vecbeh-results-login form { display: flex; flex-wrap: wrap; align-items: end; gap: .7rem; margin-top: .85rem; }
.vecbeh-results-login label { display: grid; flex: 1 1 210px; gap: .35rem; font-size: .95rem; font-weight: 700; line-height: 1.25; }
.vecbeh-results-login input[type="text"],
.vecbeh-results-login input[type="password"],
.vecbeh-results-login .vecbeh-button {
    height: 46px;
    min-height: 46px;
    box-sizing: border-box;
    margin: 0;
    font-family: inherit;
    font-size: .95rem;
    line-height: 1.2;
}
.vecbeh-results-login input[type="text"],
.vecbeh-results-login input[type="password"] { width: 100%; padding: 0 .75rem; border: 1px solid #aebbd0; border-radius: 7px; }
.vecbeh-results-login .vecbeh-button { padding: 0 1.15rem; }
.vecbeh-results-editor-message { justify-self: end; max-width: 620px; padding: .65rem .9rem; border-radius: 7px; font-weight: 650; }
.vecbeh-results-editor-message--success { border: 1px solid #72ad83; background: #edf9f0; color: #175d2b; }
.vecbeh-results-editor-message--error { border: 1px solid #d69a9a; background: #fff0f0; color: #7e2020; }
.vecbeh-results-entry {
    position: sticky;
    top: 1rem;
    overflow: hidden;
    border: 2px solid var(--vecbeh-sheet-border);
    border-radius: 3px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(26, 48, 86, .12);
}
.vecbeh-results-entry > header { padding: 1rem; background: var(--vecbeh-sheet-navy); color: #fff; }
.vecbeh-results-entry > header h3 { margin: 0 0 .45rem; color: #fff; font-size: 1.08rem; }
.vecbeh-results-entry > header p { margin: 0; color: #fff; font-size: .88rem; line-height: 1.4; }
.vecbeh-results-entry form { display: grid; gap: .9rem; padding: .85rem; }
.vecbeh-results-entry-scroll { max-height: 57vh; overflow: auto; border: 1px solid #aebbd0; }
.vecbeh-results-entry table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.vecbeh-results-entry th { position: sticky; top: 0; z-index: 1; padding: .55rem .45rem; border: 1px solid #101827; background: var(--vecbeh-sheet-navy-dark); color: #fff; font-size: .78rem; text-align: center; }
.vecbeh-results-entry td { padding: 0; border: 1px solid #b7c1d0; }
.vecbeh-results-entry input { width: 100%; min-height: 38px; box-sizing: border-box; margin: 0; padding: .45rem .5rem; border: 0; border-radius: 0; background: #fff; color: #111827; font: inherit; font-variant-numeric: tabular-nums; }
.vecbeh-results-entry input:focus { position: relative; z-index: 1; outline: 3px solid #2271b1; outline-offset: -3px; background: #eef6ff; }
.vecbeh-results-entry-actions { display: flex; flex-wrap: wrap; gap: .6rem; }
.vecbeh-results-entry-actions .vecbeh-button { flex: 1 1 130px; width: auto; min-height: 42px; padding: .55rem .7rem; }
.vecbeh-results-entry-help { margin: 0; color: var(--vecbeh-muted); font-size: .82rem; line-height: 1.35; }
[data-vecbeh-tab-panel][hidden] { display: none !important; }
.vecbeh-list-section {
    overflow: hidden;
    border: 2px solid var(--vecbeh-sheet-border);
    border-radius: 2px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(26, 48, 86, .10);
}
.vecbeh-sheet-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(250px, 31%);
    align-items: center;
    gap: clamp(1.2rem, 4vw, 3rem);
    min-height: 210px;
    padding: clamp(1.5rem, 4vw, 3rem);
    box-sizing: border-box;
    border-bottom: 2px solid var(--vecbeh-sheet-border);
    background:
        radial-gradient(circle at 82% 18%, rgba(80,125,200,.36) 0%, rgba(80,125,200,.18) 18%, transparent 42%),
        linear-gradient(118deg, #0c2349 0%, #102c59 18%, #14366c 36%, #173f7b 54%, #153a72 70%, #112f63 86%, #0e2c5d 100%);
    color: #fff;
}
.vecbeh-sheet-hero::after {
    content: "";
    position: absolute;
    z-index: -2;
    inset: 0;
    background:
        radial-gradient(ellipse at 14% 0%, rgba(255,255,255,.055) 0%, transparent 58%),
        linear-gradient(105deg, rgba(255,255,255,.018) 0%, transparent 48%, rgba(2,12,32,.05) 100%);
}
.vecbeh-sheet-hero__track {
    position: absolute;
    z-index: -1;
    right: -8%;
    bottom: -78px;
    width: 70%;
    height: 155px;
    border: 2px solid rgba(255,255,255,.16);
    border-radius: 50%;
    box-shadow: 0 -14px 0 rgba(255,255,255,.05), 0 -28px 0 rgba(255,255,255,.04);
    transform: rotate(-5deg);
}
.vecbeh-sheet-hero__text { display: grid; gap: .85rem; min-width: 0; }
.vecbeh-sheet-hero__title { display: grid; gap: .42rem; }
.vecbeh-sheet-hero__title-main {
    display: block;
    max-width: 840px;
    color: #fff;
    font-family: "Capture Smallz Clean", Impact, sans-serif;
    font-size: clamp(2.1rem, 4.4vw, 4.25rem);
    font-weight: 400;
    line-height: .94;
    letter-spacing: .012em;
    text-shadow: 0 3px 20px rgba(2,12,32,.25);
}
.vecbeh-sheet-hero__title-suffix {
    display: block;
    color: #eef5ff;
    font-family: "Segoe UI Light", "Helvetica Neue", Arial, sans-serif;
    font-size: clamp(.94rem, 1.55vw, 1.28rem);
    font-weight: 300;
    line-height: 1.25;
    letter-spacing: .015em;
}
.vecbeh-sheet-hero__title-suffix strong { color: #fff; font: inherit; font-weight: 800; }
.vecbeh-sheet-hero__meta { display: flex; flex-wrap: wrap; gap: .55rem; }
.vecbeh-sheet-hero__meta > span {
    display: grid;
    min-width: 155px;
    gap: .05rem;
    padding: .48rem .7rem;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 8px;
    background: rgba(5,23,54,.32);
    color: #fff;
    font-size: .92rem;
    font-weight: 750;
}
.vecbeh-sheet-hero__meta small { color: #bcd3f5; font-size: .64rem; font-weight: 800; letter-spacing: .055em; text-transform: uppercase; }
.vecbeh-sheet-hero__identity {
    display: grid;
    justify-items: center;
    padding: 0;
}
.vecbeh-sheet-hero__logo-button {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 10px;
    background: transparent;
    cursor: pointer;
}
.vecbeh-sheet-hero__logo-button:hover { filter: brightness(1.08); }
.vecbeh-sheet-hero__logo-button:focus-visible { outline: 3px solid #fff; outline-offset: 5px; }
.vecbeh-sheet-hero__mark {
    display: block;
    width: min(100%, 360px);
    max-height: 180px;
    box-sizing: border-box;
    object-fit: contain;
}
.vecbeh-operator-panel {
    position: fixed;
    right: clamp(.75rem, 2.5vw, 2rem);
    bottom: clamp(.75rem, 3vh, 2rem);
    z-index: 100000;
    width: min(calc(100vw - 1.5rem), 620px);
    max-height: calc(100vh - 1.5rem);
    overflow: auto;
    box-sizing: border-box;
    filter: drop-shadow(0 18px 35px rgba(2, 12, 32, .3));
}
.vecbeh-operator-panel[hidden] { display: none !important; }
.vecbeh-operator-panel .vecbeh-results-access,
.vecbeh-operator-panel .vecbeh-results-login { width: 100%; max-width: none; background: #f4f8fd; }
.vecbeh-operator-panel__close {
    position: absolute;
    top: .45rem;
    right: .55rem;
    z-index: 1;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--vecbeh-primary-dark);
    font: 700 1.5rem/1 sans-serif;
    cursor: pointer;
}
.vecbeh-operator-panel__close:hover { background: rgba(23, 71, 136, .1); }
.vecbeh-operator-panel__close:focus-visible { outline: 3px solid rgba(23, 71, 136, .3); outline-offset: 1px; }
.vecbeh-list-header { overflow-x: auto; padding: 0; border-bottom: 2px solid var(--vecbeh-sheet-border); background: var(--vecbeh-sheet-navy); color: #fff; }
.vecbeh-list-header--category { margin-bottom: 16px; }
.vecbeh-list-print-toolbar { display: flex; justify-content: flex-end; padding: 0 .75rem .75rem; background: #fff; }
.vecbeh-list-print-toolbar .vecbeh-button { width: auto; min-height: 38px; padding: .48rem .8rem; font-size: .84rem; }
.vecbeh-list-header > div { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(160px, .8fr); border-bottom: 1px solid rgba(255,255,255,.42); }
.vecbeh-list-header h3,
.vecbeh-list-header > div > p { margin: 0; padding: .72rem 1rem; color: #fff; font-size: 1rem; font-weight: 750; }
.vecbeh-list-header > div > p { border-left: 1px solid rgba(255,255,255,.42); text-align: center; }
.vecbeh-list-header dl { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 0; margin: 0; }
.vecbeh-list-header dl div { display: grid; grid-template-columns: 1fr; align-content: center; gap: .12rem; min-height: 58px; padding: .55rem .8rem; border-right: 1px solid rgba(255,255,255,.42); text-align: center; }
.vecbeh-list-header dl div:last-child { border-right: 0; }
.vecbeh-list-header dt { color: #fff; font-size: .74rem; font-weight: 650; letter-spacing: .035em; text-transform: uppercase; opacity: .86; }
.vecbeh-list-header dd { margin: 0; color: #fff; font-weight: 800; }
.vecbeh-list-header > .vecbeh-category-spec {
    display: grid;
    grid-template-columns: minmax(185px, 1.15fr) minmax(108px, .58fr) minmax(175px, 1.15fr) minmax(112px, .62fr) minmax(82px, .5fr) minmax(112px, .58fr);
    grid-template-areas:
        "category distance-label distance call-label call count"
        "years route-label route start-label start count";
    min-width: 780px;
    border: 2px solid #101827;
    background: var(--vecbeh-sheet-navy);
}
.vecbeh-category-spec > div {
    display: flex;
    min-height: 34px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    padding: .3rem .55rem;
    border-right: 1px solid #101827;
    border-bottom: 1px solid #101827;
    color: #fff;
    font-size: .88rem;
    font-weight: 750;
    line-height: 1.15;
    text-align: center;
}
.vecbeh-category-spec__category { grid-area: category; }
.vecbeh-category-spec__years { grid-area: years; }
.vecbeh-category-spec__distance-label { grid-area: distance-label; justify-content: center; }
.vecbeh-category-spec__distance { grid-area: distance; }
.vecbeh-category-spec__route-label { grid-area: route-label; justify-content: center !important; }
.vecbeh-category-spec__route { grid-area: route; }
.vecbeh-category-spec__call-label { grid-area: call-label; justify-content: center; }
.vecbeh-category-spec__call { grid-area: call; }
.vecbeh-category-spec__start-label { grid-area: start-label; justify-content: center !important; }
.vecbeh-category-spec__start { grid-area: start; }
.vecbeh-category-spec > .vecbeh-category-spec__count {
    grid-area: count;
    flex-direction: column;
    gap: .15rem;
    border-right: 0;
    border-bottom: 0;
}
.vecbeh-category-spec__years,
.vecbeh-category-spec__route-label,
.vecbeh-category-spec__route,
.vecbeh-category-spec__start-label,
.vecbeh-category-spec__start { border-bottom: 0 !important; }
.vecbeh-category-spec__category h3 {
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: .92rem;
    font-weight: 800;
    line-height: 1.15;
    text-align: center;
}
.vecbeh-category-spec__count > span { font-size: .82rem; font-weight: 800; }
.vecbeh-category-spec__count > strong { color: #fff; font-size: .95rem; }
.vecbeh-category-spec__count > .vecbeh-list-status {
    margin: .1rem 0 0;
    padding: .08rem .3rem;
    font-size: .55rem;
    line-height: 1.1;
}
.vecbeh-route { grid-column: 1 / -1; margin: 0 !important; padding: .68rem 1rem; border-top: 1px solid rgba(255,255,255,.42); color: #fff; font-weight: 650; text-align: center; }
.vecbeh-route--yellow { border-top-color: #edc837; background: #f3d84f; color: #382e00; }
.vecbeh-route--blue { border-top-color: #6da2e4; background: #1763a9; color: #fff; }
.vecbeh-route--red { border-top-color: #ef7787; background: #b92539; color: #fff; }
.vecbeh-route--track { border-top-color: #d9a079; background: #a64b31; color: #fff; }
.vecbeh-route--neutral { background: #31517f; color: #fff; }
.vecbeh-table-wrap { overflow-x: auto; }
.vecbeh-table { width: 100%; min-width: 680px; border-collapse: collapse; background: #fff; font-size: .92rem; }
.vecbeh-table--relay { min-width: 1050px; }
.vecbeh-table--results:not(.vecbeh-table--relay) { min-width: 820px; }
.vecbeh-table th,
.vecbeh-table td { padding: .7rem .85rem; border: 1px solid #ccd3df; text-align: center; vertical-align: middle; }
.vecbeh-table th {
    padding: .72rem .7rem;
    border: 1px solid #101827;
    background: var(--vecbeh-sheet-navy);
    color: #fff;
    font-size: .84rem;
    font-weight: 750;
    line-height: 1.2;
    text-align: center;
    vertical-align: middle;
}
.vecbeh-table thead .vecbeh-table-group th { background: var(--vecbeh-sheet-navy-dark); }
.vecbeh-table tbody tr:nth-child(even) { background: #f5f7fa; }
.vecbeh-table tbody tr:hover { background: #eef3fa; }
.vecbeh-bib-cell,
.vecbeh-rank-cell,
.vecbeh-time-cell { font-weight: 800; white-space: nowrap; }
.vecbeh-category-badge { display: inline-flex; justify-content: center; min-width: 3.4rem; padding: .18rem .55rem; border-radius: 999px; font-size: .82rem; font-weight: 750; line-height: 1.25; white-space: nowrap; }
.vecbeh-category-badge--male { background: #d9e9ff; color: #123d75; }
.vecbeh-category-badge--female { background: #c62828; color: #fff; }
.vecbeh-category-badge--mixed { background: #f4dfb5; color: #71460d; }
.vecbeh-category-badge--veteran { background: #e8edf5; color: #263f70; }

.vecbeh-list-status {
    display: inline-flex;
    margin-right: .65rem;
    padding: .2rem .55rem;
    border: 1px solid rgba(255,255,255,.72);
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .02em;
    line-height: 1.2;
    text-transform: uppercase;
    vertical-align: .12rem;
}
.vecbeh-list-status--official { border-color: #82d69b; background: #1d6b36; }
.vecbeh-list-status--provisional { border-color: #ffd47a; background: #7b570d; }
.vecbeh-list-status--working { border-color: #a9c7ed; background: #31517f; }
.vecbeh-list-status--start { background: rgba(255,255,255,.12); }
.vecbeh-official-meta { margin: 0; padding: .55rem 1rem; border-top: 1px solid rgba(255,255,255,.42); color: #fff; text-align: center; }
.vecbeh-registration-meta { margin: 0; padding: .55rem 1rem; border-top: 1px solid #f3c76b; background: #fff4d7; color: #704b00; font-weight: 800; text-align: center; }
.vecbeh-table--unified { min-width: 1050px; }
.vecbeh-results-editor-active .vecbeh-table--unified { min-width: 1480px; }
.vecbeh-table--unified .vecbeh-time-cell { position: relative; min-width: 150px; }
.vecbeh-table--unified .vecbeh-presentation-cell { min-width: 112px; }
.vecbeh-inline-result {
    width: 118px;
    height: 44px;
    min-height: 44px;
    box-sizing: border-box;
    margin: 0;
    padding: .42rem .55rem;
    border: 2px solid #8798b2;
    border-radius: 6px;
    background: #fff;
    color: #111827;
    font: inherit;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    text-align: center;
}
.vecbeh-inline-result:focus { border-color: #2271b1; outline: 3px solid rgba(34,113,177,.2); }
.vecbeh-inline-result.is-saving { border-color: #a77818; background: #fff9e8; }
.vecbeh-inline-result.is-error { border-color: #b42318; background: #fff1f0; }
.vecbeh-inline-field {
    width: 100%;
    min-width: 88px;
    height: 44px;
    min-height: 44px;
    box-sizing: border-box;
    margin: 0;
    padding: .38rem .46rem;
    border: 1px solid #9aa9bf;
    border-radius: 5px;
    background: #fff;
    color: #172033;
    font: inherit;
}
.vecbeh-inline-field:focus { border-color: #1769aa; outline: 3px solid rgba(23,105,170,.17); }
.vecbeh-inline-field.is-saving { border-color: #a77818; background: #fff9e8; }
.vecbeh-inline-field.is-saved { border-color: #238144; }
.vecbeh-inline-field.is-error { border-color: #b42318; background: #fff1f0; }
.vecbeh-inline-field--bib { min-width: 72px; font-weight: 850; text-align: center; }
.vecbeh-inline-field--year { min-width: 82px; text-align: center; }
.vecbeh-inline-field--club { min-width: 150px; }
.vecbeh-inline-person { display: grid; gap: .18rem; margin: .16rem 0; }
.vecbeh-inline-person--compact { margin: 0; }
.vecbeh-inline-person > span { color: #66758a; font-size: .66rem; font-weight: 750; line-height: 1.1; }
.vecbeh-inline-name { display: grid; grid-template-columns: minmax(90px, 1fr) minmax(110px, 1fr); gap: .28rem; margin: 0; }
.vecbeh-row-save-state { position: absolute; right: .35rem; bottom: .08rem; left: .35rem; display: block; margin: 0; color: var(--vecbeh-muted); font-size: .68rem; font-weight: 600; line-height: 1.1; white-space: normal; }
.vecbeh-row-save-state:empty { display: none; }
.vecbeh-row-save-state[data-state="saved"] { color: #1d6b36; }
.vecbeh-row-save-state[data-state="error"] { color: #9c1c13; }
.vecbeh-row-save-state[data-state="offline"] { color: #7b570d; }
.vecbeh-results-editor-active .vecbeh-result-print { display: none; }
.vecbeh-present-toggle { display: inline-flex; align-items: center; gap: .25rem; margin: 0 .25rem; cursor: pointer; }
.vecbeh-present-toggle input { width: 20px; height: 20px; margin: 0; accent-color: #1d6b36; }
.vecbeh-presentation-public { font-weight: 750; color: #31517f; }
.vecbeh-tie-rank-cell { min-width: 122px; background: #fff3bf !important; }
.vecbeh-tie-rank-cell.is-resolved { background: #eaf7ee !important; }
.vecbeh-tie-rank-cell input {
    width: 64px;
    min-height: 38px;
    padding: .4rem;
    border: 2px solid #b97909;
    border-radius: 6px;
    background: #fff;
    color: #111827;
    font: inherit;
    font-weight: 800;
    text-align: center;
}
.vecbeh-tie-rank-cell input:focus { border-color: #174788; outline: 3px solid rgba(23,71,136,.2); }
.vecbeh-tie-rank-cell input.is-saving { border-color: #a77818; background: #fff9e8; }
.vecbeh-tie-rank-cell input.is-error { border-color: #b42318; background: #fff1f0; }
.vecbeh-tie-rank-cell button {
    display: block;
    width: 100%;
    margin-top: .35rem;
    padding: .3rem .38rem;
    border: 1px solid #8b5d08;
    border-radius: 5px;
    background: #fff;
    color: #684305;
    font: inherit;
    font-size: .68rem;
    font-weight: 800;
    line-height: 1.15;
    cursor: pointer;
}
.vecbeh-tie-rank-cell button:hover,
.vecbeh-tie-rank-cell button:focus { border-color: #174788; color: #174788; outline: 2px solid rgba(23,71,136,.14); }
.vecbeh-tie-rank-cell [data-vecbeh-tie-state] { display: block; margin-top: .25rem; color: #8a5600; font-size: .68rem; font-weight: 800; line-height: 1.2; }
.vecbeh-tie-rank-cell [data-state="saved"] { color: #1d6b36; }
.vecbeh-tie-rank-cell [data-state="error"] { color: #9c1c13; }
.vecbeh-tie-position-print { display: none; }
.vecbeh-tie-help { margin: .65rem 0 0; color: #5c4312; font-size: .88rem; line-height: 1.45; }
.vecbeh-category-tools {
    display: grid;
    grid-template-columns: minmax(260px, .8fr) minmax(360px, 1.2fr);
    align-items: start;
    gap: 1rem;
    padding: 1rem;
    border-top: 2px solid var(--vecbeh-sheet-border);
    background: #f4f7fb;
}
.vecbeh-tie-help-wrap { grid-column: 1 / -1; }
.vecbeh-category-tool-actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .65rem; }
.vecbeh-category-state-form { display: inline-flex; margin: 0; }
.vecbeh-category-tool-actions .vecbeh-button { width: auto; min-width: 230px; }
.vecbeh-category-action-status { flex: 1 0 100%; color: #1d6b36; font-size: .88rem; font-weight: 800; text-align: right; }
.vecbeh-category-action-status:empty { display: none; }
.vecbeh-category-action-status[data-state="warning"] { color: #8a5600; }
.vecbeh-category-action-status[data-state="error"] { color: #a3251b; }
.vecbeh-time-format { margin: 0; color: #263f70; line-height: 1.5; }
.vecbeh-bulk-entry { padding: .7rem .85rem; border: 1px solid #aebbd0; border-radius: 7px; background: #fff; }
.vecbeh-bulk-entry summary { color: var(--vecbeh-primary-dark); font-weight: 800; cursor: pointer; }
.vecbeh-bulk-entry p { margin: .65rem 0; font-size: .88rem; }
.vecbeh-bulk-entry ul { margin: .5rem 0 .75rem; padding-left: 1.2rem; color: #3d4b60; font-size: .82rem; line-height: 1.45; }
.vecbeh-bulk-entry .vecbeh-bulk-entry__hint { margin-bottom: .45rem; padding: .5rem .65rem; border-left: 4px solid #d97706; background: #fff8e8; color: #6f4605; }
.vecbeh-bulk-entry__actions { display: flex; flex-wrap: wrap; align-items: center; gap: .55rem .8rem; margin-bottom: .55rem; }
.vecbeh-bulk-entry textarea { width: 100%; box-sizing: border-box; margin: 0; padding: .55rem; border: 1px solid #8798b2; border-radius: 5px; font: 600 .92rem/1.4 ui-monospace, SFMono-Regular, Consolas, monospace; }
.vecbeh-bulk-entry output { display: block; color: #334155; font-size: .84rem; font-weight: 700; white-space: pre-line; }
.vecbeh-bulk-entry output[data-state="saving"] { color: #8a5600; }
.vecbeh-bulk-entry output[data-state="saved"] { color: #1d6b36; }
.vecbeh-bulk-entry output[data-state="error"] { color: #a3251b; }
.vecbeh-console-add { padding: .75rem .9rem; border: 1px solid #8eabd1; border-radius: 8px; background: #fff; }
.vecbeh-console-add summary { color: var(--vecbeh-primary-dark); font-weight: 850; cursor: pointer; }
.vecbeh-console-add form { display: grid; gap: .8rem; margin-top: .8rem; }
.vecbeh-console-add form > p { margin: 0; color: #46556b; font-size: .86rem; }
.vecbeh-console-add fieldset { margin: 0; padding: .7rem; border: 1px solid #cad5e4; border-radius: 7px; }
.vecbeh-console-add legend { padding: 0 .35rem; color: #173f7b; font-weight: 800; }
.vecbeh-console-add__single { margin: 0; }
.vecbeh-console-add__grid { display: grid; grid-template-columns: repeat(3, minmax(150px, 1fr)); gap: .6rem; }
.vecbeh-console-add label { display: grid; gap: .25rem; color: #34435a; font-size: .8rem; font-weight: 750; }
.vecbeh-console-add input:not([type="checkbox"]),
.vecbeh-console-add select,
.vecbeh-console-add textarea { width: 100%; min-height: 40px; box-sizing: border-box; padding: .48rem .55rem; border: 1px solid #93a4bb; border-radius: 5px; background: #fff; color: #172033; font: inherit; }
.vecbeh-console-add__consents { display: flex; flex-wrap: wrap; gap: .55rem 1.2rem; }
.vecbeh-console-add__consents label { display: flex; align-items: center; gap: .35rem; }
.vecbeh-console-add__consents input { width: 18px; height: 18px; margin: 0; accent-color: #1d6b36; }
.vecbeh-console-add .vecbeh-button { width: max-content; }
.vecbeh-console-add output { color: #1d6b36; font-size: .88rem; font-weight: 750; white-space: pre-line; }
.vecbeh-console-add output[data-state="error"] { color: #a3251b; }
.vecbeh-console-history { justify-self: end; width: min(100%, 760px); min-height: 48px; box-sizing: border-box; padding: .65rem .85rem; border: 1px solid #aebbd0; border-radius: 8px; background: #fff; }
.vecbeh-console-history summary { color: var(--vecbeh-primary-dark); font-weight: 800; cursor: pointer; }
.vecbeh-console-history ol { display: grid; gap: .4rem; margin: .75rem 0 0; padding-left: 1.35rem; }
.vecbeh-console-history li { padding-left: .2rem; color: #334155; }
.vecbeh-link-button { appearance: none; margin-left: .35rem; padding: 0; border: 0; background: transparent; color: #135e96; font: inherit; font-weight: 750; text-decoration: underline; cursor: pointer; }
.vecbeh-live-status { min-height: 1.2rem; color: var(--vecbeh-muted); font-size: .82rem; text-align: right; }
.vecbeh-console-notice { padding: .85rem 1rem; border: 1px solid #6eb985; border-left: 5px solid #238144; border-radius: 8px; background: #eefaf2; color: #15562b; font-weight: 800; }
.vecbeh-console-notice[data-state="error"] { border-color: #d69a9a; border-left-color: #b42318; background: #fff1f0; color: #8a1c14; }
.vecbeh-console-notice[hidden] { display: none; }
.vecbeh-sync-center { position: sticky; top: 8px; z-index: 18; display: grid; justify-items: end; width: min(100%, 760px); margin: .65rem 0 .65rem auto; }
.vecbeh-sync-center > summary { list-style: none; cursor: pointer; }
.vecbeh-sync-center > summary::-webkit-details-marker { display: none; }
.vecbeh-sync-indicator { display: flex; align-items: center; gap: .5rem; width: max-content; max-width: 100%; margin: 0; padding: .48rem .72rem; border: 1px solid #a8c9b1; border-radius: 999px; background: rgba(243, 251, 245, .98); box-shadow: 0 3px 12px rgba(10, 36, 70, .09); color: #185c31; font-size: .82rem; }
.vecbeh-sync-indicator__dot { width: .62rem; height: .62rem; flex: 0 0 .62rem; border-radius: 50%; background: #2b9348; box-shadow: 0 0 0 3px rgba(43, 147, 72, .14); }
.vecbeh-sync-indicator strong { font-size: .84rem; }
.vecbeh-sync-indicator small { color: #52705b; }
.vecbeh-sync-indicator__expand { padding-left: .2rem; border-left: 1px solid currentColor; font-size: .74rem; font-weight: 750; opacity: .78; }
.vecbeh-sync-center[open] .vecbeh-sync-indicator__expand::after { content: " zavřít"; }
.vecbeh-sync-panel { width: 100%; box-sizing: border-box; margin-top: .45rem; padding: .9rem 1rem; border: 1px solid #9eb7d8; border-radius: 10px; background: rgba(255,255,255,.99); box-shadow: 0 12px 35px rgba(10,36,70,.18); color: #172033; }
.vecbeh-sync-panel > div:first-child { display: grid; gap: .2rem; }
.vecbeh-sync-panel p { margin: 0; color: #526178; font-size: .84rem; }
.vecbeh-sync-queue { display: grid; gap: .5rem; max-height: 310px; overflow: auto; margin: .75rem 0; padding-left: 1.4rem; }
.vecbeh-sync-queue li { padding: .55rem .65rem; border: 1px solid #d4deeb; border-radius: 7px; background: #f7f9fc; }
.vecbeh-sync-queue li strong, .vecbeh-sync-queue li span, .vecbeh-sync-queue li small { display: block; }
.vecbeh-sync-queue li strong { color: #173f7b; }
.vecbeh-sync-queue li span { margin-top: .15rem; font-weight: 800; }
.vecbeh-sync-queue li small { margin-top: .2rem; color: #6a3e00; line-height: 1.35; }
.vecbeh-sync-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; }
.vecbeh-sync-actions output { color: #45556c; font-size: .84rem; font-weight: 750; }
.vecbeh-sync-actions output[data-state="saved"] { color: #176331; }
.vecbeh-sync-actions output[data-state="error"] { color: #9a261d; }
.vecbeh-sync-indicator[data-state="saving"] { border-color: #e1bd6b; background: rgba(255, 249, 232, .97); color: #795000; }
.vecbeh-sync-indicator[data-state="saving"] .vecbeh-sync-indicator__dot { background: #d99500; box-shadow: 0 0 0 3px rgba(217, 149, 0, .16); }
.vecbeh-sync-indicator[data-state="offline"], .vecbeh-sync-indicator[data-state="error"] { border-color: #df9b96; background: rgba(255, 242, 241, .97); color: #8a2119; }
.vecbeh-sync-indicator[data-state="offline"] .vecbeh-sync-indicator__dot, .vecbeh-sync-indicator[data-state="error"] .vecbeh-sync-indicator__dot { background: #c4382d; box-shadow: 0 0 0 3px rgba(196, 56, 45, .14); }

.vecbeh-race-dashboard {
    overflow: hidden;
    border: 1px solid #9eb7d8;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(18,53,103,.09);
}
.vecbeh-race-dashboard > header {
    display: grid;
    grid-template-columns: minmax(220px, .75fr) minmax(520px, 1.25fr);
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.1rem;
    background: var(--vecbeh-sheet-navy-dark);
    color: #fff;
}
.vecbeh-race-dashboard > header > div { display: grid; gap: .2rem; }
.vecbeh-race-dashboard > header strong { font-size: 1.15rem; }
.vecbeh-race-dashboard > header span { color: #dce8fb; font-size: .84rem; }
.vecbeh-race-dashboard dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .55rem; margin: 0; }
.vecbeh-race-dashboard dl div { padding: .55rem .7rem; border: 1px solid rgba(255,255,255,.3); border-radius: 7px; background: rgba(255,255,255,.08); text-align: center; }
.vecbeh-race-dashboard dl .has-warning { border-color: #f6c35b; background: rgba(217,119,6,.28); }
.vecbeh-race-dashboard dt { color: #dce8fb; font-size: .7rem; font-weight: 750; text-transform: uppercase; }
.vecbeh-race-dashboard dd { margin: .1rem 0 0; color: #fff; font-size: 1.2rem; font-weight: 850; }
.vecbeh-dashboard-categories { display: grid; grid-template-columns: repeat(auto-fill, minmax(245px, 1fr)); gap: .65rem; padding: .8rem; }
.vecbeh-dashboard-card {
    display: grid;
    gap: .25rem;
    padding: .75rem .85rem;
    border: 1px solid #b9c9df;
    border-left: 5px solid #31517f;
    border-radius: 8px;
    background: #f8fbff;
    color: var(--vecbeh-ink);
    font: inherit;
    text-align: left;
    cursor: pointer;
}
.vecbeh-dashboard-card:hover,
.vecbeh-dashboard-card:focus { border-color: #174788; outline: 3px solid rgba(23,71,136,.14); background: #eef5ff; }
.vecbeh-dashboard-card.has-warning { border-left-color: #d97706; background: #fffaf0; }
.vecbeh-dashboard-card.is-registration-closed { border-left-color: #9a6700; background: #fff7df; }
.vecbeh-dashboard-card.is-official { border-left-color: #1d6b36; background: #f0faf3; }
.vecbeh-dashboard-card strong { color: #172e58; line-height: 1.25; }
.vecbeh-dashboard-card span { color: #334155; font-size: .84rem; }
.vecbeh-dashboard-card small { color: #59677c; font-size: .76rem; }

.vecbeh-bib-distribution {
    overflow: hidden;
    border: 1px solid #9eb7d8;
    border-radius: 11px;
    background: #fff;
    box-shadow: 0 9px 26px rgba(18,53,103,.08);
}
.vecbeh-bib-distribution > summary {
    padding: .85rem 1rem;
    background: #173f7b;
    color: #fff;
    font-weight: 850;
    cursor: pointer;
}
.vecbeh-bib-distribution > summary span { display: inline-flex; min-width: 1.9rem; justify-content: center; margin-left: .35rem; padding: .08rem .42rem; border-radius: 999px; background: #fff; color: #173f7b; font-size: .78rem; }
.vecbeh-bib-distribution__tools { display: flex; align-items: end; gap: 1rem; padding: .8rem 1rem; border-bottom: 1px solid #cad5e4; background: #f4f7fb; }
.vecbeh-bib-distribution__tools label { display: grid; flex: 1 1 380px; gap: .25rem; color: #263f70; font-size: .8rem; font-weight: 800; }
.vecbeh-bib-distribution__tools input { width: 100%; min-height: 42px; box-sizing: border-box; padding: .55rem .7rem; border: 2px solid #9eb7d8; border-radius: 7px; background: #fff; color: #172033; font: inherit; }
.vecbeh-bib-distribution__tools input:focus { border-color: #174788; outline: 3px solid rgba(23,71,136,.14); }
.vecbeh-bib-distribution__tools .vecbeh-button { width: auto; min-width: 145px; }
.vecbeh-bib-distribution__tools output { flex: 0 0 auto; padding-bottom: .55rem; color: #53647c; font-size: .84rem; font-weight: 750; }
.vecbeh-table--distribution { min-width: 880px; }
.vecbeh-table--distribution [hidden] { display: none; }
.vecbeh-distribution-headings button { display: inline-flex; align-items: center; justify-content: center; gap: .35rem; width: 100%; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; font-weight: inherit; cursor: pointer; }
.vecbeh-distribution-headings button:hover,
.vecbeh-distribution-headings button:focus-visible { color: #fff; text-decoration: underline; text-underline-offset: .2em; }
.vecbeh-distribution-headings button span { min-width: 1em; font-size: .92em; }
.vecbeh-table--distribution .vecbeh-distribution-filters th { padding: .38rem; background: #e8eef7; }
.vecbeh-distribution-filters input,
.vecbeh-distribution-filters select { width: 100%; min-width: 90px; min-height: 36px; box-sizing: border-box; padding: .38rem .45rem; border: 1px solid #91a5c1; border-radius: 5px; background: #fff; color: #172033; font: inherit; font-size: .8rem; font-weight: 650; }
.vecbeh-distribution-filters input:focus,
.vecbeh-distribution-filters select:focus { border-color: #174788; outline: 2px solid rgba(23,71,136,.16); }
.vecbeh-table--distribution td:nth-child(2),
.vecbeh-table--distribution td:nth-child(4),
.vecbeh-table--distribution td:nth-child(5) { text-align: left; }
.vecbeh-table--unified .vecbeh-age-exception-cell { background: #fff0b8 !important; color: #7a3e00; font-weight: 850; box-shadow: inset 0 0 0 2px #e6a400; }
.vecbeh-table--unified .vecbeh-age-exception-cell .vecbeh-inline-field { border-color: #d38b00; background: #fff8dc; color: #6b3600; font-weight: 850; }
.vecbeh-age-exception-note { display: flex; align-items: center; gap: .5rem; margin: .7rem 0; color: #704000; font-size: .84rem; font-weight: 750; }
.vecbeh-age-exception-note span { width: 1.15rem; height: 1.15rem; flex: 0 0 auto; border: 2px solid #e6a400; border-radius: 3px; background: #fff0b8; }
.vecbeh-bib-distribution__footer { display: flex; justify-content: flex-end; padding: .75rem 1rem; border-top: 1px solid #cad5e4; background: #f4f7fb; }
.vecbeh-bib-distribution__footer .vecbeh-button { width: auto; }

.vecbeh-console-utility-row { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 1rem; }
.vecbeh-console-utility-row.has-history { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.vecbeh-console-utility-row .vecbeh-competitor-search,
.vecbeh-console-utility-row .vecbeh-console-history { width: 100%; max-width: none; }
.vecbeh-console-utility-row .vecbeh-console-history { margin-top: 1.85rem; }
.vecbeh-competitor-search { position: relative; z-index: 4; width: min(100%, 720px); }
.vecbeh-competitor-search label { display: grid; gap: .35rem; }
.vecbeh-competitor-search label > span { color: #263f70; font-weight: 800; }
.vecbeh-competitor-search input {
    width: 100%;
    min-height: 48px;
    box-sizing: border-box;
    padding: .7rem 1rem;
    border: 2px solid #9eb7d8;
    border-radius: 9px;
    background: #fff;
    color: var(--vecbeh-ink);
    font: inherit;
}
.vecbeh-competitor-search input:focus { border-color: #174788; outline: 3px solid rgba(23,71,136,.16); }
.vecbeh-search-results {
    position: absolute;
    top: calc(100% + .35rem);
    left: 0;
    right: 0;
    overflow: auto;
    max-height: 360px;
    padding: .4rem;
    border: 1px solid #9eb7d8;
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(15,35,68,.18);
}
.vecbeh-search-results[hidden] { display: none; }
.vecbeh-search-results button { display: grid; width: 100%; gap: .12rem; padding: .62rem .7rem; border: 0; border-radius: 6px; background: transparent; color: #18263d; font: inherit; text-align: left; cursor: pointer; }
.vecbeh-search-results button:hover,
.vecbeh-search-results button:focus { background: #eef4fb; outline: none; }
.vecbeh-search-results button span { color: #59677c; font-size: .82rem; }
.vecbeh-search-results p { margin: .35rem .45rem; color: #59677c; }
.vecbeh-search-highlight td { animation: vecbeh-search-pulse 3.5s ease-out; }
@keyframes vecbeh-search-pulse {
    0%, 35% { background: #fff0a8; }
    100% { background: inherit; }
}

@media (max-width: 1150px) {
    .vecbeh-category-tools { grid-template-columns: 1fr 1fr; }
    .vecbeh-race-dashboard > header { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
    .vecbeh-grid--2 { grid-template-columns: 1fr; }
    .vecbeh-event-intro { grid-template-columns: 1fr; }
    .vecbeh-event-intro__date { min-height: 70px; }
    .vecbeh-event-intro__place { min-height: 76px; padding-left: 1.1rem; text-align: center; }
    .vecbeh-event-intro__place::before { top: 0; right: 22%; bottom: auto; left: 22%; width: auto; height: 4px; }
    .vecbeh-category-info dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .vecbeh-list-header dl { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .vecbeh-list-header dl div:nth-child(2) { border-right: 0; }
    .vecbeh-list-header dl div:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.42); }
    .vecbeh-list-header > div { grid-template-columns: 1fr; }
    .vecbeh-list-header > div > p { border-top: 1px solid rgba(255,255,255,.42); border-left: 0; text-align: left; }
    .vecbeh-sheet-hero { grid-template-columns: 1fr; min-height: 0; }
    .vecbeh-sheet-hero__identity { width: min(100%, 320px); box-sizing: border-box; justify-self: center; }
    .vecbeh-sheet-hero__mark { width: min(100%, 320px); max-height: 165px; }
    .vecbeh-card { border-radius: 12px; }
    .vecbeh-tab { padding: .65rem .75rem; font-size: .88rem; }
    .vecbeh-results-access { justify-self: stretch; }
    .vecbeh-results-access a { width: 100%; margin-left: 0; }
    .vecbeh-category-tools { grid-template-columns: 1fr; }
    .vecbeh-category-tool-actions { grid-column: auto; display: grid; grid-template-columns: 1fr; }
    .vecbeh-category-state-form { display: flex; }
    .vecbeh-category-tool-actions .vecbeh-button { width: 100%; min-width: 0; }
    .vecbeh-console-add__grid { grid-template-columns: 1fr; }
    .vecbeh-bib-distribution__tools { align-items: stretch; flex-direction: column; gap: .35rem; }
    .vecbeh-bib-distribution__tools label { flex-basis: auto; }
    .vecbeh-bib-distribution__tools output { padding-bottom: 0; }
    .vecbeh-race-dashboard dl { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .vecbeh-dashboard-categories { grid-template-columns: 1fr; }
    .vecbeh-console-utility-row.has-history { grid-template-columns: 1fr; }
    .vecbeh-console-utility-row .vecbeh-console-history { margin-top: 0; }
}

@media (max-width: 1100px) {
    .vecbeh-results-editor-active .vecbeh-results-workspace { grid-template-columns: 1fr; }
    .vecbeh-results-entry { position: static; }
    .vecbeh-results-entry-scroll { max-height: 440px; }
}

@media print {
    .vecbeh-lists.vecbeh-tabbed-lists {
        position: static;
        left: auto;
        width: 100%;
        margin: 0;
        padding: 0;
        transform: none;
    }
    .vecbeh-lists,
    .vecbeh-list-section,
    .vecbeh-sheet-hero,
    .vecbeh-list-header,
    .vecbeh-table th,
    .vecbeh-category-badge,
    .vecbeh-age-exception-cell { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    .vecbeh-card { box-shadow: none; }
    .vecbeh-tabs { display: none; }
    .vecbeh-results-access,
    .vecbeh-results-login,
    .vecbeh-operator-panel,
    .vecbeh-results-editor-message,
    .vecbeh-list-print-toolbar,
    .vecbeh-results-entry { display: none !important; }
    .vecbeh-console-history,
    .vecbeh-console-notice,
    .vecbeh-sync-indicator,
    .vecbeh-race-dashboard,
    .vecbeh-bib-distribution,
    .vecbeh-competitor-search,
    .vecbeh-category-tools,
    .vecbeh-live-status,
    .vecbeh-inline-result,
    .vecbeh-row-save-state,
    .vecbeh-present-toggle,
    .vecbeh-tie-rank-cell input,
    .vecbeh-tie-rank-cell button,
    .vecbeh-tie-rank-cell [data-vecbeh-tie-state] { display: none !important; }
    .vecbeh-results-editor-active .vecbeh-result-print { display: inline; }
    .vecbeh-results-editor-active .vecbeh-tie-position-print { display: inline; }
    .vecbeh-tie-rank-cell { background: inherit !important; }
    [data-vecbeh-tab-panel][hidden] { display: block !important; }
    .vecbeh-list-section { break-after: page; box-shadow: none; }
}
