/* Frankys Partnerbereich – compact modern UI, scoped to plugin */
.ffp-wrap{max-width:1080px!important;font-size:14px;line-height:1.5}
.ffp-wrap .ffp-heading{margin-bottom:18px}.ffp-wrap .ffp-heading h2{font-size:clamp(25px,3vw,35px);letter-spacing:-.025em}
.ffp-wrap .ffp-directory{margin:20px 0 38px}.ffp-wrap .ffp-cards{gap:14px}
.ffp-wrap .ffp-card{border-radius:15px;box-shadow:0 4px 18px rgba(0,0,0,.055);transition:box-shadow .2s,transform .2s}
.ffp-wrap .ffp-card:hover{box-shadow:0 10px 26px rgba(0,0,0,.10);transform:translateY(-2px)}
.ffp-wrap .ffp-logo{height:116px!important;padding:12px!important;background:#111111!important;border-bottom:1px solid #111111}
.ffp-wrap .ffp-logo img{max-width:145px!important;max-height:82px!important}
.ffp-wrap .ffp-card-body{padding:15px!important}.ffp-wrap .ffp-card h3{font-size:18px;line-height:1.3;margin:4px 0 6px}
.ffp-wrap .ffp-description{font-size:13px;line-height:1.5}.ffp-wrap .ffp-contact{gap:5px;margin-top:10px;padding-top:10px}
.ffp-wrap .ffp-contact a{font-size:13px}.ffp-wrap .ffp-links{margin-top:12px}
.ffp-wrap .ffp-links a,.ffp-wrap .ffp-filters button,.ffp-wrap .ffp-open-form,.ffp-wrap .ffp-form button,.ffp-portal button,.ffp-portal input[type=submit]{display:inline-flex;justify-content:center;align-items:center;gap:7px;border-radius:11px!important;font-weight:750!important;transition:background .2s,box-shadow .2s,transform .2s}
.ffp-wrap .ffp-links a{background:#191923;padding:9px 13px!important;color:white!important}
.ffp-wrap .ffp-links a:hover{background:#c92170;transform:translateY(-1px)}
.ffp-wrap .ffp-filters{gap:7px}.ffp-wrap .ffp-filters button{padding:8px 13px!important;font-size:13px}
.ffp-wrap .ffp-open-form{padding:10px 15px!important}.ffp-wrap .ffp-top-join{margin-bottom:20px}
.ffp-wrap .ffp-join{margin-top:32px}.ffp-wrap .ffp-form-toggle,.ffp-wrap .ffp-form-toggle>summary{border-radius:16px!important}
.ffp-wrap .ffp-form-toggle>summary{padding:16px 20px!important}.ffp-wrap .ffp-form-toggle>summary span strong{font-size:18px}
.ffp-wrap .ffp-form-section{padding:clamp(18px,3vw,30px)!important}.ffp-wrap .ffp-grid{gap:12px!important}
.ffp-wrap .ffp-form h3{margin:18px 0 10px}.ffp-wrap .ffp-form input:not([type=checkbox]),.ffp-wrap .ffp-form select,.ffp-wrap .ffp-form textarea{padding:10px 12px!important;border-radius:9px!important}
.ffp-wrap .ffp-form textarea{min-height:100px}.ffp-wrap .ffp-form button{padding:12px 18px!important}
.ffp-portal{margin:18px 0!important}.ffp-portal .ffp-login,.ffp-portal .ffp-portal-inner{padding:17px!important;border-radius:14px!important;box-shadow:0 3px 16px #0000000b!important}
.ffp-portal .ffp-portal-inner h2{font-size:23px;margin:0 0 8px}.ffp-portal .ffp-portal-form{gap:11px!important}
.ffp-portal .ffp-portal-form input,.ffp-portal .ffp-portal-form textarea{padding:10px 12px!important;border-radius:9px!important}
.ffp-portal .ffp-portal-form textarea{min-height:85px!important}
.ffp-portal button,.ffp-portal input[type=submit]{padding:11px 17px!important;background:#d72a7b!important;color:#fff!important;border:0!important;cursor:pointer}
.ffp-portal button:hover,.ffp-portal input[type=submit]:hover{background:#aa195b!important}
.ffp-portal .ffp-ref-dashboard{padding:16px!important;margin:14px 0!important;background:#faf8fb!important;border:1px solid #eee5ed;border-radius:14px!important}
.ffp-portal .ffp-ref-dashboard h3{margin:0 0 9px;font-size:18px}.ffp-portal .ffp-ref-dashboard p{line-height:1.7}
.ffp-portal input[readonly]{border:1px solid #ded7df;border-radius:9px;padding:10px!important}
@media(max-width:650px){.ffp-wrap .ffp-cards{gap:12px}.ffp-wrap .ffp-logo{height:105px!important}.ffp-wrap .ffp-card-body{padding:13px!important}.ffp-wrap .ffp-filters{padding-bottom:10px}.ffp-wrap .ffp-open-form{flex-wrap:wrap}.ffp-portal .ffp-portal-inner{padding:14px!important}}
@media(prefers-reduced-motion:reduce){.ffp-wrap .ffp-card,.ffp-wrap .ffp-links a{transition:none;transform:none!important}}

/* 1.4.3: authenticated partner dashboard only */
.ffp-member{padding:0!important;overflow:hidden;box-shadow:0 8px 30px #15152512!important}
.ffp-member-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px 18px;background:linear-gradient(120deg,#181824,#343045);color:#fff}
.ffp-member-head h2{font-size:clamp(21px,3vw,29px)!important;margin:4px 0!important;color:#fff!important}.ffp-member-head p{margin:0;color:#e8e4ed}.ffp-eyebrow{font-size:10px;font-weight:800;letter-spacing:1.6px;color:#ff91be}.ffp-status{white-space:nowrap;font-size:12px;font-weight:800;padding:7px 12px;border-radius:99px;background:#ffffff22;color:#fff}
.ffp-member-tabs{display:flex;gap:8px;padding:12px 22px;border-bottom:1px solid #eceaf0;background:#fff;flex-wrap:wrap}
.ffp-member .ffp-tab{appearance:none;border:1px solid #e8e4eb;background:#f8f7fa;color:#37303d;border-radius:10px;padding:10px 16px;min-height:42px;font-weight:750;cursor:pointer;line-height:1.3}.ffp-member .ffp-tab.is-active{background:#e82c7c;color:#fff;border-color:#e82c7c}
.ffp-member .ffp-tab-panel{padding:20px 24px 24px}.ffp-member [hidden]{display:none!important}
.ffp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ffp-stat{background:#faf9fc;border:1px solid #ebe8ee;border-radius:13px;padding:14px;display:flex;flex-direction:column;gap:5px;min-width:0}.ffp-stat span{font-size:20px}.ffp-stat strong{font-size:clamp(23px,3vw,30px);color:#22202b;line-height:1.1}.ffp-stat small{color:#68616e;font-size:12px;font-weight:700}
.ffp-link-card{border:1px solid #eae7ed;border-radius:14px;padding:18px;margin-top:14px}.ffp-link-card h3{margin:0 0 4px!important;font-size:17px!important}.ffp-link-card p{margin:0 0 14px;color:#696371;font-size:13px}.ffp-link-row{display:flex;gap:8px;flex-wrap:wrap}.ffp-link-row input{flex:1 1 220px;min-width:0;border:1px solid #d9d4df;border-radius:9px;padding:10px;background:#fafafa;font-size:13px}.ffp-link-row button,.ffp-link-row a{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:9px;padding:10px 13px;min-height:42px;font-size:13px;font-weight:800;text-decoration:none!important;cursor:pointer}.ffp-copy-link{background:#e82c7c!important;color:white!important}.ffp-whatsapp{background:#e8f8ee;color:#126e3b!important}.ffp-copy-message{font-size:12px;color:#168044}.ffp-disclaimer{font-size:12px;color:#77717b;margin:12px 2px 0}.ffp-profile-intro{font-size:13px;color:#777;margin:0 0 15px}.ffp-member .ffp-portal-form{gap:12px}.ffp-member .ffp-portal-form label{font-size:12px;color:#514b58}.ffp-member .ffp-portal-form input,.ffp-member .ffp-portal-form textarea{padding:10px 12px;border-radius:9px;margin-top:5px;font-size:14px}.ffp-member .ffp-portal-form button{border-radius:10px;padding:12px 20px;min-height:44px}.ffp-member-footer{margin:0;padding:0 24px 20px;text-align:right;font-size:13px}
@media(max-width:700px){.ffp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ffp-member-head{padding:18px;align-items:flex-start;flex-direction:column}.ffp-member-tabs{padding:10px 14px}.ffp-member .ffp-tab-panel{padding:16px}.ffp-member .ffp-portal-form{grid-template-columns:1fr}.ffp-link-row button,.ffp-link-row a{flex:1 1 auto}}

/* 1.4.4 – compact authenticated profile editor */
.ffp-member .ffp-profile-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:17px}
.ffp-member .ffp-profile-heading h3{margin:3px 0 4px;font-size:21px;letter-spacing:-.025em;color:#211d29}
.ffp-member .ffp-profile-heading p{margin:0;color:#716b78;font-size:13px}
.ffp-member .ffp-profile-kicker{font-size:10px;font-weight:850;letter-spacing:1.3px;color:#c72b75}
.ffp-member .ffp-profile-badge{flex-shrink:0;border-radius:30px;background:#f4f2f6;color:#5d5362;font-size:11px;font-weight:750;padding:7px 11px}
.ffp-member .ffp-portal-form{display:block!important}
.ffp-member .ffp-profile-group{min-width:0;border:1px solid #ece8ef;background:#fff;border-radius:14px;padding:13px 15px 15px;margin:0 0 13px;box-shadow:0 2px 8px #1b102008}
.ffp-member .ffp-profile-group legend{padding:0 8px;color:#28212e;font-size:14px;font-weight:850}
.ffp-member .ffp-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 14px}
.ffp-member .ffp-profile-field{display:block;min-width:0;font-size:12px;font-weight:750;color:#504956}
.ffp-member .ffp-profile-field span{display:block;margin-bottom:5px}
.ffp-member .ffp-profile-field em{color:#d52979;font-style:normal}
.ffp-member .ffp-profile-field.ffp-field-wide{grid-column:1/-1}
.ffp-member .ffp-profile-field input,.ffp-member .ffp-profile-field textarea{width:100%;max-width:none;min-width:0;margin:0!important;border:1px solid #ddd7e0!important;border-radius:9px!important;background:#fcfbfd!important;padding:9px 11px!important;font-size:14px!important;line-height:1.45;box-sizing:border-box;box-shadow:none!important}
.ffp-member .ffp-profile-field textarea{min-height:84px!important;resize:vertical}
.ffp-member .ffp-profile-field input:focus,.ffp-member .ffp-profile-field textarea:focus{border-color:#d72a7b!important;outline:2px solid #d72a7b22;outline-offset:0}
.ffp-member .ffp-logo-upload{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;font-weight:800;color:#413b47}
.ffp-member .ffp-logo-upload small{display:block;font-weight:500;font-size:11px;color:#77717b;margin-top:3px}
.ffp-member .ffp-logo-upload input{width:auto;max-width:100%;margin:0!important;padding:7px!important;border-radius:9px}
.ffp-member .ffp-profile-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:7px 0 0}
.ffp-member .ffp-profile-actions>span{font-size:12px;color:#77717b}
.ffp-member .ffp-profile-actions .ffp-save-profile{width:auto;max-width:100%;min-height:44px;padding:11px 19px!important;border:0!important;border-radius:11px!important;background:#d72a7b!important;color:#fff!important;font-weight:800!important;box-shadow:0 3px 10px #d72a7b22;cursor:pointer}
.ffp-member .ffp-profile-actions .ffp-save-profile:hover{background:#ad1c60!important;transform:translateY(-1px)}
@media(max-width:600px){.ffp-member .ffp-profile-grid{grid-template-columns:1fr}.ffp-member .ffp-profile-heading{align-items:flex-start}.ffp-member .ffp-profile-badge{display:none}.ffp-member .ffp-profile-group{padding:11px 12px 13px}.ffp-member .ffp-profile-actions .ffp-save-profile{width:100%}}

/* Partner account username */
.ffp-portal .ffp-username-box{border:1px solid #e7e7eb;border-radius:14px;padding:16px 18px;margin:16px 0;background:#fafafb}.ffp-portal .ffp-username-box legend{font-weight:800;padding:0 7px}.ffp-portal .ffp-username-form label{display:block;font-weight:700;margin-bottom:7px}.ffp-portal .ffp-username-row{display:flex;gap:10px;align-items:center}.ffp-portal .ffp-username-row input{flex:1;min-width:0;padding:11px 12px;border:1px solid #ccc;border-radius:10px}.ffp-portal .ffp-username-row button{background:#e72c82;color:#fff;border:0;border-radius:10px;padding:12px 18px;font-weight:800;cursor:pointer}.ffp-portal .ffp-username-form small{display:block;margin-top:8px;color:#666}@media(max-width:600px){.ffp-portal .ffp-username-row{flex-direction:column;align-items:stretch}}

/* App contrast repair: scoped to the embedded partner portal only. */
.frankys-app-partner .ffp-member .ffp-stat{background:#fff!important;border:1px solid #d9dce4!important;color:#171923!important}
.frankys-app-partner .ffp-member .ffp-stat strong{color:#151821!important;opacity:1!important}
.frankys-app-partner .ffp-member .ffp-stat small{color:#303543!important;opacity:1!important}
.frankys-app-partner .ffp-member .ffp-link-card{background:#fff!important;color:#171923!important}
.frankys-app-partner .ffp-member .ffp-link-card h3{color:#171923!important;opacity:1!important}
.frankys-app-partner .ffp-member .ffp-link-card p{color:#303543!important;opacity:1!important}
.frankys-app-partner .ffp-member .ffp-link-row input{background:#fff!important;color:#151821!important;border:1px solid #8c919c!important;min-width:0!important;width:100%!important}
.frankys-app-partner .ffp-member .ffp-link-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
.frankys-app-partner .ffp-member .ffp-link-row button,.frankys-app-partner .ffp-member .ffp-link-row a{width:100%!important;box-sizing:border-box!important;min-width:0!important}
.frankys-app-partner .ffp-member .ffp-disclaimer{color:#303543!important;opacity:1!important}
.frankys-app-partner .ffp-member .ffp-ref-dashboard{background:#fff!important;color:#171923!important}
.frankys-app-partner .ffp-member .ffp-ref-dashboard h3,.frankys-app-partner .ffp-member .ffp-ref-dashboard p{color:#171923!important}

/* 1.5.11 – high-contrast app panels: customer enquiry and profile editor. */
.frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="request"],
.frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="profile"]{background:#fff!important;color:#171923!important}
.frankys-app-partner .ffp-member .ffp-request-intro,
.frankys-app-partner .ffp-member .ffp-profile-heading,
.frankys-app-partner .ffp-member .ffp-profile-group,
.frankys-app-partner .ffp-member .ffp-username-box{background:#fff!important;color:#171923!important}
.frankys-app-partner .ffp-member .ffp-request-intro h3,
.frankys-app-partner .ffp-member .ffp-profile-heading h3,
.frankys-app-partner .ffp-member .ffp-profile-group legend,
.frankys-app-partner .ffp-member .ffp-username-box legend{color:#171923!important;opacity:1!important}
.frankys-app-partner .ffp-member .ffp-request-intro p,
.frankys-app-partner .ffp-member .ffp-profile-heading p,
.frankys-app-partner .ffp-member .ffp-profile-field,
.frankys-app-partner .ffp-member .ffp-profile-field span,
.frankys-app-partner .ffp-member .ffp-request-form label,
.frankys-app-partner .ffp-member .ffp-username-form label,
.frankys-app-partner .ffp-member .ffp-username-form small,
.frankys-app-partner .ffp-member .ffp-profile-actions>span,
.frankys-app-partner .ffp-member .ffp-logo-upload,
.frankys-app-partner .ffp-member .ffp-logo-upload small{color:#272b35!important;opacity:1!important}
.frankys-app-partner .ffp-member .ffp-request-form input:not([type="checkbox"]),
.frankys-app-partner .ffp-member .ffp-request-form select,
.frankys-app-partner .ffp-member .ffp-request-form textarea,
.frankys-app-partner .ffp-member .ffp-profile-field input,
.frankys-app-partner .ffp-member .ffp-profile-field select,
.frankys-app-partner .ffp-member .ffp-profile-field textarea,
.frankys-app-partner .ffp-member .ffp-username-row input{background:#fff!important;color:#171923!important;border:1px solid #a5a9b2!important;opacity:1!important;box-sizing:border-box!important;max-width:100%!important}
.frankys-app-partner .ffp-member .ffp-request-form input::placeholder,
.frankys-app-partner .ffp-member .ffp-request-form textarea::placeholder,
.frankys-app-partner .ffp-member .ffp-profile-field input::placeholder{color:#626976!important;opacity:1!important}
.frankys-app-partner .ffp-member .ffp-request-form,
.frankys-app-partner .ffp-member .ffp-profile-grid{min-width:0!important}
.frankys-app-partner .ffp-member .ffp-request-form button,
.frankys-app-partner .ffp-member .ffp-username-form button,
.frankys-app-partner .ffp-member .ffp-save-profile{background:#d72a7b!important;color:#fff!important;border-radius:12px!important;min-height:44px!important;font-weight:800!important}
@media(max-width:650px){.frankys-app-partner .ffp-member .ffp-request-form{grid-template-columns:minmax(0,1fr)!important}.frankys-app-partner .ffp-member .ffp-request-form button,.frankys-app-partner .ffp-member .ffp-save-profile{width:100%!important}}


    /* 3.9.24: partner form contrast; override the portal's dark-theme inheritance. */
    .frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="profile"],
    .frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="request"]{background:#fff!important;color:#171923!important}
    .frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="profile"] :is(h2,h3,h4,p,label,legend,small,span),
    .frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="request"] :is(h2,h3,h4,p,label,legend,small,span){color:#171923!important;opacity:1!important;text-shadow:none!important}
    .frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="profile"] :is(.ffp-profile-heading,.ffp-profile-group,.ffp-username-box),
    .frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="request"] :is(.ffp-request-intro){background:#fff!important;color:#171923!important}
    .frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="profile"] :is(input,textarea,select),
    .frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="request"] :is(input,textarea,select){background:#fff!important;color:#171923!important;-webkit-text-fill-color:#171923!important;border-color:#9ca3af!important;opacity:1!important}
    .frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="profile"] :is(input,textarea)::placeholder,
    .frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="request"] :is(input,textarea)::placeholder{color:#5c6370!important;-webkit-text-fill-color:#5c6370!important;opacity:1!important}
    .frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="profile"] :is(button,.ffp-save-profile),
    .frankys-app-partner .ffp-member .ffp-tab-panel[data-ffp-panel="request"] button{background:#e72d81!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-radius:12px!important}

/* 1.5.13 – desktop profile: contrast and card layout, scoped to profile only. */
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"]{background:#f5f5f8!important;color:#20202a!important;border-radius:0 0 15px 15px}
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-profile-heading{padding:15px 18px;background:#fff!important;border:1px solid #e5e2e9;border-radius:14px;margin:0 0 16px}
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-profile-heading h3{color:#20202a!important;opacity:1!important}
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-profile-heading p{color:#55515f!important;opacity:1!important}
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-profile-kicker{color:#bc2269!important;opacity:1!important}
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-username-box,
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-profile-group{background:#fff!important;border:1px solid #e1dce6!important;color:#20202a!important;border-radius:14px!important}
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-username-box legend,
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-profile-group legend{color:#20202a!important;background:#fff!important;border-radius:6px;padding:0 9px!important;opacity:1!important}
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-username-form label,
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-profile-field,
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-profile-field span,
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-logo-upload{color:#30303a!important;opacity:1!important}
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-username-form small,
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-profile-actions>span,
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-logo-upload small{color:#595765!important;opacity:1!important}
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] input:not([type="file"]),
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] textarea,
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] select{background:#fff!important;color:#171923!important;-webkit-text-fill-color:#171923!important;border:1px solid #bcb6c4!important;opacity:1!important}
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-profile-badge{color:#34313a!important;background:#f4f2f6!important}
.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] button{background:#d72a7b!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
@media(max-width:700px){.ffp-member .ffp-tab-panel[data-ffp-panel="profile"] .ffp-profile-heading{padding:14px}.ffp-member .ffp-tab-panel[data-ffp-panel="profile"]{padding:15px!important}}
