.pf-v5-c-masthead {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
}

.pf-v5-c-masthead__content {
    flex: 1 1 auto !important;
    display: flex !important;
    justify-content: flex-end !important;
    min-width: 0 !important;
    padding-right: 16px;
}

.pf-v5-c-masthead__content .pf-v5-c-toolbar__content-section {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-end !important;
    align-items: center !important;
}

.pf-v5-c-masthead__content .pf-v5-c-toolbar__item {
    margin-left: 0 !important;
    margin-right: 16px !important;
}

.pf-v5-c-masthead__content .pf-v5-c-toolbar__item:last-child {
    margin-right: 0 !important;
}

.pf-v5-c-masthead__content .pf-v5-c-toolbar__item:empty {
    display: none !important;
}

#app > div > header > div.pf-v5-c-page__header-brand > div.pf-v5-c-page__header-brand-link {
    height: 35px;
}

#app > div > header {
    background-color: #0D1527
}

#page-sidebar {
    background-color: #0D1527
}

.keycloak__realm_selector_dropdown__toggle {
    --pf-v5-c-dropdown__toggle--BackgroundColor: #0D1527;
}
.keycloak__realm_selector_dropdown__toggle:hover,.keycloak__realm_selector_dropdown__toggle:focus {
    --pf-v5-c-dropdown__toggle--hover--before--BorderBottomColor: white;
}

.keycloak__realm_selector_dropdown__toggle + .pf-v5-c-dropdown__menu {
    background-color: #0D1527;
    border: 1px solid darkgrey;
}

.keycloak__realm_selector_dropdown__toggle + .pf-v5-c-dropdown__menu > li > .pf-v5-c-dropdown__menu-item {
    color: white;
}

.pf-v5-c-dropdown__menu > li > .pf-v5-c-dropdown__menu-item {
    color: white;
}

.pf-v5-c-dropdown__menu > li > .pf-v5-c-dropdown__menu-item:hover {
    background-color: #0D1527;
    filter: brightness(75%);
    text-decoration: none;
}

.keycloak__realm_selector_dropdown__toggle + .pf-v5-c-dropdown__menu > li > .pf-v5-c-dropdown__menu-item:hover {
    color: white;
}

.keycloak__realm_selector_dropdown__toggle + .pf-v5-c-dropdown__menu > li > .pf-v5-c-dropdown__menu-item:hover, .pf-v5-c-dropdown__menu-item:focus {
    --pf-v5-c-dropdown__menu-item--Color: none;
    --pf-v5-c-dropdown__menu-item--BackgroundColor: none;
    text-decoration: none;
}

.pf-v5-c-button.pf-m-primary {
    background-image: linear-gradient(to right, #EF2B89, #6036F5);
    color: white;
    border-radius: 25px;
}

.pf-v5-c-button.pf-m-primary:hover {
    filter: brightness(90%);
    text-decoration: none;
}

#app > div > header > div.pf-v5-c-page__header-tools > div:nth-child(1) > div > div > ul {
    background-color: #0D1527;
    border: 1px solid darkgrey;
}

#link > a, #enable > a, #enable > a > div.pf-v5-c-content.keycloak_help-header-description {
    color: white;
}

#enable > a > div.pf-v5-c-content.keycloak_help-header-description:hover {
    cursor: default;
}

#link > a:hover, #enable > a:hover, #enable > a > div.pf-v5-c-content.keycloak_help-header-description:hover {
    background-color: #0D1527;
}

#user-dropdown > ul  {
    background-color: #0D1527;
    border: 1px solid darkgrey;
}

#user-dropdown > ul > li > a {
    color: white;
}

#user-dropdown > ul > li > a:hover {
    background-color: #0D1527;
    filter: brightness(75%);
}

#realm-select > ul > li > a {
    text-decoration: none;
}

#realm-select > ul > li > a > a {
    text-decoration: none;
}


.pf-v5-c-nav__link.pf-m-current {
    border-color: #EF2B89;
}


#page-sidebar > div > nav > hr {
    display: none;
}

.pf-v5-c-nav__link.pf-m-current:after, .pf-v5-c-nav__link.pf-m-current:hover:after, .pf-v5-c-nav__item.pf-m-current:not(.pf-m-expanded) .pf-v5-c-nav__link:after {
    border-color: #EF2B89;
}

.pf-v5-c-button.pf-m-primary.pf-m-disabled {
    background-color: #DADADA;
    background-image: none !important;
    color: #6a6e73 !important;
}

#pf-random-id-14 > div:nth-child(1) > div.pf-v5-c-toolbar__content-section > div:nth-child(1) > div {
    width: 300px;
}

:focus-visible {
    outline: aliceblue;
}

.pf-v5-c-text-input-group__text:focus-within {
    --pf-v5-c-text-input-group__text--after--BorderBottomColor: #3397c9;
}

.pf-v5-c-text-input-group:hover, .pf-v5-c-select__toggle:hover {
    --pf-v5-c-text-input-group__text--after--BorderBottomColor: #3397c9;
}

.pf-v5-c-select {
    border: 1px solid #bbb;
    --pf-v5-c-select__toggle--before--BorderBottomWidth: 0;
}

.pf-v5-c-select__toggle:hover {
    --pf-v5-c-select__toggle--before--BorderBottomColor: #3397c9;
}

.pf-v5-c-select__toggle:focus-within {
    --pf-v5-c-select__toggle--before--BorderBottomColor: #3397c9;
}

.pf-v5-c-wizard__toggle-num, .pf-v5-c-wizard__nav-link.pf-m-current:before {
    --pf-v5-c-wizard__nav-link--before--BackgroundColor: #3397c9;
    --pf-v5-c-wizard__nav-link--before--Color: white;
}

.pf-v5-c-switch {
    --pf-v5-c-switch__input--checked__toggle--BackgroundColor: #3397c9;
}

#kc-main-content-page-container > section:nth-child(4) > div > div > div > div > div > form > div:nth-child(5) > div.pf-v5-c-form__group-control {
    padding-top: 6px;
}

.pf-v5-c-switch__input:focus~.pf-v5-c-switch__toggle {
    outline: none;
}

.pf-v5-c-switch__input:focus-visible~.pf-v5-c-switch__toggle {
    outline: 1px solid #DADADA;
    outline-offset: 5px;
}

.pf-v5-c-button.pf-m-primary:focus-visible {
    outline: 1px solid #DADADA;
    outline-offset: 5px;
}

.pf-v5-c-switch__input:focus {
    --pf-v5-c-switch__input--focus__toggle--OutlineOffset: 0;
}
.pf-v5-c-text-input-group__text:focus-within {
    --pf-v5-c-text-input-group__text--after--BorderBottomColor: #3397c9 !important;
}

.pf-v5-c-text-input-group:hover {
    --pf-v5-c-text-input-group__text--after--BorderBottomColor: #3397c9 !important;
}

.pf-v5-c-button .pf-m-link .pf-m-inline {
    color: #3397c9;
}

.pf-v5-c-spinner {
    --pf-v5-c-spinner--Color: #EF2B89;
}

span.pf-v5-c-spinner__clipper {
    --pf-v5-c-spinner__clipper--after--Height: 0;
}

span.pf-v5-c-spinner {
    --pf-v5-c-spinner__ball--after--Width: 10px;
    --pf-v5-c-spinner__ball--after--Height: 10px;
}

.pf-v5-c-spinner__tail-ball {
    --pf-v5-c-spinner__tail-ball--after--BackgroundColor: #6036F5;
}

.pf-v5-c-nav__link:focus-visible {
    outline: none;
}

.pf-v5-c-page__main {
    border-top: 1px solid rgb(68, 69, 72);
    display: unset;
}

#pf-random-id-0 > div:nth-child(1) > div > div:nth-child(2) > button {
    background: #0D1527;
    --pf-v5-c-menu-toggle--before--BorderTopColor: transparent !important;
    --pf-v5-c-menu-toggle--before--BorderRightColor: transparent !important;
    --pf-v5-c-menu-toggle--before--BorderLeftColor: transparent !important;
    --pf-v5-c-menu-toggle--after--BorderBottomColor: transparent !important;
    outline: 1px solid grey;
}

#pf-random-id-0 > div:nth-child(1) > div > div:nth-child(2) > button:hover,
#pf-random-id-0 > div:nth-child(1) > div > div:nth-child(2) > button:active,
#pf-random-id-0 > div:nth-child(1) > div > div:nth-child(2) > button:focus,
#pf-random-id-0 > div:nth-child(1) > div > div:nth-child(2) > button:focus,
#pf-random-id-0 > div:nth-child(1) > div > div:nth-child(2) > button:focus-within {
    --pf-v5-c-menu-toggle--after--BorderBottomColor: #EF2B89 !important;
}

#kc-main-content-page-container {
    border-top: 1px solid rgb(68, 69, 72);
}

.pf-v5-c-masthead__content > .pf-v5-c-toolbar {
    background: #0D1527;
}

#kc-main-content-page-container {
    border-top: 1px solid rgb(68, 69, 72);
}

.pf-v5-c-masthead__content > .pf-v5-c-toolbar {
    background: #0D1527;
}

.pf-v5-c-nav__item > .pf-v5-c-menu__list > li {
    background: #0D1527;
}

.pf-v5-c-nav__item > .pf-v5-c-menu__list > li:first-child {
    border-top: 1px solid dimgrey;
}

.pf-v5-c-nav__item > .pf-v5-c-nav .pf-v5-c-menu__item:before {
    border-block-end: none;
}

.pf-v5-c-menu__list {
    padding-block-start: 0;
    padding-block-end: 0;
    outline: 1px solid dimgrey;
}

.pf-v5-c-menu__list > .pf-v5-c-divider {
    margin-block-start: 0;
    margin-block-end: 0;
}

.pf-v5-c-text-input-group__text:focus-within,
.pf-v5-c-text-input-group__text:hover {
    --pf-v5-c-text-input-group__text--after--BorderBottomColor: #EF2B89;
    --pf-v5-c-text-input-group__text--after--BorderBottomWidth: 1px;
}

:where(.pf-v5-theme-dark) {
    --pf-v5-global--active-color--100: #EF2B89;
}

.pf-v5-c-form-control:focus-visible {
    outline: none;
}

input[readonly] {
    cursor: default;
}

input[readonly]:focus,
input[readonly]:hover,
input[readonly]:focus-within {
    --pf-v5-c-form-control--after--BorderBottomColor: transparent;
    --pf-v5-c-form-control--after--BorderBottomWidth: 1px;
}

.pf-v5-c-menu-toggle:hover {
    --pf-v5-c-menu-toggle--after--BorderBottomColor: #EF2B89;
}

.pf-v5-c-menu-toggle:focus-within,
.pf-v5-c-menu-toggle:focus,
.pf-v5-c-menu-toggle:active {
    --pf-v5-c-menu-toggle--after--BorderBottomColor: #EF2B89;
    --pf-v5-c-menu-toggle--after--BorderBottomWidth: 2px;
}

.pf-v5-c-form-control:focus-within,
.pf-v5-c-form-control:focus,
.pf-v5-c-menu-toggle:active {
    --pf-v5-c-form-control--after--BorderBottomColor: #EF2B89;
    --pf-v5-c-form-control--after--BorderBottomWidth: 2px;
}

.pf-v5-c-form-control:hover {
    --pf-v5-c-form-control--after--BorderBottomColor: #EF2B89;
}

.pf-v5-c-jump-links__item.pf-m-current>.pf-v5-c-jump-links__link {
    --pf-v5-c-jump-links__link--before--BorderColor: #EF2B89;
}

.pf-v5-c-menu-toggle.pf-m-expanded {
    --pf-v5-c-menu-toggle--after--BorderBottomColor: #EF2B89;
}

.pf-v5-c-menu__item-select-icon {
    color: #EF2B89;
}

.pf-v5-c-label__content {
 color: #EF2B89 !important;
}

#pf-random-id-1 > div:nth-child(1) > div > hr {
    --pf-v5-c-divider--after--Width: 0;
}

li.pf-v5-c-tabs__item.pf-m-current {
    --pf-v5-c-tabs__link--after--BorderColor: #EF2B89;
}

.pf-v5-c-tabs {
    background-color: white;
}

.pf-v5-c-page__main {
    background-color: white;
}

section > form > div.pf-v5-l-grid.pf-m-gutter > div.pf-v5-l-grid__item.pf-m-12-col-on-sm.pf-m-8-col-on-md > section:nth-child(1) {
    margin-top: 0 !important;
}

.pf-v5-c-page__main-section.pf-m-light > .pf-v5-c-label.pf-m-green {
    margin-bottom: 10px;
}

.keycloak__form {
    max-width: 1024px;
}

.pf-v5-c-form__group {
    flex-grow: 1;
}

.pf-v5-c-button.pf-m-control:hover,
.pf-v5-c-button.pf-m-control:active,
.pf-v5-c-button.pf-m-control:focus,
.pf-v5-c-button.pf-m-control:focus-within {
    --pf-v5-c-button--m-control--after--BorderBottomColor: #EF2B89;
}

.pf-v5-c-input-group__item > button {
    height: fit-content;
}

/*.pf-v5-c-button.pf-m-link {*/
/*    color: #EF2B89;*/
/*}*/

/*linear-gradient(to right, #EF2B89, #6036F5);*/

.instruction-bold {
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 20px;
}

.api-key-field {
    margin-bottom: 10px;
}

/* style.css */

/* --- General Layout --- */
.dashboard-container {
    max-width: 1024px;
    margin: 0 auto;
    padding: 24px;
    font-family: inherit;
    color: #111827;
}

.dashboard-title {
    font-size: 1.875rem;
    font-weight: bold;
    margin-bottom: 24px;
    border-bottom: 2px solid #e5e7eb;
    padding-bottom: 8px;
}


/* style.css */
.odrl-dashboard { max-width: 1100px; margin: 0 auto; padding: 24px; font-family: 'Inter', sans-serif; color: #1f2937; }
.section-header { margin: 40px 0 20px 0; border-bottom: 2px solid #e5e7eb; padding-bottom: 8px; }

/* --- Section 1: Mapping View --- */
.mapping-table-header { display: flex; font-weight: bold; border-bottom: 2px solid #1f2937; padding-bottom: 8px; margin-bottom: 16px; text-transform: uppercase; font-size: 0.875rem; }
.mapping-row { display: flex; padding: 16px 0; border-bottom: 1px solid #e5e7eb; gap: 24px; }
.mapping-col-left { flex: 1; position: relative; }
.mapping-col-right { flex: 1; display: flex; flex-direction: column; justify-content: center; position: relative; padding-left: 40px; }

/* Numbered Cyan Badges matching the PDF */
.pdf-badge {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #0ea5e9;
    color: white;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 0.875rem;
    border-radius: 2px;
    z-index: 10;
}
.mapping-col-left .pdf-badge { left: -12px; top: 12px; }

.json-block { background-color: #111827; color: #a5b4fc; padding: 16px 16px 16px 24px; border-radius: 4px; font-family: monospace; font-size: 0.75rem; overflow-x: auto; margin: 0; }
.json-key { color: #93c5fd; }
.json-string { color: #86efac; }

.clause-title { font-weight: bold; color: #111827; margin-bottom: 4px; font-size: 1rem; }
.clause-text { margin: 0 0 8px 0; font-size: 0.875rem; line-height: 1.5; }
.clause-subtext { color: #6b7280; font-size: 0.8rem; line-height: 1.4; font-style: italic; }

/* --- Section 2: Signable Contract --- */
.agreement-container {
    background: #ffffff;
    color: #111827;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    padding: 24px 0;
    max-width: 1000px;
    margin: 0 auto;
    line-height: 1.5;
}

.agreement-main-title {
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 0.5rem;
    margin-top: 0;
}

.agreement-subtitle {
    font-size: 0.85rem;
    color: #4b5563;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #e5e7eb;
    padding-bottom: 1rem;
}

.agreement-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
}

.agreement-section-title {
    font-size: 1rem;
    font-weight: bold;
    text-transform: uppercase;
}

.agreement-text {
    font-size: 0.9rem;
    margin-bottom: 0.75rem;
    margin-top: 0;
}

.agreement-list {
    list-style-type: none;
    padding-left: 1.5rem;
    margin-bottom: 1rem;
    margin-top: 0;
}

.agreement-signatures {
    display: flex;
    justify-content: space-between;
    margin-top: 1rem;
    gap: 2rem;
}

.signature-box {
    flex: 1;
}

.signature-name {
    font-weight: bold;
    font-size: 0.9rem;
}

.signature-role {
    font-size: 0.8rem;
    color: #6b7280;
}

.signature-line {
    border-bottom: 1px solid #000;
    margin-top: 2.5rem;
    margin-bottom: 0.25rem;
}

.signature-label {
    font-size: 0.75rem;
    color: #6b7280;
}

/* --- Section 3: ELI5 Summary --- */
.eli5-grid {
    display: flex;
    gap: 16px;              /* Reduced from 24px to bring columns closer */
    margin-bottom: 40px;
}

/* Base column styles */
.eli5-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;              /* Reduced from 16px for a tighter vertical stack */
    padding: 16px;          /* Reduced from 20px for slightly tighter inner padding */
    border-radius: 8px;     /* Rounded corners for the card look */
}

/* Background colors for each column */
.eli5-col.bg-may {
    background-color: #f0fdf4; /* Light green */
}

.eli5-col.bg-must {
    background-color: #fff7ed; /* Light orange */
}

.eli5-col.bg-must-not {
    background-color: #fef2f2; /* Light red */
}

.eli5-header {
    font-weight: bold;
    font-size: 1.25rem;
    border-bottom: 2px solid;
    padding-bottom: 8px;
    display: flex;
    justify-content: space-between;
}
.eli5-header.may { color: #166534; border-color: #166534; }
.eli5-header.must { color: #b45309; border-color: #b45309; }
.eli5-header.must-not { color: #991b1b; border-color: #991b1b; }

.eli5-item {
    margin-bottom: 8px;    /* Reduced from 12px to pull items closer */
}

.eli5-item strong {
    display: block;
    font-size: 1rem;
    color: #111827;
    text-transform: capitalize;
}

.eli5-item p {
    margin: 2px 0 0 0;     /* Tightened the gap between the bold title and the text */
    font-size: 0.875rem;
    color: #4b5563;
}

.eli5-paragraph {
    background: #f3f4f6;
    padding: 16px;
    border-radius: 4px;
    font-size: 0.9rem;
    line-height: 1.6;
    border-left: 4px solid #3b82f6;
}

.agreement-columns {
    column-count: 2;
    column-gap: 3rem;
    /*column-rule: 1px solid #e5e7eb;*/
}

.agreement-block {
    break-inside: avoid;
    page-break-inside: avoid;
    display: inline-block;
    width: 100%;
}

.constraint-list {
    margin: 0;
    padding-left: 24px;
    list-style-type: disc;
}

.constraint-list li {
    margin-bottom: 8px;
}

.constraint-list li:last-child {
    margin-bottom: 0;
}

.odrl-container {
    --odrl-muted: #666;
    --odrl-text: #111;
    --odrl-border: #e0e0e0;
    --odrl-surface: #f7f7f7;
}

/* ContractClauses.css */

.odrl-container {
    font-family: inherit;
    font-size: 14px;
    line-height: 1.7;
    color: #111;
    max-width: 720px;
}

/* Document title */
.odrl-doc-title {
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 16px;
}

/* Preamble paragraphs */
.odrl-preamble {
    font-size: 14px;
    margin-bottom: 12px;
    font-weight: 700;
}

/* Article block */
.odrl-article {
    margin-bottom: 24px;
}

.odrl-article-heading {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 10px;
}

/* Individual clause */
.odrl-clause {
    font-size: 14px;
    margin-bottom: 8px;
    line-height: 1.7;
}

.odrl-clause-id {
    font-weight: 600;
    margin-right: 4px;
}

/* Secondary detail text within a clause */
.odrl-clause-detail {
    color: #555;
}

/* Signature grid */
.odrl-sig-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-top: 12px;
}

.odrl-sig-box {
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    padding: 16px;
}

.odrl-sig-name {
    font-weight: 600;
    font-size: 13px;
}

.odrl-sig-role {
    font-size: 12px;
    color: #666;
    margin-top: 2px;
}

.odrl-sig-line {
    border-bottom: 1px solid #ccc;
    height: 36px;
    margin: 14px 0 8px;
}

.odrl-sig-field {
    font-size: 12px;
    color: #666;
    margin-top: 4px;
}