/* Feature layout only. Common colors, typography, controls and spacing live in design.css. */
.nfd-surface :is(.nfk-upgrade-actions,.nfk-refer-actions,.vvg-animal-list,.vvg-scope-list,.nfp-additional-contact-list,.nfp-other-insurance-list){display:flex;flex-direction:column;gap:var(--nfd-list-gap,10px);width:100%;min-width:0}
.nfd-surface :is(.nfk-function-box,.vvg-animal-card,.nfp-appointment-section,.nfp-section){margin-bottom:var(--nfd-intro-bottom,20px)}
.nfd-surface :is(.nfk-upgrade-actions,.nfk-refer-actions){margin-top:var(--nfd-action-top,20px)}
.nfd-surface :is(.nfk-upgrade-actions,.nfk-refer-actions)>.btn{width:100%;justify-content:flex-start;text-align:left}
.nfd-surface :is(.nfp-profile-top,.vvg-animal-head,.nfp-additional-contact-head,.nfp-other-insurance-head,.nfp-change-head){display:flex;align-items:flex-start;justify-content:space-between;gap:var(--nfd-list-gap,10px)}
.nfd-surface :is(.nfp-profile-photo-slot,.nfp-edit-photo-slot){display:flex;justify-content:flex-end;margin-left:auto}
.nfd-surface .nfp-profile-photo{display:block;max-width:100%;width:auto;height:120px;object-fit:contain}
.nfd-surface :is(.nfp-upload-state,.nfp-uploaded-file){display:flex;flex-wrap:wrap;align-items:center;gap:var(--nfd-list-gap,10px);margin-bottom:var(--nfd-field-gap,6px);padding:var(--nfd-list-padding,10px);border:1px solid var(--nfd-border-color,#C9D3E1)}
.nfd-surface .nfp-upload-state-value{font-weight:700}
.nfd-surface .nfp-upload-state-link{margin-left:auto}
.nfd-surface :is(.nfp-add-appointment,.vvg-add-animal){margin:var(--nfd-action-top,20px) 0 var(--nfd-action-bottom,10px) auto;display:flex}
.nfd-surface :is(.nfp-additional-contact-fields,.nfp-other-insurance-fields,.nfp-caregiver-data-grid,.nfp-rights-row,.nfk-detail-list){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--nfd-field-gap,6px)}
.nfd-surface :is(.nfp-import-form,.vvg-import-form,.nfp-inline-form,.nfk-inline-form,.nfk-list-toolbar){display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--nfd-list-gap,10px);margin:0 0 var(--nfd-intro-bottom,20px)}
.nfd-surface :is(.nfp-import-form,.vvg-import-form)>label{width:100%}
.nfd-surface :is(.nfp-import-note,.vvg-import-note){width:100%;margin:0}
.nfd-surface :is(.nfp-import-form,.vvg-import-form,.nfk-list-toolbar)>.form-control{flex:1 1 220px;width:auto;min-width:0}
.nfd-surface :is(.nfk-product-row,.nfk-order-summary){display:flex;align-items:flex-start;gap:var(--nfd-list-gap,10px)}
.nfd-surface .nfk-product-thumb-wrap{flex:0 0 120px;max-width:120px}
.nfd-surface .nfk-product-thumb{display:block;max-width:100%;max-height:100px;object-fit:contain}
.nfd-surface .nfk-product-row-content{flex:1 1 auto;min-width:0}
.nfd-surface :is(.nfk-product-meta,.nfk-product-actions){display:flex;flex-wrap:wrap;align-items:center;gap:var(--nfd-list-gap,10px);margin:var(--nfd-field-gap,6px) 0}
.nfd-surface .nfk-product-meta-separator{opacity:.55}
.nfd-surface .nfk-description{margin-bottom:var(--nfd-list-gap,10px)}
.nfd-surface :is(.nfk-grid2,.nfk-grid3,.nfk-admin-columns,.nfk-detail-grid,.nfk-watcher-contact){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--nfd-list-gap,10px)}
.nfd-surface :is(.nfk-field,.nfk-control-group,.control-group){margin:0 0 var(--nfd-field-gap,6px)}
.nfd-surface .nfk-field{padding:var(--nfd-field-top,6px) var(--nfd-field-right,10px) var(--nfd-field-bottom,6px) var(--nfd-field-left,10px)}
.nfd-surface .nfk-field.alt{background:var(--nfd-field-alt-background,#E9F0FC)}
.nfd-surface :is(.nfk-secret-control,.nfp-secret-control,.vvg-secret-control){position:relative;display:block;width:100%}
.nfd-surface :is(.nfp-readonly-secret,.nfp-pin-readonly-value){display:block;min-height:var(--nfd-control-height,42px)}
.nfd-surface :is(.nfk-honeypot,.nfk-autofill-trap){position:absolute!important;width:1px!important;height:1px!important;left:-10000px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.nfd-surface :is(.nfk-rich-consent,.nfk-radio,.nfk-checkbox,.vvg-legal-choice label){display:flex;align-items:flex-start;gap:8px}
.nfd-surface :is(.nfk-rich-consent,.nfk-radio,.nfk-checkbox)>input{flex:0 0 auto;margin-top:.3em}
.nfd-surface :is(.nfk-rich-text,.nfk-function-box p){text-align:justify;hyphens:none;overflow-wrap:break-word}
.nfd-surface :is(.nfk-rich-text p,.nfk-rich-text li){margin:0 0 1em}
.nfd-surface :is(.nfk-rich-text strong,.nfk-rich-text b){font-weight:700}
.nfd-surface :is(.nfk-rich-text em,.nfk-rich-text i){font-style:italic}
.nfd-surface .nfk-rich-text u{text-decoration:underline}
.nfd-surface :is(.nfk-align-left,[align="left"]){text-align:left}
.nfd-surface :is(.nfk-align-right,[align="right"]){text-align:right}
.nfd-surface :is(.nfk-align-center,[align="center"]){text-align:center}
.nfd-surface :is(.nfk-align-justify,[align="justify"]){text-align:justify}
.nfd-surface :is(.nfp-search-fields,.nfp-search-form){display:flex;flex-wrap:wrap;gap:var(--nfd-list-gap,10px);align-items:flex-end}
.nfd-surface .nfp-search-field{flex:1 1 180px;min-width:0}
.nfd-surface .nfp-search-field label{display:block;margin-bottom:var(--nfd-label-gap,3px);font-weight:var(--nfd-label-weight,600)}
.nfd-surface .nfp-search-submit{flex:0 1 auto}
.nfd-surface :is(.nfp-search-intro,.nfp-search-inline-warning){width:100%;margin:0 0 var(--nfd-intro-bottom,20px)}
.nfd-surface :is(.nfk-card-section-body,.nfk-referral-share,.nfk-referral-meta-item){padding:var(--nfd-content-top,16px) var(--nfd-content-right,22px) var(--nfd-content-bottom,16px) var(--nfd-content-left,22px)}
.nfd-surface .nfk-compact-details dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--nfd-field-gap,6px) var(--nfd-list-gap,10px)}
.nfd-surface :is(.nfk-card-data dd,.nfk-compact-details dd){margin:0;overflow-wrap:anywhere}
.nfd-surface :is(.nfk-account-section,.nfk-card-section,.nfk-notfallwatcher){margin-bottom:var(--nfd-intro-bottom,20px)}
.nfd-surface .nfk-notfallwatcher{margin-top:var(--nfd-action-top,20px)}
.nfd-surface .nfk-compact-list{counter-reset:nfd-section}
.nfd-surface details.nfk-compact-item{counter-increment:nfd-section;padding:0;background:transparent}
.nfd-surface .nfk-compact-summary strong{font:inherit;color:inherit}
.nfd-surface .nfk-compact-summary>span{margin-left:auto}
.nfd-surface :is(.nfp-delete-overlay,.vvg-delete-overlay){display:none;position:fixed;inset:0;z-index:99999;align-items:center;justify-content:center;padding:20px}
.nfd-surface :is(.nfp-delete-overlay,.vvg-delete-overlay):target{display:flex}
.nfd-surface :is(.nfp-delete-backdrop,.vvg-delete-backdrop){position:absolute;inset:0;background:rgba(0,0,0,.45)}
.nfd-surface :is(.nfp-delete-dialog,.vvg-delete-dialog){position:relative;z-index:1;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:24px;border-radius:var(--nfd-panel-radius,4px);background:var(--nfd-surface-background,#fff)}
.nfd-surface :is(.nfp-radio-scroll-tail,.vvg-radio-scroll-tail){display:none}
.nfd-surface .vvg-login-module-hidden{display:none!important}
.nfd-surface .vvg-legal-choice{display:flex;flex-wrap:wrap;gap:var(--nfd-list-gap,10px)}
.nfd-surface .vvg-custom-right-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:var(--nfd-list-gap,10px);align-items:start}
.nfd-surface .vvg-custom-right-row textarea{min-width:0}
.nfd-surface :is(.nfk-dashboard-bootstrap-grid,.vvg-dashboard-bootstrap-grid,.nfp-dashboard-compact-grid,.nfp-settings-grid,.vvg-settings-grid,.nfk-stat-grid){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--nfd-list-gap,10px);margin:0}
.nfd-surface :is(.nfk-dashboard-bootstrap-grid,.vvg-dashboard-bootstrap-grid,.nfp-dashboard-compact-grid)>.col{width:auto;margin:0;padding:0}
.nfd-surface :is(.nfk-dashboard-icon,.vvg-dashboard-icon,.nfp-dashboard-compact-icon){display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;font-size:18px;color:var(--nfd-primary-color,#1C5AA6)}
.nfd-surface :is(.nfk-email-row,.nfk-language-row){display:grid;grid-template-columns:minmax(180px,30%) minmax(0,1fr);gap:var(--nfd-list-gap,10px);margin-bottom:var(--nfd-list-gap,10px)}
.nfd-surface :is(.nfk-email-heading,.nfk-language-key){overflow-wrap:anywhere;background:var(--nfd-heading-background,#E9F0FC);padding:var(--nfd-list-padding,10px)}
.nfd-surface :is(.nfk-email-editor,.nfk-language-value){min-width:0}
.nfd-surface :is(.nfk-simple-list-wrap,.table-responsive){width:100%;overflow-x:auto}
.nfd-surface .nfk-col-date{white-space:nowrap}
.nfd-surface .nfk-empty-row{text-align:center}
.nfd-surface .nfk-import-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--nfd-list-gap,10px);max-height:260px;overflow:auto}
.nfd-surface .nfk-logo-preview{display:block;width:auto;max-width:300px;height:auto;max-height:110px}
@media(max-width:767.98px){
.nfd-surface :is(.nfk-grid2,.nfk-grid3,.nfk-admin-columns,.nfk-detail-grid,.nfk-watcher-contact,.nfp-additional-contact-fields,.nfp-other-insurance-fields,.nfp-caregiver-data-grid,.nfp-rights-row,.nfk-detail-list,.nfk-compact-details dl,.nfk-email-row,.nfk-language-row,.nfk-dashboard-bootstrap-grid,.vvg-dashboard-bootstrap-grid,.nfp-dashboard-compact-grid,.nfp-settings-grid,.vvg-settings-grid,.nfk-stat-grid){grid-template-columns:minmax(0,1fr)}
.nfd-surface :is(.nfk-product-row,.nfk-order-summary){flex-direction:column}
.nfd-surface :is(.nfp-search-field,.nfp-search-submit){flex-basis:100%}
.nfd-surface .nfp-search-submit .btn{width:100%}
.nfd-surface .vvg-custom-right-row{grid-template-columns:24px minmax(0,1fr)}
.nfd-surface .vvg-custom-right-row .btn{grid-column:2}
}
/* Card preview dimensions express the physical PDF format; not shared UI tokens. */
.nfd-surface .nfk-card-preview{container-type:inline-size;position:relative;width:min(100%,430px);aspect-ratio:85.6/53.98;margin:20px auto 28px;background:#fff center/100% 100% no-repeat;border:1px solid var(--nfd-border-color,#C9D3E1);overflow:hidden}
.nfd-surface .nfk-card-template-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:0}
.nfd-surface :is(.nfk-card-number-preview,.nfk-card-pin-preview){position:absolute;white-space:nowrap;transform:translateY(-.8em);z-index:1}
.nfd-surface .nfk-card-preview-empty{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:20px}
.nfd-surface .nfk-carddesign-editor-visual{width:100%;min-height:280px;padding:12px 14px;border:1px solid var(--nfd-border-color,#C9D3E1);border-radius:4px;background:#fff;line-height:1.55;overflow:auto;text-align:justify}
.nfd-surface .nfk-carddesign-editor-toolbar{display:flex;gap:var(--nfd-list-gap,10px);margin-bottom:var(--nfd-list-gap,10px)}

/* Groups: structural layout only; visual widgets use the shared classes. */
.nfd-surface .nfg-section,.nfd-surface .nfg-form{margin:0 0 var(--nfd-accordion-gap,15px);min-width:0}
.nfd-surface .nfg-form{display:flex;flex-direction:column;gap:var(--nfd-field-gap,6px)}
.nfd-surface .nfg-data{display:grid;gap:var(--nfd-field-gap,6px)}
.nfd-surface .nfg-data>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--nfd-field-gap,6px)}
.nfd-surface .nfg-data span,.nfd-surface .nfg-list-item{overflow-wrap:anywhere}
.nfd-surface .nfg-note{margin-top:var(--nfd-intro-bottom,20px)}
.nfd-surface .nfg-copy-row{display:flex;align-items:center;gap:var(--nfd-action-gap,25px)}
.nfd-surface .nfg-copy-row input{flex:1;min-width:0}
.nfd-surface .nfg-list-item>div>span{display:block}
.nfd-surface .nfk-frontend-linkbar{display:flex;justify-content:flex-end;margin-bottom:var(--nfd-intro-bottom,20px)}
@media(max-width:767.98px){.nfd-surface .nfg-copy-row{flex-direction:column;align-items:stretch;gap:var(--nfd-mobile-action-gap,10px)}.nfd-surface .nfg-data>div{grid-template-columns:minmax(0,1fr)}}

/* Timeline layout: alternating cards and mobile vertical line. */
.nfd-surface .com-zeitachse__timeline {
    position: relative;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 18px 0 0;
    box-sizing: border-box;
}

.nfd-surface .com-zeitachse__timeline::before {
    content: "";
    position: absolute;
    top: 18px;
    bottom: 0;
    left: 50%;
    width: 3px;
    transform: translateX(-50%);
    background: var(--nfd-primary-color);
}

.nfd-surface .com-zeitachse__item {
    position: relative;
    display: grid;
    grid-template-columns: calc(50% - 45px) 90px calc(50% - 45px);
    align-items: start;
    width: 100%;
    margin: 0 0 var(--nfd-accordion-gap);
    box-sizing: border-box;
}

.nfd-surface .com-zeitachse__item:last-child {
    margin-bottom: 0;
}

.nfd-surface .com-zeitachse__card {
    position: relative;
    width: 100%;
    min-height: 0;
    padding: var(--nfd-content-top) var(--nfd-content-right) var(--nfd-content-bottom) var(--nfd-content-left);
    border: 1px solid var(--nfd-border-color,#C9D3E1);
    border-radius: var(--nfd-panel-radius,4px);
    background: var(--nfd-surface-background,#fff);
    box-sizing: border-box;
    text-align: left;
}

.nfd-surface .com-zeitachse__item:nth-child(odd) .com-zeitachse__card {
    grid-column: 1;
}

.nfd-surface .com-zeitachse__item:nth-child(even) .com-zeitachse__card {
    grid-column: 3;
}

/* White speech-bubble tip with the same fine grey outline as the card. */
.nfd-surface .com-zeitachse__card::before,
.nfd-surface .com-zeitachse__card::after {
    content: "";
    position: absolute;
    top: 37px;
    width: 0;
    height: 0;
    border-style: solid;
    pointer-events: none;
}

.nfd-surface .com-zeitachse__item:nth-child(odd) .com-zeitachse__card::before {
    right: -14px;
    border-width: 13px 0 13px 14px;
    border-color: transparent transparent transparent var(--nfd-border-color,#C9D3E1);
}

.nfd-surface .com-zeitachse__item:nth-child(odd) .com-zeitachse__card::after {
    right: -12px;
    border-width: 12px 0 12px 13px;
    border-color: transparent transparent transparent var(--nfd-surface-background,#fff);
    top: 38px;
}

.nfd-surface .com-zeitachse__item:nth-child(even) .com-zeitachse__card::before {
    left: -14px;
    border-width: 13px 14px 13px 0;
    border-color: transparent var(--nfd-border-color,#C9D3E1) transparent transparent;
}

.nfd-surface .com-zeitachse__item:nth-child(even) .com-zeitachse__card::after {
    left: -12px;
    border-width: 12px 13px 12px 0;
    border-color: transparent var(--nfd-surface-background,#fff) transparent transparent;
    top: 38px;
}

.nfd-surface .com-zeitachse__dot {
    position: absolute;
    z-index: 2;
    top: 35px;
    left: 50%;
    width: 30px;
    height: 30px;
    transform: translateX(-50%);
    border: 4px solid var(--nfd-primary-color);
    border-radius: 50%;
    background: var(--nfd-surface-background,#fff);
    box-sizing: border-box;
}

.nfd-surface .com-zeitachse__connector {
    position: absolute;
    z-index: 1;
    top: 49px;
    width: 45px;
    height: 3px;
    background: var(--nfd-primary-color);
}

.nfd-surface .com-zeitachse__item:nth-child(odd) .com-zeitachse__connector {
    left: calc(50% + 14px);
}

.nfd-surface .com-zeitachse__item:nth-child(even) .com-zeitachse__connector {
    right: calc(50% + 14px);
}

.nfd-surface .com-zeitachse__date {
    padding-top: 33px;
    color: inherit;
    font-size: var(--nfd-heading-size);
    line-height: 1.35;
    font-weight: 400;
    white-space: normal;
    overflow-wrap: anywhere;
}

.nfd-surface .com-zeitachse__item:nth-child(odd) .com-zeitachse__date {
    grid-column: 3;
    padding-left: 22px;
    text-align: left;
}

.nfd-surface .com-zeitachse__item:nth-child(even) .com-zeitachse__date {
    grid-column: 1;
    grid-row: 1;
    padding-right: 22px;
    text-align: right;
}







.nfd-surface .com-zeitachse__text {
    font-size: var(--nfd-font-size);
    line-height: 1.55;
    font-weight: 400;
}

/* Respect the explicit alignment selected in the Joomla editor, even if
   the active site template contains its own paragraph alignment rules. */
.nfd-surface .com-zeitachse [style*="text-align: left"] { text-align: left !important; }
.nfd-surface .com-zeitachse [style*="text-align: right"] { text-align: right !important; }
.nfd-surface .com-zeitachse [style*="text-align: center"] { text-align: center !important; }
.nfd-surface .com-zeitachse [style*="text-align: justify"] { text-align: justify !important; }
.nfd-surface .com-zeitachse [style*="text-align: start"] { text-align: start !important; }
.nfd-surface .com-zeitachse [style*="text-align: end"] { text-align: end !important; }

.nfd-surface .com-zeitachse__text > :first-child,
.nfd-surface .com-zeitachse__intro > :first-child {
    margin-top: 0;
}

.nfd-surface .com-zeitachse__text > :last-child,
.nfd-surface .com-zeitachse__intro > :last-child {
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .nfd-surface .com-zeitachse__intro {
        margin-bottom: 28px;
    }

    .nfd-surface .com-zeitachse__timeline {
        max-width: none;
        padding: 12px 0 0 46px;
    }

    .nfd-surface .com-zeitachse__timeline::before {
        top: 12px;
        bottom: 0;
        left: 15px;
        transform: none;
    }

    .nfd-surface .com-zeitachse__item,
    .nfd-surface .com-zeitachse__item:nth-child(odd),
    .nfd-surface .com-zeitachse__item:nth-child(even) {
        display: flex;
        flex-direction: column;
        width: 100%;
        margin: 0 0 var(--nfd-accordion-gap);
    }

    .nfd-surface .com-zeitachse__date,
    .nfd-surface .com-zeitachse__item:nth-child(odd) .com-zeitachse__date,
    .nfd-surface .com-zeitachse__item:nth-child(even) .com-zeitachse__date {
        order: 1;
        padding: 0 0 10px;
        font-size: var(--nfd-heading-size);
        text-align: left;
    }

    .nfd-surface .com-zeitachse__card,
    .nfd-surface .com-zeitachse__item:nth-child(odd) .com-zeitachse__card,
    .nfd-surface .com-zeitachse__item:nth-child(even) .com-zeitachse__card {
        order: 2;
        width: 100%;
        min-height: 0;
        padding: var(--nfd-content-top) var(--nfd-content-right) var(--nfd-content-bottom) var(--nfd-content-left);
    }

    .nfd-surface .com-zeitachse__dot {
        top: 0;
        left: -31px;
        width: 26px;
        height: 26px;
        transform: none;
        border-width: 4px;
    }

    .nfd-surface .com-zeitachse__connector,
    .nfd-surface .com-zeitachse__item:nth-child(odd) .com-zeitachse__connector,
    .nfd-surface .com-zeitachse__item:nth-child(even) .com-zeitachse__connector {
        top: 12px;
        left: -6px;
        right: auto;
        width: 6px;
        height: 3px;
    }

    .nfd-surface .com-zeitachse__card::before,
    .nfd-surface .com-zeitachse__card::after {
        top: 18px;
    }

    .nfd-surface .com-zeitachse__item:nth-child(odd) .com-zeitachse__card::before,
    .nfd-surface .com-zeitachse__item:nth-child(even) .com-zeitachse__card::before {
        left: -14px;
        right: auto;
        border-width: 13px 14px 13px 0;
        border-color: transparent var(--nfd-border-color,#C9D3E1) transparent transparent;
    }

    .nfd-surface .com-zeitachse__item:nth-child(odd) .com-zeitachse__card::after,
    .nfd-surface .com-zeitachse__item:nth-child(even) .com-zeitachse__card::after {
        top: 19px;
        left: -12px;
        right: auto;
        border-width: 12px 13px 12px 0;
        border-color: transparent var(--nfd-surface-background,#fff) transparent transparent;
    }

    

    .nfd-surface .com-zeitachse__text {
        font-size: var(--nfd-font-size);
        line-height: 1.55;
        font-weight: 400;
    }
}

.nfd-surface .com-zeitachse__card{min-width:0;overflow-wrap:anywhere}

/* Reviews: slider geometry and rating interaction. */
.nfd-surface .kb-component{width:100%;min-width:0}
.nfd-surface .kb-viewport{width:100%;overflow:hidden}
.nfd-surface .kb-track{position:relative;display:flex;align-items:stretch;gap:var(--nfd-list-gap,10px);will-change:transform}
.nfd-surface .kb-card{flex:0 0 calc((100% - var(--nfd-list-gap,10px))/2);min-width:0;padding:var(--nfd-list-padding,10px);border:1px solid var(--nfd-border-color,#C9D3E1);border-radius:var(--nfd-panel-radius,4px);background:var(--nfd-surface-background,#fff);overflow-wrap:anywhere}
.nfd-surface :is(.kb-stars,.kb-my-stars,.kb-admin-stars){color:var(--nfd-rating-color,#F5B301);font-size:1.3em;line-height:1.2}
.nfd-surface .kb-stars{text-align:center;margin-bottom:var(--nfd-field-gap,6px)}
.nfd-surface .kb-text{font:inherit;text-align:justify}
.nfd-surface .kb-nav{display:flex;justify-content:center;gap:var(--nfd-action-gap,25px);margin-top:var(--nfd-action-top,20px)}
.nfd-surface .kb-user-area{margin-top:var(--nfd-intro-bottom,20px)}
.nfd-surface .kb-review-form{display:grid;gap:var(--nfd-field-gap,6px);margin:0}
.nfd-surface .kb-rating-fieldset{border:0;padding:0;margin:0}
.nfd-surface .kb-rating-fieldset legend{font:inherit;font-weight:var(--nfd-label-weight,600)}
.nfd-surface .kb-rating-input{display:inline-flex;flex-direction:row-reverse;gap:3px;position:relative}
.nfd-surface .kb-rating-input input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.nfd-surface .kb-rating-input label{font-size:30px;line-height:1;color:var(--nfd-border-color,#C9D3E1);cursor:pointer;margin:0}
.nfd-surface .kb-rating-input input:checked~label,.nfd-surface .kb-rating-input label:hover,.nfd-surface .kb-rating-input label:hover~label{color:var(--nfd-rating-color,#F5B301)}
.nfd-surface .kb-rating-input input:focus-visible+label{outline:2px solid var(--nfd-primary-color,#1C5AA6);outline-offset:3px}
.nfd-surface :is(.kb-my-review,.kb-privacy-notice,.kb-privacy-ack,.kb-rate-limit-note){margin-bottom:var(--nfd-field-gap,6px)}
.nfd-surface .kb-status{padding:var(--nfd-list-padding,10px);background:var(--nfd-heading-background,#E9F0FC)}
.nfd-surface .kb-guest-notice *{font-size:inherit;line-height:inherit}
.nfd-surface .kb-admin-filters{display:flex;gap:var(--nfd-list-gap,10px);flex-wrap:wrap;margin-bottom:var(--nfd-intro-bottom,20px)}
.nfd-surface .kb-review-preview{max-width:560px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:700px){.nfd-surface .kb-track{gap:0}.nfd-surface .kb-card{flex-basis:100%;width:100%}}

/* Webinar: structural layout. Visual controls use the shared component classes. */
.nfd-surface :is(.webinar-chapter-row,.webinar-summary-row,.webinar-chapter-top){display:flex;justify-content:space-between;align-items:center;gap:var(--nfd-intro-bottom,20px);margin-bottom:var(--nfd-list-gap,10px)}
.nfd-surface :is(.webinar-chapter-row,.webinar-summary-row,.webinar-review-row){padding:var(--nfd-list-padding,10px) 0;border-bottom:1px solid var(--nfd-border-color,#C9D3E1)}
.nfd-surface .webinar-chapter-top{align-items:flex-start}
.nfd-surface .webinar-chapter-top .article-header{flex:1;min-width:0;margin:0}
.nfd-surface .webinar-chapter-pdf-top{flex:0 1 auto;margin-left:auto}
.nfd-surface :is(.webinar-progress,.webinar-content,.webinar-media,.webinar-transcript){margin:var(--nfd-intro-bottom,20px) 0}
.nfd-surface .webinar-progressbar{height:10px;background:var(--nfd-heading-background,#E9F0FC);border-radius:var(--nfd-control-radius,4px);overflow:hidden;margin-top:var(--nfd-field-gap,6px)}
.nfd-surface .webinar-progressbar span{display:block;height:100%;background:var(--nfd-primary-color,#1C5AA6)}
.nfd-surface .webinar-status{font-weight:var(--nfd-label-weight,600)}
.nfd-surface .webinar-status.pass{color:#207a39}
.nfd-surface .webinar-status.locked{opacity:.7}
.nfd-surface :is(.webinar-result,.webinar-question) .missing{color:#b02a37}
.nfd-surface .webinar-score{font-size:2em;font-weight:var(--nfd-heading-weight,700);margin:var(--nfd-list-gap,10px) 0}
.nfd-surface .webinar-media video{width:100%;max-height:620px}
.nfd-surface :is(.webinar-media,.webinar-external-video).ratio{position:relative;aspect-ratio:16/9;padding:0!important;overflow:hidden}
.nfd-surface :is(.webinar-media,.webinar-external-video).ratio iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.nfd-surface .webinar-question{margin-top:var(--nfd-intro-bottom,20px)}
.nfd-surface .webinar-answer{display:flex;gap:var(--nfd-list-gap,10px);align-items:flex-start;padding:var(--nfd-field-top,6px) var(--nfd-field-right,10px) var(--nfd-field-bottom,6px) var(--nfd-field-left,10px);margin:var(--nfd-field-gap,6px) 0;background:var(--nfd-field-alt-background,#E9F0FC);border-radius:var(--nfd-control-radius,4px);cursor:pointer}
.nfd-surface .webinar-answer input{flex:0 0 auto;margin-top:5px}
.nfd-surface .webinar-answer:focus-within{outline:2px solid var(--nfd-primary-color,#1C5AA6);outline-offset:2px}
.nfd-surface .webinar-answer-hint{font-size:.8em;font-weight:400;white-space:normal}
.nfd-surface .webinar-content [style]{max-width:100%}
.nfd-surface :is(.webinar-form-grid,.webinar-detail-grid){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--nfd-list-gap,10px);margin:var(--nfd-intro-bottom,20px) 0}
.nfd-surface :is(.webinar-form-grid,.webinar-billing-wrap) label{display:block;font-weight:var(--nfd-label-weight,600);margin:var(--nfd-field-gap,6px) 0 var(--nfd-label-gap,3px)}
.nfd-surface .webinar-billing-wrap{width:100%;min-width:0}
.nfd-surface .webinar-list-toolbar{display:flex;align-items:center;gap:var(--nfd-action-gap,25px);flex-wrap:wrap;margin-bottom:var(--nfd-intro-bottom,20px)}
.nfd-surface .webinar-list-toolbar .form-control{flex:1 1 300px}
.nfd-surface .webinar-simple-list-wrap{width:100%;overflow-x:auto}
.nfd-surface .webinar-simple-table{width:100%;margin:0}
.nfd-surface .webinar-simple-table :is(th,td){vertical-align:middle;padding:var(--nfd-list-padding,10px)}
.nfd-surface .webinar-col-date{white-space:nowrap}
.nfd-surface .webinar-empty-row{text-align:center}
.nfd-surface .webinar-logo-preview{display:block;width:180px;height:80px;max-width:100%;object-fit:contain}
.nfd-surface .webinar-detail-list{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--nfd-field-gap,6px);margin:0;overflow-wrap:anywhere}
.nfd-surface .webinar-detail-list dd{margin:0}
.nfd-surface .webinar-detail-list dt{font-weight:var(--nfd-label-weight,600)}
@media(max-width:700px){.nfd-surface :is(.webinar-form-grid,.webinar-detail-grid,.webinar-detail-list){grid-template-columns:1fr}.nfd-surface :is(.webinar-chapter-top,.webinar-chapter-row,.webinar-summary-row){flex-direction:column;align-items:stretch}.nfd-surface .webinar-chapter-pdf-top{margin-left:0}.nfd-surface .webinar-form-grid>div:empty{display:none}.nfd-surface .webinar-list-toolbar>*{flex-basis:100%}}
@media print{.nfd-surface :is(.webinar-actions,.webinar-button,.webinar-chapter-pdf-top){display:none!important}}

/* Invitations and mail: only structural layout; shared fields, headings and buttons. */
.nfd-surface :is(.einladungen-admin,.einladungen-frontend,.emailversand-admin,.emailversand-frontend){width:100%;min-width:0}
.nfd-surface .einladungen-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:var(--nfd-list-gap,10px)}
.nfd-surface :is(.einladungen-send-row,.einladungen-row,.einladungen-search,.einladungen-test-row,.emailversand-search,.emailversand-test-row,.emailversand-template-picker){display:flex;align-items:center;gap:var(--nfd-action-gap,25px);margin:var(--nfd-field-gap,6px) 0 var(--nfd-intro-bottom,20px)}
.nfd-surface :is(.einladungen-send-row,.einladungen-row,.einladungen-search,.einladungen-test-row,.emailversand-search,.emailversand-test-row) input{flex:1;min-width:0}
.nfd-surface :is(.einladungen-panel,.einladungen-send-form) label{display:block;font-weight:var(--nfd-label-weight,600);margin:var(--nfd-field-gap,6px) 0 var(--nfd-label-gap,3px)}
.nfd-surface :is(.einladungen-section-head,.einladungen-list-toolbar,.emailversand-section-head,.emailversand-list-toolbar){display:flex;justify-content:space-between;align-items:center;gap:var(--nfd-list-gap,10px);flex-wrap:wrap;margin-bottom:var(--nfd-intro-bottom,20px)}
.nfd-surface :is(.einladungen-intro,.emailversand-intro){margin-bottom:var(--nfd-intro-bottom,20px)}
.nfd-surface :is(.einladungen-note,.einladungen-hint,.emailversand-note,.emailversand-hint){margin:var(--nfd-list-gap,10px) 0}
.nfd-surface .emailversand-row-actions{white-space:normal}
.nfd-surface .emailversand-row-actions form{display:inline-block}
.nfd-surface :is(.emailversand-card,.emailversand-panel) .control-group{margin-bottom:var(--nfd-field-gap,6px)}
@media(max-width:700px){.nfd-surface .einladungen-grid{grid-template-columns:1fr}.nfd-surface :is(.einladungen-send-row,.einladungen-row,.einladungen-search,.einladungen-test-row,.emailversand-search,.emailversand-test-row,.emailversand-template-picker){flex-direction:column;align-items:stretch;gap:var(--nfd-mobile-action-gap,10px)}}

/* Groups 1.0.57 structure, using the shared visual values. */
.nfd-surface :is(.nfg-detail,.nfg-link-area,.nfg-generated-link,.nfg-person-list,.nfg-category-detail){margin-bottom:var(--nfd-intro-bottom,20px)}
.nfd-surface .nfg-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--nfd-list-gap,10px);padding:var(--nfd-list-padding,10px) 0;border-bottom:1px solid var(--nfd-border-color,#C9D3E1);overflow-wrap:anywhere}
.nfd-surface .nfg-person-row{display:flex;align-items:center;justify-content:space-between;gap:var(--nfd-list-gap,10px);padding:var(--nfd-list-padding,10px);overflow-wrap:anywhere}
.nfd-surface .nfg-person-row:nth-child(even){background:var(--nfd-field-alt-background,#E9F0FC)}
.nfd-surface .nfg-person-name{font-weight:var(--nfd-label-weight,600)}
.nfd-surface .nfg-person-status{flex:0 0 auto;text-align:right}
.nfd-surface :is(.nfg-direct-invite-section,.nfg-invite-link-section){margin-top:var(--nfd-intro-bottom,20px)}
.nfd-surface .nfg-category-list{display:flex;flex-direction:column;gap:var(--nfd-accordion-gap,15px)}
.nfd-surface .nfg-category-titlebar{display:flex;flex-direction:column;text-decoration:none}
.nfd-surface .nfg-category-subtitle{font-size:.9em;font-weight:400}
.nfd-surface :is(.nfg-forum-row,.nfg-forum-table-head){display:grid;grid-template-columns:minmax(0,1fr) 90px 210px;gap:var(--nfd-list-gap,10px);align-items:center;padding:var(--nfd-list-padding,10px);border-bottom:1px solid var(--nfd-border-color,#C9D3E1);text-decoration:none;overflow-wrap:anywhere}
.nfd-surface .nfg-forum-table-head{background:var(--nfd-heading-background,#E9F0FC)}
.nfd-surface :is(.nfg-forum-row-topic,.nfg-forum-row-last){display:flex;flex-direction:column;min-width:0}
.nfd-surface .nfg-forum-row-count{text-align:center}
.nfd-surface .nfg-forum-post{padding:var(--nfd-list-padding,10px) 0;border-bottom:1px solid var(--nfd-border-color,#C9D3E1)}
.nfd-surface .nfg-forum-post-head{display:flex;justify-content:space-between;gap:var(--nfd-list-gap,10px)}
.nfd-surface .nfg-forum-post-body{overflow-wrap:anywhere}
.nfd-surface .nfg-forum-pending{background:var(--nfd-heading-background,#E9F0FC);padding:var(--nfd-list-padding,10px)}
.nfd-surface .nfg-moderation-confirmation{text-align:center}
.nfd-surface .nfg-moderation-icon{font-size:2em;color:var(--nfd-primary-color,#1C5AA6)}
@media(max-width:700px){.nfd-surface .nfg-row{grid-template-columns:1fr}.nfd-surface .nfg-forum-table-head{display:none}.nfd-surface .nfg-forum-row{grid-template-columns:minmax(0,1fr) auto}.nfd-surface .nfg-forum-row-topic{grid-column:1/-1}.nfd-surface .nfg-forum-post-head{flex-direction:column}}
/* Cookie dialog and the three added components: structure uses shared design tokens. */
html.cookie-richtlinie-lock,body.cookie-richtlinie-lock{overflow:hidden!important;height:100%!important}
.nfd-surface.cookie-richtlinie-root{position:static!important;width:0!important;height:0!important;margin:0!important;padding:0!important}
.nfd-surface .cookie-richtlinie-overlay{position:fixed;inset:0;background:#000;opacity:.6;z-index:2147483645;pointer-events:all}
.nfd-surface .cookie-richtlinie-box{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:760px;max-width:calc(100vw - 30px);max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain;background:var(--nfd-surface-background,#fff);color:var(--nfd-text-color,#333);padding:var(--nfd-content-top,16px) var(--nfd-content-right,22px) var(--nfd-content-bottom,16px) var(--nfd-content-left,22px);border-radius:var(--nfd-panel-radius,4px);z-index:2147483646;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.nfd-surface .cookie-richtlinie-actions{width:100%}
.nfd-surface .cookie-richtlinie-actions .btn{flex:1 1 180px}
.nfd-surface .cookie-richtlinie-option-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--nfd-list-gap,10px);padding:var(--nfd-list-padding,10px) 0;border-bottom:1px solid var(--nfd-border-color,#C9D3E1)}
.nfd-surface .cookie-richtlinie-option-content{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}
.nfd-surface .cookie-richtlinie-option-title{font-weight:var(--nfd-label-weight,600);margin-bottom:var(--nfd-label-gap,3px)}
.nfd-surface .cookie-richtlinie-service-info{margin-top:var(--nfd-field-gap,6px)}
.nfd-surface .cookie-richtlinie-always-active{flex:0 0 auto;font-weight:var(--nfd-label-weight,600)}
.nfd-surface .cookie-richtlinie-switch{position:relative;display:inline-block;width:58px;height:32px;flex:0 0 auto}
.nfd-surface .cookie-richtlinie-switch input{opacity:0;width:0;height:0;position:absolute}
.nfd-surface .cookie-richtlinie-slider{position:absolute;inset:0;background:var(--nfd-border-color,#C9D3E1);border-radius:999px;cursor:pointer}
.nfd-surface .cookie-richtlinie-slider:before{content:"";position:absolute;width:24px;height:24px;left:4px;top:4px;background:var(--nfd-surface-background,#fff);border-radius:50%}
.nfd-surface .cookie-richtlinie-switch input:checked+.cookie-richtlinie-slider{background:var(--nfd-primary-color,#1C5AA6)}
.nfd-surface .cookie-richtlinie-switch input:checked+.cookie-richtlinie-slider:before{transform:translateX(26px)}
.nfd-surface .cookie-richtlinie-switch input:focus-visible+.cookie-richtlinie-slider{outline:2px solid var(--nfd-primary-color,#1C5AA6);outline-offset:3px}
.nfd-surface :is(.cookie-richtlinie-more-link-wrap,.cookie-richtlinie-legal-links){margin-top:var(--nfd-list-gap,10px)}
.nfd-surface .cookie-richtlinie-legal-links{display:flex;justify-content:flex-end;gap:var(--nfd-list-gap,10px);flex-wrap:wrap}
.nfd-surface .cookie-richtlinie-link{display:inline;background:transparent;border:0;padding:0;color:var(--nfd-primary-color,#1C5AA6);font:inherit;text-decoration:underline;cursor:pointer}
.nfd-surface .cookie-richtlinie-notice-actions{display:flex;justify-content:flex-end;margin-top:var(--nfd-action-top,20px)}
.nfd-surface .cookie-richtlinie-notice-actions.align-left{justify-content:flex-start}
.nfd-surface .cookie-richtlinie-notice-actions.align-center{justify-content:center}
.nfd-surface .cookie-richtlinie-legal-content{overflow-wrap:anywhere}
.nfd-surface .cookie-richtlinie-legal-content img{max-width:100%;height:auto}
.nfd-surface .cookie-hinweis-settings-page{width:100%;max-width:100%}
.nfd-surface .cookie-hinweis-status{margin-top:var(--nfd-intro-bottom,20px);padding:var(--nfd-list-padding,10px);border:1px solid var(--nfd-border-color,#C9D3E1)}
.nfd-surface .nfwiderruf__inline-form{margin:0;padding:0}
.nfd-surface .nfwiderruf__review{overflow-wrap:anywhere}
.nfd-surface .nfwiderruf__review dd{margin-left:0}
.nfd-surface .nfwiderruf__review dt{font-weight:var(--nfd-label-weight,600)}
.nfd-surface :is(.com-selfdelete,.nfwiderruf) .nfd-actions:last-child{margin-bottom:0!important}
@media(max-width:700px){.nfd-surface .cookie-richtlinie-actions .btn{flex:1 1 auto;width:100%}.nfd-surface .cookie-richtlinie-box{padding:var(--nfd-mobile-padding,15px)}.nfd-surface .cookie-richtlinie-option-row{flex-wrap:wrap}}

.nfd-surface .nfk-secret-inline{display:inline-flex;align-items:center;gap:8px;flex-wrap:nowrap}
.nfd-surface .nfk-pin-toggle-form{display:inline-flex;align-items:center;margin:0!important;padding:0!important}

/* Top card download: exact action gaps without added heading/body spacing. */
.nfd-surface .nfk-mycard-page .nfk-card-variant-title{margin-bottom:0!important}
.nfd-surface .nfk-mycard-page .nfk-card-section-body{padding-top:0!important;display:flow-root}
.nfd-surface .nfk-mycard-page .nfk-mycard-top-download{justify-content:flex-end;align-items:flex-end}
.nfd-surface .nfk-mycard-top-download+.nfk-card-preview{margin-top:0!important}

.nfd-surface .nfk-mycard-page .nfk-card-section>.nfk-card-download-actions{justify-content:flex-end;align-items:flex-end}
.nfd-surface .nfk-mycard-page .nfk-card-section>.nfk-card-download-actions+.nfk-card-section-body>.nfk-card-preview{margin-top:0!important}

/* Card download: requested symmetric 20px spacing. */
.nfd-surface .nfk-mycard-page .nfk-mycard-top-download{margin-bottom:20px!important}

/* Account: two feature panels next to each other. */
.nfd-surface .nfk-functions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--nfd-list-gap,10px);width:100%;min-width:0}
.nfd-surface .nfk-functions-grid>.nfk-function-box{background:var(--nfd-function-background,#F3F8FE)!important}
@media(max-width:700px){.nfd-surface .nfk-functions-grid{grid-template-columns:minmax(0,1fr)}}

/* Feature surfaces align with both edges of their section heading. */
.nfd-surface #nfk-account-more-functions-panel>.nfk-account-accordion-inner{padding-left:0!important;padding-right:0!important}

/* Equal action positions even when descriptions wrap differently. */
.nfd-surface .nfk-functions-grid>.nfk-function-box:has(>.nfk-upgrade-actions,>.nfk-refer-actions){display:flex;flex-direction:column}
.nfd-surface .nfk-functions-grid .nfk-function-description{margin-bottom:0}
/* Gemeinsamer Button-Start direkt unter dem gleich hohen Beschreibungstext. */
.nfd-surface .nfk-functions-grid>.nfk-function-box>:is(.nfk-upgrade-actions,.nfk-refer-actions){margin-top:10px!important;margin-bottom:auto!important;padding-top:0!important}

/* Profile detail footer spacing: separate last accordion, modified date and overview link. */
.nfd-surface .nfp-profile-modified{margin-top:20px!important}
.nfd-surface .nfp-detail-footer-nav{margin-top:20px!important}

/* 1.0.128: central design ownership, state and content alignment. */
.nfd-surface .kb-track { transform:translateX(var(--kb-offset, 0px));transition:transform .8s cubic-bezier(.22,.61,.36,1); }
.nfd-surface .kb-track.kb-track-no-transition { transition:none; }
.nfd-surface .kb-component [hidden] { display:none !important; }
.nfd-surface .com-zeitachse .nfd-text-align-left { text-align:left; }
.nfd-surface .com-zeitachse .nfd-text-align-right { text-align:right; }
.nfd-surface .com-zeitachse .nfd-text-align-center { text-align:center; }
.nfd-surface .com-zeitachse .nfd-text-align-justify { text-align:justify; }
.nfd-surface .com-zeitachse .nfd-text-align-start { text-align:start; }
.nfd-surface .com-zeitachse .nfd-text-align-end { text-align:end; }

/* Meine Notfallkarte: einziges Raster fuer Kartennummer, Status und PIN.
   Gemeinsame Zeilenhoehe, da das PIN-Auge ein eigenes Bedienelement ist. */
.nfk-wrap.nfk-mycard-page dl.nfk-card-data {
  display:grid;
  grid-template-columns:minmax(0,220px) minmax(0,1fr);
  column-gap:12px;
  grid-auto-rows:32px;
  row-gap:4px;
  align-items:center;
  margin:20px 0;
  padding:0;
}
.nfk-wrap.nfk-mycard-page dl.nfk-card-data > dt,
.nfk-wrap.nfk-mycard-page dl.nfk-card-data > dd {
  box-sizing:border-box;
  display:flex;
  align-items:center;
  min-height:0;
  height:32px;
  margin:0;
  padding:0;
  line-height:24px;
}
.nfk-wrap.nfk-mycard-page dl.nfk-card-data > dd .nfk-secret-inline {
  display:inline-flex;
  align-items:center;
  min-height:0;
  height:32px;
  line-height:24px;
}
@media(max-width:650px) {
  .nfk-wrap.nfk-mycard-page dl.nfk-card-data {
    grid-template-columns:minmax(0,50%) minmax(0,1fr);
    column-gap:10px;
  }
}
