/* Notfell Design 1.0.0. Shared rules for all components and both clients. */
.nfd-surface{box-sizing:border-box;width:100%;min-width:0;display:flow-root;margin:0 0 20px !important;font-family:inherit !important;font-size:var(--nfd-font-size,inherit) !important;line-height:1.55 !important;color:var(--nfd-text-color,#333) !important}
.nfd-surface *,.nfd-surface *::before,.nfd-surface *::after{box-sizing:border-box}
.nfd-surface [hidden],.nfd-surface .hidden{display:none!important}
.nfd-surface input,.nfd-surface select,.nfd-surface textarea,.nfd-surface button{font-family:inherit !important}
.nfd-surface p:last-child{margin-bottom:0}
.nfd-surface :is(.nfk-wrap,.nfp-wrap,.vvg-wrap,.nfk-admin-wrap,.nfp-admin-form,.nfp-profile-form,.vvg-admin-form,.vvg-admin-j6,.vvg-settings-j6,.vvg-dashboard-joomla6){width:100%;max-width:none;min-width:0;margin:0 !important;padding:0 !important}
.nfd-surface[data-nfd-client="admin"]{max-width:var(--nfd-backend-width,1400px)}
.nfd-surface .btn{display:inline-flex!important;align-items:center;justify-content:center;max-width:100%;min-height:var(--nfd-control-height,42px);gap:6px;padding:var(--nfd-button-top,10px) var(--nfd-button-right,18px) var(--nfd-button-bottom,10px) var(--nfd-button-left,18px)!important;margin:0 !important;border:1px solid var(--nfd-button-border-color,#B8C9DF)!important;border-radius:var(--nfd-button-radius,4px)!important;background:var(--nfd-button-background,#E9F0FC)!important;background-image:none!important;color:var(--nfd-button-color,#1C5AA6)!important;font-family:inherit!important;font-size:var(--nfd-button-font-size,inherit)!important;font-weight:600!important;line-height:1.2!important;text-align:center;text-decoration:none!important;text-transform:none;letter-spacing:normal;white-space:normal;box-shadow:none!important;cursor:pointer;transform:none!important;translate:none!important;scale:none!important;rotate:none!important;transition-property:background-color,color,border-color,box-shadow!important}
.nfd-surface .btn:is(:hover,:active){background:var(--nfd-button-hover-background,#D3E1F9)!important;color:var(--nfd-button-hover-color,#1C5AA6)!important}
.nfd-surface :is(.btn,input,select,textarea,a,summary):focus-visible{outline:2px solid var(--nfd-primary-color,#1C5AA6);outline-offset:2px;box-shadow:none !important}
.nfd-surface .btn:is(:disabled,[aria-disabled="true"]),.nfd-surface .btn.disabled{opacity:.55;cursor:default;pointer-events:none}
/* Yellow is opt-in. Semantic Bootstrap classes do not assign this variant. */
.btn.nfd-btn-yellow:not(.btn-danger){background:var(--nfd-yellow-button-background,#D8AB00)!important;color:var(--nfd-yellow-button-color,#FFFFFF)!important;border-color:var(--nfd-yellow-button-border-color,#B8C9DF)!important}
.btn.nfd-btn-yellow:not(.btn-danger):is(:hover,:active){background:var(--nfd-yellow-button-hover-background,#D8AB00)!important;color:var(--nfd-yellow-button-hover-color,#FFFFFF)!important}
/* Notfallkarten: the existing order buttons are centrally assigned to the yellow palette.
   This intentionally overrides the component's historical hard-coded #927000 rule. */
.nfd-surface .nfk-products-page .nfk-order-button:not(.btn-danger){background:var(--nfd-yellow-button-background,#D8AB00)!important;border-color:var(--nfd-yellow-button-border-color,#B8C9DF)!important;color:var(--nfd-yellow-button-color,#FFFFFF)!important;transform:none!important;translate:none!important;scale:none!important;rotate:none!important}
.nfd-surface .nfk-products-page .nfk-order-button:not(.btn-danger):is(:hover,:focus,:active){background:var(--nfd-yellow-button-hover-background,#D8AB00)!important;border-color:var(--nfd-yellow-button-border-color,#B8C9DF)!important;color:var(--nfd-yellow-button-hover-color,#FFFFFF)!important;transform:none!important;translate:none!important;scale:none!important;rotate:none!important}
.nfd-surface .btn-danger{border-color:#b02a37!important;color:#b02a37!important}
.nfd-surface .btn-danger:is(:hover,:active){background:#fce8eb!important;color:#8b1e29!important}
.nfd-surface :is(.nfp-form-actions,.nfp-detail-actions,.nfp-dialog-actions,.vvg-form-actions,.vvg-detail-actions,.nfk-actions,.nfk-action-row,.nfk-inline-actions,.nfp-actions,.vvg-actions,.nfk-card-download-actions,.nfk-card-action-buttons,.nfp-change-batch-actions,.nfd-actions){display:flex;flex-wrap:wrap;align-items:center;gap:var(--nfd-action-gap,25px)!important;margin:var(--nfd-action-top,20px) 0 var(--nfd-action-bottom,10px)!important;padding:0 !important}
.nfd-surface :is(.nfp-form-actions,.nfp-detail-actions,.nfp-dialog-actions,.vvg-form-actions,.vvg-detail-actions,.nfk-actions,.nfk-action-row,.nfk-inline-actions,.nfp-actions,.vvg-actions,.nfk-card-download-actions,.nfk-card-action-buttons,.nfp-change-batch-actions,.nfd-actions)>*{margin:0!important}
.nfd-surface :is(.nfp-form-actions,.nfp-detail-actions,.nfp-dialog-actions,.vvg-form-actions,.vvg-detail-actions,.nfk-actions,.nfk-action-row,.nfk-inline-actions,.nfp-actions,.vvg-actions,.nfk-card-download-actions,.nfk-card-action-buttons,.nfp-change-batch-actions,.nfd-actions)>form{display:inline-flex;flex:0 1 auto;width:auto;max-width:100%;padding:0 !important}
.nfd-surface .nfd-actions.nfd-actions-right{justify-content:flex-end}
.nfd-surface :is(.nfp-cancel-link,.vvg-cancel,.nfp-simple-link,.nfp-action-link,.vvg-link-button,.nfk-action-link,.nfp-remove,.vvg-animal-remove){display:inline;padding:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;color:inherit !important;font:inherit;box-shadow:none !important;text-decoration:none;cursor:pointer}
.nfd-surface :is(.nfp-cancel-link,.vvg-cancel,.nfp-simple-link,.nfp-action-link,.vvg-link-button,.nfk-action-link,.nfp-remove,.vvg-animal-remove):is(:hover,:focus){text-decoration:underline}
.nfd-surface :is(.form-control,.form-select){display:block;width:100%;max-width:100%;min-width:0;min-height:var(--nfd-control-height,42px);padding:8px 12px !important;margin:0 !important;border:1px solid var(--nfd-border-color,#C9D3E1) !important;border-radius:var(--nfd-control-radius,4px) !important;background-color:var(--nfd-surface-background,#fff);color:var(--nfd-text-color,#333) !important;font-family:inherit !important;font-size:inherit !important;line-height:1.4 !important;box-shadow:none !important}
.nfd-surface textarea.form-control{height:auto;resize:vertical}
.nfd-surface input[type="checkbox"],.nfd-surface input[type="radio"]{accent-color:var(--nfd-primary-color,#1C5AA6)}
.nfd-surface :is(.nfp-field,.nfp-field-card,.vvg-field,.vvg-animal-field,.nfk-profile-field,.nfk-order-field,.nfk-field-row){width:100%;min-width:0;margin:0 !important;padding:var(--nfd-field-top,6px) var(--nfd-field-right,10px) var(--nfd-field-bottom,6px) var(--nfd-field-left,10px) !important;border:0 !important;border-radius:0 !important;background:var(--nfd-surface-background,#fff) !important;box-shadow:none !important}
.nfd-surface :is(.nfp-field-alt,.nfp-field-blue,.vvg-field-alt),.nfd-surface .nfk-profile-field:nth-child(even),.nfd-surface .nfk-order-field:nth-child(even),.nfd-surface .nfk-field-row:nth-child(even){background:var(--nfd-field-alt-background,#E9F0FC) !important}
.nfd-surface :is(.nfp-field,.nfp-field-card,.vvg-field,.vvg-animal-field,.nfk-profile-field,.nfk-order-field,.nfk-field-row) label:not(.form-check):not(.nfk-checkbox):not(.nfk-radio),.nfd-surface .nfk-field>label,.nfd-surface .vvg-admin-form label,.nfd-surface .nfp-admin-form label{display:block;margin:0 0 var(--nfd-label-gap,3px) !important;padding:0 !important;font:inherit;font-weight:var(--nfd-label-weight,600) !important;line-height:inherit !important}
.nfd-surface .nfk-order-field>.nfk-field,.nfd-surface .nfk-field-row>.nfk-field{padding:0 !important;margin:0 !important}
.nfd-surface :is(.nfp-grid,.vvg-grid,.nfk-profile-fields,.nfk-order-fields){display:grid;grid-template-columns:minmax(0,1fr);gap:var(--nfd-field-gap,6px);width:100%;min-width:0;margin:0 !important;padding:0 !important}
.nfd-surface :is(.nfp-field-invalid,.vvg-field-invalid),.nfd-surface .form-control.is-invalid{outline:1px solid #b02a37;outline-offset:-1px}
.nfd-surface :is(.nfp-accordion-list,.vvg-accordion-list,.nfk-account-accordion-list){display:flex;flex-direction:column;gap:var(--nfd-accordion-gap,15px);width:100%;margin:0 !important;padding:0 !important;counter-reset:nfd-section;overflow-anchor:none}
.nfd-surface .nfd-functional-accordion{width:100%;max-width:var(--nfd-functional-accordion-width,760px);margin-right:auto !important}
.nfd-surface .nfk-order-form{counter-reset:nfd-section}
.nfd-surface :is(.nfp-accordion-item,.vvg-accordion-item,.nfk-account-accordion-item,.nfk-order-section){display:block;counter-increment:nfd-section;width:100%;min-width:0;margin:0 !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;overflow-anchor:none}
.nfd-surface .nfk-order-section{margin-bottom:var(--nfd-accordion-gap,15px)}
.nfd-surface :is(.nfp-accordion-summary,.vvg-accordion-summary,.nfk-account-accordion-summary,.nfk-order-section-heading,details.nfk-compact-item>summary.nfk-compact-summary){appearance:none;display:flex;align-items:center;position:relative;width:100%;min-width:0;min-height:0;height:auto;margin:0 !important;padding:var(--nfd-heading-top,16px) calc(var(--nfd-heading-right,22px) + 30px) var(--nfd-heading-bottom,16px) var(--nfd-heading-left,22px) !important;border:0 !important;border-radius:var(--nfd-heading-radius,0px) !important;background:var(--nfd-heading-background,#E9F0FC) !important;color:var(--nfd-heading-color,#111) !important;font-family:inherit !important;font-size:var(--nfd-heading-size,18px) !important;font-weight:var(--nfd-heading-weight,700) !important;line-height:1.35 !important;text-align:left;text-decoration:none;text-transform:none;letter-spacing:normal;white-space:normal;box-shadow:none !important;cursor:pointer;list-style:none;user-select:none}
.nfd-surface :is(.nfp-accordion-summary,.vvg-accordion-summary,.nfk-account-accordion-summary,.nfk-order-section-heading,details.nfk-compact-item>summary.nfk-compact-summary)::before{content:counter(nfd-section) ".";display:inline-block;flex:0 0 auto;margin-right:.45em;font:inherit;color:inherit !important}
.nfd-surface :is(.nfp-accordion-summary,.vvg-accordion-summary,.nfk-account-accordion-summary,.nfk-order-section-heading,details.nfk-compact-item>summary.nfk-compact-summary)::after{content:"";position:absolute;right:var(--nfd-heading-right,22px);top:50%;width:8px;height:8px;margin:-6px 2px 0 0 !important;border:0 !important;border-right:2px solid currentColor !important;border-bottom:2px solid currentColor !important;background:transparent !important;transform:rotate(45deg);transition:transform .15s ease;pointer-events:none}
.nfd-surface :is(.nfp-accordion-summary,.vvg-accordion-summary,.nfk-account-accordion-summary,.nfk-order-section-heading,details.nfk-compact-item>summary.nfk-compact-summary)::-webkit-details-marker{display:none}
.nfd-surface :is(.nfp-accordion-summary,.vvg-accordion-summary,.nfk-account-accordion-summary,.nfk-order-section-heading,details.nfk-compact-item>summary.nfk-compact-summary)::marker{content:""}
.nfd-surface :is(.nfp-accordion-summary,.vvg-accordion-summary,.nfk-account-accordion-summary,.nfk-order-section-heading,details.nfk-compact-item>summary.nfk-compact-summary):is(:hover,:active){background:var(--nfd-heading-background,#E9F0FC) !important;color:var(--nfd-heading-color,#111) !important}
.nfd-surface .nfp-accordion-summary strong{font:inherit;color:inherit}
.nfd-surface :is(.nfk-order-section,details.nfk-compact-item,details.nfp-accordion-item)[open]>:is(.nfp-accordion-summary,.vvg-accordion-summary,.nfk-account-accordion-summary,.nfk-order-section-heading,details.nfk-compact-item>summary.nfk-compact-summary)::after,.nfd-surface :is(.nfp-accordion-radio,.vvg-accordion-radio,.nfk-account-accordion-radio):checked+:is(.nfp-accordion-summary,.vvg-accordion-summary,.nfk-account-accordion-summary,.nfk-order-section-heading,details.nfk-compact-item>summary.nfk-compact-summary)::after{transform:rotate(225deg);margin-top:-2px}
.nfd-surface :is(.nfp-accordion-content,.vvg-accordion-content,.nfk-account-accordion-content){width:100%;margin:0 !important;padding:0 !important;border:0 !important;background:var(--nfd-surface-background,#fff) !important;color:var(--nfd-text-color,#333) !important}
.nfd-surface :is(.nfp-accordion-inner,.vvg-accordion-inner,.nfk-account-accordion-inner,.nfk-order-section-body,.nfk-compact-details){width:100%;min-width:0;margin:0 !important;padding:var(--nfd-content-top,16px) var(--nfd-content-right,22px) var(--nfd-content-bottom,16px) var(--nfd-content-left,22px) !important;border:0 !important;background:var(--nfd-surface-background,#fff) !important;font:inherit;color:inherit !important}
.nfd-surface :is(.nfp-accordion-radio,.vvg-accordion-radio,.nfk-account-accordion-radio){position:absolute;width:1px;height:1px;margin:0 !important;padding:0 !important;opacity:0;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.nfd-surface :is(.nfp-accordion-radio,.vvg-accordion-radio,.nfk-account-accordion-radio):not(:checked)~:is(.nfp-radio-panel,.vvg-radio-panel,.nfk-account-accordion-content){display:none!important}
.nfd-surface :is(.nfp-accordion-radio,.vvg-accordion-radio,.nfk-account-accordion-radio):checked~:is(.nfp-radio-panel,.vvg-radio-panel,.nfk-account-accordion-content){display:block}
.nfd-surface :is(.nfp-accordion-radio,.vvg-accordion-radio,.nfk-account-accordion-radio):focus-visible+:is(.nfp-accordion-summary,.vvg-accordion-summary,.nfk-account-accordion-summary,.nfk-order-section-heading,details.nfk-compact-item>summary.nfk-compact-summary){outline:2px solid var(--nfd-primary-color,#1C5AA6);outline-offset:-3px}
.nfd-surface .nfk-order-variant-title{font:inherit;color:inherit !important;margin:0 !important;padding:0 !important}
.nfd-surface :is(.nfk-card-variant-title,.nfd-section-title),.nfd-surface .nfp-section>h1,.nfd-surface .nfp-appointment-section>h2,.nfd-surface .nfk-box>h2,.nfd-surface .vvg-admin-panel-head{margin:0 0 var(--nfd-accordion-gap,15px) !important;padding:var(--nfd-heading-top,16px) var(--nfd-heading-right,22px) var(--nfd-heading-bottom,16px) var(--nfd-heading-left,22px) !important;border:0 !important;border-radius:var(--nfd-heading-radius,0px) !important;background:var(--nfd-heading-background,#E9F0FC) !important;color:var(--nfd-heading-color,#111) !important;font-family:inherit !important;font-size:var(--nfd-heading-size,18px) !important;font-weight:var(--nfd-heading-weight,700) !important;line-height:1.35 !important}
.nfd-surface :is(.nfp-step-intro,.vvg-step-intro,.nfk-page-intro,.nfk-order-intro,.nfp-required-note,.vvg-security-note-top){margin:0 0 var(--nfd-intro-bottom,20px) !important;padding:0 !important}
.nfd-surface :is(.nfp-profile-list,.vvg-list,.nfk-product-list,.nfk-compact-list){display:flex;flex-direction:column;gap:var(--nfd-list-gap,10px);width:100%;margin:0 !important;padding:0 !important}
.nfd-surface :is(.nfp-profile-row,.vvg-row,.nfk-product-row,.nfk-compact-item,.nfk-function-box,.nfp-card,.vvg-legal-block){width:100%;min-width:0;margin:0 !important;padding:var(--nfd-list-padding,10px) !important;border:0 !important;border-radius:var(--nfd-panel-radius,4px) !important;background:var(--nfd-heading-background,#E9F0FC) !important;box-shadow:none !important}
.nfd-surface .nfp-profile-row h1,.nfd-surface .vvg-row h1,.nfd-surface .vvg-row h2,.nfd-surface .nfk-product-name{margin:0 0 7px !important;font-size:var(--nfd-heading-size,18px) !important;font-weight:var(--nfd-label-weight,600) !important;line-height:1.35 !important}
.nfd-surface :is(.nfp-profile-actions,.vvg-actions,.nfk-product-actions){display:flex;flex-wrap:wrap;align-items:center;gap:var(--nfd-action-gap,25px)}
.nfd-surface :is(.nfp-profile-actions,.vvg-actions)>span{opacity:.55}
.nfd-surface :is(.nfp-head,.nfp-manage-head,.vvg-head){display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:0 0 var(--nfd-intro-bottom,20px) !important}
.nfd-surface :is(.nfp-create-wrap,.vvg-create-wrap){margin-left:auto;flex:0 1 auto}
.nfd-surface :is(.nfp-guest-login-text,.vvg-guest-login-text){max-width:none}
.nfd-surface :is(.nfp-readonly,.nfp-readonly-value,.vvg-readonly){white-space:pre-wrap;overflow-wrap:anywhere}
.nfd-surface :is(.nfp-inline-messages,.nfk-inline-messages){margin:0 0 var(--nfd-intro-bottom,20px) !important}
.nfd-surface .alert{border-radius:var(--nfd-panel-radius,4px) !important;padding:12px 16px !important;margin:0 0 var(--nfd-intro-bottom,20px) !important;box-shadow:none !important}
.nfd-surface .alert-warning{color:#594500 !important;background:#fff5ce !important;border:1px solid #e4cf7b !important}
.nfd-surface .alert-danger{color:#842029 !important;background:#f8d7da !important;border:1px solid #f1aeb5 !important}
.nfd-surface .alert-success{color:#0f5132 !important;background:#d1e7dd !important;border:1px solid #a3cfbb !important}
.nfd-surface .alert-info{color:var(--nfd-primary-color,#1C5AA6) !important;background:var(--nfd-heading-background,#E9F0FC) !important;border:0 !important}
.nfd-surface :is(.nfd-component-version,.nfp-component-version,.nfp-admin-version-footer-row,.nfk-component-version,.vvg-component-version){display:flex;justify-content:center;align-items:center;clear:both;width:100%;margin:32px 0 12px !important;padding:0 !important;color:#6c757d !important;font-size:12px !important;line-height:1.4 !important;text-align:center}
.nfd-surface :is(.nfk-admin-form,.vvg-admin-panel,.nfk-box,.nfk-textadmin-block){margin:0 0 20px !important;padding:16px !important;border:1px solid var(--nfd-border-color,#C9D3E1) !important;border-radius:var(--nfd-panel-radius,4px) !important;background:var(--nfd-surface-background,#fff) !important;box-shadow:none !important}
.nfd-surface :is(.nfk-dashboard-link,.vvg-dashboard-link,.nfp-dashboard-compact-link,.nfp-dashboard-card,.vvg-dashboard-card,.nfk-stat){display:flex;align-items:flex-start;gap:12px;min-height:90px;height:100%;margin:0 !important;padding:16px !important;border:1px solid var(--nfd-border-color,#C9D3E1) !important;border-radius:var(--nfd-panel-radius,4px) !important;background:var(--nfd-surface-background,#fff) !important;color:inherit !important;text-decoration:none;box-shadow:none !important}
.nfd-surface .table{width:100%;margin:0 0 20px !important;border-collapse:collapse;font:inherit}
.nfd-surface .table :is(th,td){padding:10px 12px !important;vertical-align:top;border-bottom:1px solid var(--nfd-border-color,#C9D3E1) !important}
.nfd-surface .table thead th{background:var(--nfd-heading-background,#E9F0FC) !important;color:var(--nfd-heading-color,#111) !important;font-weight:var(--nfd-label-weight,600) !important}
.nfd-surface .table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-bg-type:var(--nfd-field-alt-background,#E9F0FC)}
@media(max-width:767.98px){.nfd-surface[data-nfd-root]{--nfd-heading-left:var(--nfd-mobile-padding,15px);--nfd-heading-right:var(--nfd-mobile-padding,15px);--nfd-content-left:var(--nfd-mobile-padding,15px);--nfd-content-right:var(--nfd-mobile-padding,15px)}.nfd-surface :is(.nfp-form-actions,.nfp-detail-actions,.nfp-dialog-actions,.vvg-form-actions,.vvg-detail-actions,.nfk-actions,.nfk-action-row,.nfk-inline-actions,.nfp-actions,.vvg-actions,.nfk-card-download-actions,.nfk-card-action-buttons,.nfp-change-batch-actions,.nfd-actions){gap:var(--nfd-mobile-action-gap,10px)!important;align-items:stretch;flex-direction:column}.nfd-surface :is(.nfp-form-actions,.nfp-detail-actions,.nfp-dialog-actions,.vvg-form-actions,.vvg-detail-actions,.nfk-actions,.nfk-action-row,.nfk-inline-actions,.nfp-actions,.vvg-actions,.nfk-card-download-actions,.nfk-card-action-buttons,.nfp-change-batch-actions,.nfd-actions)>form{width:100%}.nfd-surface :is(.nfp-form-actions,.nfp-detail-actions,.nfp-dialog-actions,.vvg-form-actions,.vvg-detail-actions,.nfk-actions,.nfk-action-row,.nfk-inline-actions,.nfp-actions,.vvg-actions,.nfk-card-download-actions,.nfk-card-action-buttons,.nfp-change-batch-actions,.nfd-actions) .btn{width:100%}.nfd-surface :is(.nfp-create-wrap,.vvg-create-wrap){margin-left:0}}

/* Older templates may still include a strong element in a shared section heading. */
.nfd-surface .nfk-card-variant-title>strong{font:inherit!important;color:inherit!important}

/* Profile creation action: right aligned with 20px space below. */
.nfd-surface .nfp-create-wrap{display:flex!important;justify-content:flex-end!important;width:100%!important;margin:0 0 20px!important;padding:0!important}
.nfd-surface .nfp-create-profile{margin-left:auto!important}

/* Profile introduction ends 20px before the first accordion heading. */
.nfd-surface .nfp-customer-text{margin-bottom:20px!important}

.nfd-surface .nfp-profile-view-intro{margin-bottom:20px!important}

.nfd-surface .nfp-profile-view-title .nfp-profile-view-prefix{font-size:inherit!important;font-weight:400!important}
.nfd-surface .nfp-profile-view-title .nfp-profile-view-name{font-size:inherit!important;font-weight:inherit!important}
/* Buttons stay geometrically identical in every interaction state. */
.nfd-surface .btn,
.nfd-surface .btn:is(:hover,:focus,:focus-visible,:active){
  transform:none!important;translate:none!important;scale:none!important;rotate:none!important;
  animation:none!important;transition:none!important;
  position:relative!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;
  margin:0!important;
  padding:var(--nfd-button-top,10px) var(--nfd-button-right,18px) var(--nfd-button-bottom,10px) var(--nfd-button-left,18px)!important;
  border-width:1px!important;border-style:solid!important;
  min-height:var(--nfd-control-height,42px)!important;
  line-height:1.2!important;
  box-shadow:none!important;
}
.nfd-surface .btn::before,.nfd-surface .btn::after,
.nfd-surface .btn:is(:hover,:focus,:focus-visible,:active)::before,
.nfd-surface .btn:is(:hover,:focus,:focus-visible,:active)::after{
  transform:none!important;translate:none!important;scale:none!important;rotate:none!important;
  animation:none!important;transition:none!important;
}


/* Helix Ultimate desktop header: keep the complete main menu, including the
   styled Einloggen item, on one single row. Mobile/offcanvas remains unchanged. */
@media (min-width: 992px) {
  #sp-header .sp-megamenu-parent {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    white-space: nowrap !important;
  }
  #sp-header .sp-megamenu-parent > li {
    flex: 0 0 auto !important;
    width: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  #sp-header .sp-megamenu-parent > li > a,
  #sp-header .sp-megamenu-parent > li > span {
    width: auto !important;
    white-space: nowrap !important;
  }
}

/* Login component layout. Visual values come from the shared Notfell design variables. */
.nfd-surface .login-anmeldung-page{width:100%;max-width:none;min-width:0;margin:0!important;padding:0!important}
.nfd-surface .login-anmeldung-title{margin:0 0 10px!important;padding:0!important}
.nfd-surface .login-anmeldung-intro{margin:0 0 var(--nfd-intro-bottom,20px)!important;padding:0!important}
.nfd-surface .login-anmeldung-panel{width:100%;min-width:0;margin:0!important;padding:var(--nfd-content-top,16px) var(--nfd-content-right,22px) var(--nfd-content-bottom,16px) var(--nfd-content-left,22px)!important;border:1px solid var(--nfd-border-color,#C9D3E1)!important;border-radius:var(--nfd-panel-radius,4px)!important;background:var(--nfd-function-background,#F3F8FE)!important;box-shadow:none!important}
.nfd-surface .login-anmeldung-fields{display:flex;flex-direction:column;width:100%;min-width:0;gap:var(--nfd-field-gap,6px);margin:0!important;padding:0!important}
.nfd-surface .login-anmeldung-field{width:100%;min-width:0;margin:0!important;padding:0!important}
.nfd-surface .login-anmeldung-field .form-control{background:var(--nfd-surface-background,#fff)!important}
.nfd-surface .login-anmeldung-actions{width:100%;flex-direction:column!important;align-items:stretch!important;gap:var(--nfd-mobile-action-gap,10px)!important;margin:var(--nfd-action-top,20px) 0 0!important}
.nfd-surface .login-anmeldung-actions .btn{width:100%;justify-content:center!important}
.nfd-surface .login-anmeldung-loggedin>p{margin:0 0 var(--nfd-intro-bottom,20px)!important}
@media(max-width:767.98px){.nfd-surface .login-anmeldung-page{max-width:none}.nfd-surface .login-anmeldung-panel{padding:var(--nfd-mobile-padding,15px)!important}}
/* Notfallkarten frontend: all normal action buttons use the shared yellow palette.
   Danger/remove and pure link buttons intentionally retain their semantic styling. */
.nfd-surface[data-nfd-client="site"][data-nfd-option="com_notfallkarten"] .btn:not(.btn-danger):not(.btn-outline-danger):not(.btn-link){
  background:var(--nfd-yellow-button-background,#D8AB00)!important;
  border-color:var(--nfd-yellow-button-border-color,#B8C9DF)!important;
  color:var(--nfd-yellow-button-color,#FFFFFF)!important;
  background-image:none!important;
}
.nfd-surface[data-nfd-client="site"][data-nfd-option="com_notfallkarten"] .btn:not(.btn-danger):not(.btn-outline-danger):not(.btn-link):is(:hover,:focus,:focus-visible,:active){
  background:var(--nfd-yellow-button-hover-background,#D8AB00)!important;
  border-color:var(--nfd-yellow-button-border-color,#B8C9DF)!important;
  color:var(--nfd-yellow-button-hover-color,#FFFFFF)!important;
  background-image:none!important;
}


/* Generic component structures: kept centrally in the Notfell design plugin. */
.nfd-surface .nfd-intro{margin:0 0 var(--nfd-intro-bottom,20px)!important;padding:0!important}
.nfd-surface .nfd-panel{width:100%;min-width:0;margin:0 0 20px!important;padding:16px!important;border:1px solid var(--nfd-border-color,#C9D3E1)!important;border-radius:var(--nfd-panel-radius,4px)!important;background:var(--nfd-surface-background,#fff)!important;box-shadow:none!important}
.nfd-surface .nfd-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--nfd-field-gap,6px);width:100%;min-width:0;margin:0!important;padding:0!important}
.nfd-surface .nfd-field{width:100%;min-width:0;margin:0!important;padding:var(--nfd-field-top,6px) var(--nfd-field-right,10px) var(--nfd-field-bottom,6px) var(--nfd-field-left,10px)!important;border:0!important;background:var(--nfd-surface-background,#fff)!important}
.nfd-surface .nfd-field:nth-child(even){background:var(--nfd-field-alt-background,#E9F0FC)!important}
.nfd-surface .nfd-field>label{display:block;margin:0 0 var(--nfd-label-gap,3px)!important;padding:0!important;font:inherit;font-weight:var(--nfd-label-weight,600)!important;line-height:inherit!important}
.nfd-surface .nfd-list{display:flex;flex-direction:column;gap:var(--nfd-list-gap,10px);width:100%;margin:0!important;padding:0!important}
.nfd-surface .nfd-list-item{width:100%;min-width:0;margin:0!important;padding:var(--nfd-list-padding,10px)!important;border:0!important;border-radius:var(--nfd-panel-radius,4px)!important;background:var(--nfd-heading-background,#E9F0FC)!important;box-shadow:none!important}
.nfd-surface .nfd-letter-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:25px;align-items:start}
.nfd-surface .nfd-logo-preview{display:block;width:auto;max-width:300px;height:auto;max-height:110px;margin:10px 0!important;object-fit:contain}
.nfd-surface .nfd-document-body{white-space:normal;overflow-wrap:anywhere}
.nfd-surface .nfd-document-body p{white-space:pre-wrap;text-align:justify}
@media(max-width:767.98px){.nfd-surface .nfd-form-grid,.nfd-surface .nfd-letter-meta{grid-template-columns:minmax(0,1fr)}}

/* Central accordion list width and compact action separators, 1.0.39 */
.nfd-surface .nfp-manage-page,.nfd-surface .nfp-manage-page .nfp-accordion-list,.nfd-surface .nfp-manage-page .nfp-accordion-item,.nfd-surface .nfp-manage-page .nfp-accordion-summary,.nfd-surface .nfp-manage-page .nfp-accordion-content{width:100% !important;max-width:none !important;box-sizing:border-box}
.nfd-surface .nfp-profile-actions{display:flex !important;flex-wrap:wrap !important;align-items:center !important;justify-content:flex-start !important;column-gap:8px !important;row-gap:6px !important}
.nfd-surface .nfp-profile-actions .nfp-action-separator{margin:0 !important;padding:0 !important;opacity:.65}
.nfd-surface .nfp-profile-actions .nfp-action-link{margin:0 !important}

/* Einheitlicher vertikaler Abstand fuer den Button "Weiteren Termin hinzufuegen" */
.nfd-surface button.nfp-add-appointment[data-nfp-add-appointment], button.nfp-add-appointment[data-nfp-add-appointment]{display:block!important;margin-top:20px!important;margin-bottom:20px!important;margin-left:0!important;margin-right:0!important;}

/* 1.0.50: 10px vertikale Feldabstaende in Termine & Erinnerungen.
   Unabhaengig davon, ob der Elterncontainer .nfd-surface hat. */
.nfp-appointments-page .nfp-appointment-entry > .nfp-date-extra:not([hidden]) { display:block; margin-top:10px!important; }
.nfp-appointments-page .nfp-appointment-entry .nfp-date-extra > .nfp-field { margin-bottom:10px!important; }
.nfp-appointments-page .nfp-appointment-entry .nfp-reminder-box { margin-top:10px!important; margin-bottom:10px!important; }
.nfp-appointments-page .nfp-appointment-entry .nfp-reminder-toggle { display:block!important; margin:0 0 10px 0!important; }
.nfp-appointments-page .nfp-appointment-entry .nfp-reminder-days { margin:0 0 10px 0!important; }
.nfp-appointments-page .nfp-appointment-entry .nfp-remove-appointment { display:inline-block!important; margin-top:10px!important; }



/* 1.0.55: gemeinsame Abstandsvorgaben fuer die Terminverwaltung. */
/* 1.0.56: Terminabstaende greifen auch ohne .nfd-surface und ohne kollabierende Margins. */
.nfp-appointments-page .nfp-next-add-wrap{margin:0!important;padding:5px 0 10px!important;min-height:0!important}
.nfp-appointments-page .nfp-next-add-wrap + [data-nfp-appointment-list]{margin-top:0!important}
.nfp-appointments-page .nfp-reminder-recipient{display:block!important;margin:0!important;padding:20px 0 0!important}

/* Uebernommene Kartendashboard- und Konto-Ansichtsregeln */
.nfk-orders-page .nfk-profile-fields{display:grid!important;grid-template-columns:minmax(0,1fr)!important;row-gap:5px!important;width:100%!important;margin:0!important;padding:0!important}.nfk-orders-page .nfk-profile-field{display:block!important;width:100%!important;min-width:0!important;margin:0!important;padding:6px 10px!important;background:#fff!important;background-color:#fff!important;border:0!important;border-radius:0!important;box-shadow:none!important}.nfk-orders-page .nfk-profile-field:nth-child(even){background:#E9F0FC!important;background-color:#E9F0FC!important}.nfk-orders-page .nfk-profile-field:nth-child(odd){background:#fff!important;background-color:#fff!important}.nfk-orders-page .nfk-more-functions-section .nfk-functions-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;margin:0!important;padding:0!important}.nfk-orders-page .nfk-more-functions-section .nfk-functions-grid>.nfk-function-box{box-sizing:border-box!important;display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:15px 16px!important;background:#F3F8FE!important;background-color:#F3F8FE!important;border:0!important;border-radius:6px!important;box-shadow:none!important}.nfk-orders-page .nfk-upgrade-actions{display:inline-grid!important;grid-auto-rows:auto!important;align-items:start!important;justify-items:stretch!important;gap:10px!important;width:auto!important;max-width:100%!important;margin:0!important;margin-top:10px!important;margin-bottom:auto!important;padding-top:0!important}.nfk-orders-page .nfk-upgrade-actions>.btn{display:flex!important;align-items:center!important;justify-content:flex-start!important;width:auto!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;margin:0!important;text-align:left!important;white-space:nowrap!important}.nfk-orders-page .nfk-refer-actions{margin:0!important;margin-top:10px!important;margin-bottom:auto!important;padding-top:0!important}.nfk-orders-page .nfk-refer-actions>.btn{align-self:flex-start!important}.nfk-orders-page .nfk-profile-save-row{margin-top:12px!important}.nfk-orders-page .nfk-more-functions-section .nfk-function-box>strong{display:block!important;margin:0 0 8px 0!important}.nfk-orders-page .nfk-more-functions-section .nfk-function-description{margin:0!important;min-height:5.8em!important}.nfk-orders-page .nfk-upgrade-actions,.nfk-orders-page .nfk-refer-actions{margin-top:10px!important;margin-bottom:auto!important;padding-top:0!important}.nfk-orders-page .nfk-refer-actions{width:100%!important}.nfk-orders-page .nfk-refer-actions>.btn{display:flex!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;text-align:left!important}@media(max-width:700px){.nfk-orders-page .nfk-more-functions-section .nfk-functions-grid{grid-template-columns:1fr!important}}
/* NFK_DASHBOARD_CSS_RUNTIME_102220
 * Joomla 6 / Atum-safe dashboard. The tile layout intentionally does not use
 * Joomla's .card class, so Atum card arrows and oversized card headings cannot leak in.
 */
.nfk-dashboard-joomla6{width:100%;max-width:1400px;font-size:14px}
.nfk-dashboard-joomla6 .nfk-dashboard-bootstrap-grid{display:flex;flex-wrap:wrap;margin-right:-.25rem;margin-left:-.25rem}
.nfk-dashboard-joomla6 .nfk-dashboard-bootstrap-grid>.col{flex:0 0 auto;width:50%;padding-right:.25rem;padding-left:.25rem;margin-bottom:.5rem}
.nfk-dashboard-joomla6 .nfk-dashboard-link{min-height:66px;color:inherit!important;box-shadow:none!important;position:relative}
.nfk-dashboard-joomla6 .nfk-dashboard-link::before,.nfk-dashboard-joomla6 .nfk-dashboard-link::after{content:none!important;display:none!important}
.nfk-dashboard-joomla6 .nfk-dashboard-link:hover,.nfk-dashboard-joomla6 .nfk-dashboard-link:focus-visible{border-color:var(--template-link-color,#2a69b8)!important;text-decoration:none!important;box-shadow:0 1px 4px rgba(0,0,0,.08)!important}
.nfk-dashboard-joomla6 .nfk-dashboard-link strong{font-size:15px!important;line-height:1.25!important;font-weight:600!important}
.nfk-dashboard-joomla6 .nfk-dashboard-link .small{font-size:13px!important;line-height:1.3!important}
.nfk-dashboard-joomla6 .nfk-dashboard-icon{width:30px;height:30px;font-size:15px!important}
.nfk-dashboard-joomla6 .fw-semibold.fs-6{font-size:16px!important;line-height:1.3!important}
.nfk-dashboard-joomla6 .nfk-dashboard-status{font-size:14px!important;line-height:1.4!important}
.nfk-dashboard-joomla6 .nfk-dashboard-section-desc{font-size:14px!important;line-height:1.4!important}
.nfk-dashboard-joomla6 .nfk-simple-table,.nfk-dashboard-joomla6 .nfk-simple-table th,.nfk-dashboard-joomla6 .nfk-simple-table td{font-size:14px!important}
@media(max-width:575.98px){.nfk-dashboard-joomla6 .nfk-dashboard-bootstrap-grid>.col{width:100%}}


/* Cookie-Einwilligungsdialog: zentral statt Inline-Style. */
html:has(.cookie-richtlinie-root[data-server-should-ask="1"]),
html:has(.cookie-richtlinie-root[data-server-should-ask="1"]) body {overflow:hidden!important;height:100%!important;}

/* Webinar progress bar. Percentage is read from aria-valuenow by central JS. */
.nfd-surface .webinar-progressbar > span { width:var(--nfd-webinar-progress,0%); }


/* Tierprofil-Uebertragung: Gestaltung ausschliesslich im zentralen Design-Plugin. */
.nfd-surface .nfp-transferhub-intro{margin:0 0 var(--nfd-intro-bottom,20px)!important;padding:0!important}
.nfd-surface .nfp-transferhub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--nfd-list-gap,20px);width:100%}
.nfd-surface .nfp-transferhub-card{display:flex;flex-direction:column;gap:var(--nfd-list-gap,10px);min-width:0;padding:var(--nfd-content-top,16px) var(--nfd-content-right,22px) var(--nfd-content-bottom,16px) var(--nfd-content-left,22px);border:1px solid var(--nfd-button-border-color,#B8C9DF);border-radius:var(--nfd-panel-radius,4px);background:var(--nfd-surface-background,#fff)}
.nfd-surface .nfp-transferhub-card h2,.nfd-surface .nfp-transferhub-card p{margin:0!important}
.nfd-surface .nfp-transferhub-card .btn{margin-top:auto!important;align-self:flex-start}
@media(max-width:767.98px){.nfd-surface .nfp-transferhub-grid{grid-template-columns:1fr}}

/* Transferueberschriften: Gestaltung nur ueber das zentrale Plugin. */
.nfd-surface .nfp-transferhub-card > h2,
.nfd-surface .nfp-transfer-code-form > h2 {font-weight:700!important;}
