body.kdfy-app-mode{
    background:var(--grm-canvas,#f5f7fa) !important;
    margin:0 !important;
    padding:0 !important;
    overflow-x:hidden;
}

body.kdfy-modal-open{ overscroll-behavior:contain; }

body.kdfy-modal-open .kdp-bottom-bar{ display:none !important; }
body.kdfy-app-mode #header-outer,
body.kdfy-app-mode #header-secondary-outer,
body.kdfy-app-mode #search-outer,
body.kdfy-app-mode #ajax-content-wrap > #page-header-bg,
body.kdfy-app-mode .bg-color-stripe,
body.kdfy-app-mode #footer-outer,
body.kdfy-app-mode #footer-widgets,
body.kdfy-app-mode .breadcrumbs,
body.kdfy-app-mode .container-wrap > h1,
body.kdfy-app-mode .page-header-bg-image-wrap,
body.kdfy-app-mode .rtcl-MyAccount-navigation,
body.kdfy-app-mode .rtcl-myaccount-logo,
body.kdfy-app-mode .kd-acct-trigger{
    display:none !important;
}
body.kdfy-app-mode #ajax-content-wrap,
body.kdfy-app-mode #ajax-content-wrap > .container-wrap,
body.kdfy-app-mode .container-wrap,
body.kdfy-app-mode .container-wrap > .container,
body.kdfy-app-mode .container-wrap .container,
body.kdfy-app-mode .container-wrap .row,
body.kdfy-app-mode .container-wrap .col,
body.kdfy-app-mode .container-wrap [class*="col-md"],
body.kdfy-app-mode .container-wrap [class*="col-sm"],
body.kdfy-app-mode .rtcl-MyAccount-wrap,
body.kdfy-app-mode .rtcl-MyAccount-content,
body.kdfy-app-mode .vc_row,
body.kdfy-app-mode .wpb_wrapper{
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    max-width:100% !important;
    width:100% !important;
}

.kdfy{
    font-family:var(--grm-font-body,'Inter',Inter,sans-serif);
    max-width:560px;margin:0 auto;
    padding:0 0 100px;
    color:var(--grm-ink,#041e42);
    background:transparent;
    min-height:100dvh;
    min-height:100vh;

    width:100%;
    overflow-x:clip;
    overflow-x:hidden;
}

@media (max-width:680px){
    body.kdfy-app-mode .kdfy{
        width:100vw !important;
        max-width:100vw !important;
        margin-left:calc(50% - 50vw) !important;
        margin-right:calc(50% - 50vw) !important;
    }
}
.kdfy *{box-sizing:border-box;}
.kdfy-post-info,
.kdfy-post-cta-row > *,
.kdfy-post-actions > *{min-width:0;}

.kdfy-tb{
    position:sticky;top:0;z-index:30;
    display:flex;align-items:center;justify-content:space-between;gap:10px;
    padding:max(10px, env(safe-area-inset-top)) 14px 10px;
    background:#fff;
    border-bottom:1px solid var(--grm-canvas,#f5f7fa);
}
.kdfy-tb-brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:inherit;}
.kdfy-tb-logo{
    width:32px;height:32px;border-radius:9px;flex-shrink:0;
    background:var(--grm-rij-diep);
    display:inline-flex;align-items:center;justify-content:center;
    color:#fff;font-weight:900;font-size:15px;letter-spacing:-.5px;
    box-shadow:0 4px 10px -2px rgba(16,58,99,.45);
}
.kdfy-tb-logo img{width:22px;height:22px;display:block;}
.kdfy-tb-name{
    font-size:16px;font-weight:900;letter-spacing:-.3px;color:var(--grm-ink,#041e42);
    line-height:1;
}
.kdfy-tb-name span{
    background:var(--grm-rij-diep);
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.kdfy-tb-actions{display:flex;align-items:center;gap:6px;}
.kdfy-tb-btn{
    width:38px;height:38px;border-radius:50%;
    display:inline-flex;align-items:center;justify-content:center;
    background:var(--grm-canvas,#f5f7fa);border:0;cursor:pointer;
    color:#103A63;
    font-family:inherit;
    transition:transform .15s ease, background .15s ease;
    text-decoration:none;
    position:relative;
}
.kdfy-tb-btn:active{transform:scale(.94);}
.kdfy-tb-btn:hover{background:var(--grm-line-soft,#eaeff5);}
.kdfy-tb-btn svg{width:18px;height:18px;stroke-width:2;}
.kdfy-tb-btn img{width:100%;height:100%;border-radius:50%;object-fit:cover;}
.kdfy-tb-avatar{
    width:38px;height:38px;border-radius:50%;
    border:2px solid var(--grm-brand-100,#d3e0ef);overflow:hidden;
    background:var(--grm-rij-diep);
    display:inline-flex;align-items:center;justify-content:center;
    color:#fff;font-weight:800;font-size:14px;
    text-decoration:none;
    transition:transform .15s ease;
    flex-shrink:0;
}
.kdfy-tb-avatar:active{transform:scale(.94);}
.kdfy-tb-avatar img{width:100%;height:100%;object-fit:cover;display:block;}

.kdfy-hdr{
    display:flex;align-items:flex-end;justify-content:space-between;
    padding:22px 18px 14px;
    background:transparent;
}
.kdfy-hdr-title{
    font-size:26px;font-weight:900;letter-spacing:-.8px;line-height:1.05;
    background:linear-gradient(135deg,#103A63 0%,#1668C7 60%,var(--grm-accent,#1668C7) 100%);
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.kdfy-hdr-sub{font-size:12.5px;color:var(--grm-ink-500,#55636e);font-weight:600;margin-top:4px;letter-spacing:.05px;}
.kdfy-hdr-link{font-size:12.5px;font-weight:800;color:#1668C7;text-decoration:none;flex-shrink:0;padding-bottom:3px;}

.kdfy-feed{display:flex;flex-direction:column;gap:18px;padding:4px 0 0;}

.kdfy-post{
    background:#fff;
    border-top:1px solid rgba(15,23,42,.06);
    border-bottom:1px solid rgba(15,23,42,.06);
    overflow:hidden;
    box-shadow:0 1px 2px rgba(15,23,42,.04);
}

.kdfy-post-hdr{display:flex;align-items:center;gap:11px;padding:12px 14px;}
.kdfy-post-av{
    position:relative;width:42px;height:42px;flex-shrink:0;
    border-radius:50%;
    padding:2px;background:#fff;

    box-shadow:0 2px 6px rgba(15,23,42,.08);
    box-sizing:border-box;
}
.kdfy-post-av img{
    width:100%;height:100%;object-fit:cover;display:block;
    border-radius:50%;
}
.kdfy-post-av-empty{
    position:absolute;inset:2px;
    display:flex;align-items:center;justify-content:center;
    color:#103A63;font-size:18px;font-weight:900;
    border-radius:50%;
    background:var(--grm-rij-zacht);
}
.kdfy-post-av-verified{
    position:absolute;bottom:-3px;right:-3px;z-index:3;
    width:18px;height:18px;border-radius:50%;
    background:#103A63;color:#fff;
    display:flex;align-items:center;justify-content:center;
    border:2px solid #fff;
    box-shadow:0 2px 5px rgba(16,185,129,.4);
}
.kdfy-post-av-verified svg{width:9px;height:9px;}
.kdfy-post-info{flex:1;min-width:0;line-height:1.25;}
.kdfy-post-name{
    display:block;font-size:14px;font-weight:800;color:var(--grm-ink,#041e42);
    text-decoration:none;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.kdfy-post-name a{color:inherit;text-decoration:none;}
.kdfy-post-name a:hover{color:#1668C7;}
.kdfy-post-sub{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--grm-ink-500,#55636e);font-weight:600;margin-top:1px;flex-wrap:wrap;}
.kdfy-post-dot{display:inline-block;width:3px;height:3px;border-radius:50%;background:var(--grm-line,#d7dee7);flex-shrink:0;}
.kdfy-post-relevant{
    font-size:10px;font-weight:800;color:#103A63;
    background:var(--grm-sky-50,#edf2f8);padding:3px 8px;border-radius:99px;
    display:inline-flex;align-items:center;gap:3px;
    text-transform:uppercase;letter-spacing:.4px;
}
.kdfy-post-rev{
    display:inline-flex;align-items:center;gap:3px;
    color:var(--grm-ink,#041e42);font-weight:800;
}
.kdfy-post-rev svg{color:#f59e0b;flex-shrink:0;}

.kdfy-post-text-fallback{
    position:absolute;inset:0;
    display:none;
    flex-direction:column;justify-content:center;
    padding:28px 26px;
    background:linear-gradient(135deg,var(--grm-sky-50,#edf2f8) 0%,var(--grm-canvas,#f5f7fa) 50%,#fff 100%);
    color:var(--grm-ink,#041e42);
    font-family:var(--grm-font-body,'Inter',Inter,sans-serif);
    overflow:hidden;
}
.kdfy-post-photo-wrap.is-text-fallback img{display:none;}
.kdfy-post-photo-wrap.is-text-fallback .kdfy-post-photo-pager{display:none;}
.kdfy-post-photo-wrap.is-text-fallback .kdfy-post-text-fallback{display:flex;}
.kdfy-tx-quote-mark{
    position:absolute;top:-12px;left:18px;
    font-size:120px;font-weight:900;line-height:1;
    color:rgba(16,58,99,.12);
    font-family:var(--grm-font-display,'Inter Tight',sans-serif);
    pointer-events:none;
}
.kdfy-tx-bio{
    font-size:15.5px;line-height:1.55;font-weight:600;
    color:var(--grm-success-text,#0b2a49);margin:0 0 14px;
    position:relative;z-index:1;
    display:-webkit-box;
    -webkit-line-clamp:7;
    -webkit-box-orient:vertical;
    overflow:hidden;
    text-overflow:ellipsis;
}
.kdfy-tx-bio--default{color:var(--grm-ink-500,#55636e);font-weight:500;}
.kdfy-tx-chips{
    display:flex;flex-wrap:wrap;gap:5px;margin:0 0 14px;
    position:relative;z-index:1;
}
.kdfy-tx-chip{
    background:#fff;color:#103A63;
    font-size:11px;font-weight:700;
    padding:5px 10px;border-radius:99px;
    border:1px solid var(--grm-brand-100,#d3e0ef);
}
.kdfy-tx-foot{
    display:flex;justify-content:space-between;align-items:center;
    font-size:11.5px;color:var(--grm-ink-500,#55636e);font-weight:600;
    position:relative;z-index:1;
    margin-top:auto;
}
.kdfy-tx-arrow{
    color:#1668C7;font-weight:800;
    display:inline-flex;align-items:center;gap:4px;
}
@media (max-width:480px){
    .kdfy-post-text-fallback{padding:22px 20px;}
    .kdfy-tx-bio{font-size:14.5px;}
    .kdfy-tx-quote-mark{font-size:100px;top:-8px;left:14px;}
}

.kdfy-post-photo-wrap{position:relative;}
.kdfy-post-photo{
    position:relative;width:100%;aspect-ratio:1/1;
    background:var(--grm-canvas,#f5f7fa) center/cover no-repeat;
    display:block;
}
.kdfy-post-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.kdfy-post-photo-pager{
    position:absolute;top:10px;left:10px;
    background:rgba(11,14,26,.65);color:#fff;
    font-size:11px;font-weight:800;
    padding:4px 9px;border-radius:99px;
}

.kdfy-post-share-overlay{
    position:absolute;top:10px;right:10px;z-index:3;
    width:36px;height:36px;border-radius:50%;
    background:rgba(11,14,26,.55);
    border:0;cursor:pointer;
    color:#fff;
    display:inline-flex;align-items:center;justify-content:center;
    transition:transform .15s ease, background .15s ease;
    font-family:inherit;
}
.kdfy-post-share-overlay:hover{background:rgba(11,14,26,.78);}
.kdfy-post-share-overlay:active{transform:scale(.92);}
.kdfy-post-share-overlay svg{width:16px;height:16px;}
.kdfy-post-share-overlay.is-copied{background:#103A63;}

.kdfy-chat-bd{
    position:fixed;inset:0;z-index:999992;
    background:rgba(11,14,26,.6);
    display:none;align-items:flex-end;justify-content:center;
    animation:kdfy-fade .18s ease;
}
.kdfy-chat-bd.is-open{display:flex;}
.kdfy-chat-modal{
    background:#fff;border-radius:22px 22px 0 0;
    width:100%;max-width:560px;
    display:flex;flex-direction:column;
    animation:kdfy-slide-up .35s cubic-bezier(.2,.8,.2,1.05);
    max-height:90vh;
}
.kdfy-chat-handle{
    width:42px;height:4px;border-radius:99px;background:var(--grm-line-soft,#eaeff5);
    margin:10px auto 4px;flex-shrink:0;
}
.kdfy-chat-hdr{
    display:flex;align-items:center;gap:12px;
    padding:14px 18px 12px;
    border-bottom:1px solid var(--grm-canvas,#f5f7fa);flex-shrink:0;
}
.kdfy-chat-hdr-info{flex:1;min-width:0;}
.kdfy-chat-hdr-info strong{
    display:block;font-size:14.5px;font-weight:800;color:var(--grm-ink,#041e42);
    letter-spacing:-.2px;line-height:1.2;
}
.kdfy-chat-hdr-info span{
    display:block;font-size:11.5px;color:var(--grm-ink-500,#55636e);font-weight:600;margin-top:2px;
}
.kdfy-chat-close{
    width:32px;height:32px;border-radius:50%;
    background:var(--grm-canvas,#f5f7fa);border:0;cursor:pointer;
    color:var(--grm-ink,#041e42);
    display:inline-flex;align-items:center;justify-content:center;
    flex-shrink:0;
}
.kdfy-chat-close svg{width:14px;height:14px;}
.kdfy-chat-body{padding:16px 18px;flex:1;overflow-y:auto;}
.kdfy-chat-label{
    display:block;font-size:11px;font-weight:800;
    color:var(--grm-ink-500,#55636e);letter-spacing:.5px;text-transform:uppercase;
    margin-bottom:8px;
}
.kdfy-chat-input{
    width:100%;border:1.5px solid var(--grm-line-soft,#eaeff5);
    border-radius:14px;padding:12px 14px;
    font-size:14px;font-family:inherit;color:var(--grm-ink,#041e42);
    margin-bottom:12px;line-height:1.45;
    transition:border-color .15s ease;
    background:#fff;
}
.kdfy-chat-input:focus{outline:0;border-color:#1668C7;}
.kdfy-chat-textarea{
    width:100%;border:1.5px solid var(--grm-line-soft,#eaeff5);
    border-radius:14px;padding:12px 14px;
    font-size:14px;font-family:inherit;color:var(--grm-ink,#041e42);
    min-height:130px;resize:vertical;line-height:1.5;
    transition:border-color .15s ease;
    background:#fff;
}
.kdfy-chat-textarea:focus{outline:0;border-color:#1668C7;}
.kdfy-chat-hint{
    display:flex;gap:8px;align-items:flex-start;
    padding:10px 12px;border-radius:10px;
    background:#EDF2F8;color:#103A63;
    font-size:11.5px;font-weight:600;line-height:1.45;
    margin-top:10px;
}
.kdfy-chat-hint svg{width:14px;height:14px;flex-shrink:0;margin-top:1px;}
.kdfy-chat-ftr{
    padding:14px 18px max(18px, env(safe-area-inset-bottom));
    border-top:1px solid var(--grm-canvas,#f5f7fa);background:#fff;flex-shrink:0;
    display:flex;gap:10px;
}
.kdfy-chat-cancel{
    flex:1;padding:13px 16px;border:1.5px solid var(--grm-line-soft,#eaeff5);
    background:#fff;color:var(--grm-ink,#041e42);border-radius:14px;
    font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;
}
.kdfy-chat-send{
    flex:2;padding:13px 16px;border:0;
    background:var(--grm-rij-diep);color:#fff;
    border-radius:14px;
    font-size:14.5px;font-weight:800;font-family:inherit;cursor:pointer;
    box-shadow:0 8px 18px -6px rgba(16,58,99,.55);
}
.kdfy-chat-send:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;}
.kdfy-chat-status{
    margin:8px 0 0;font-size:12px;font-weight:600;
}
.kdfy-chat-status.is-error{color:var(--grm-danger,#dc2626);}
.kdfy-chat-status.is-ok{color:#103A63;}

.kdfy-post-actions{display:flex;align-items:center;gap:6px;padding:10px 14px 4px;}
.kdfy-post-action{
    background:none;border:0;padding:7px;cursor:pointer;
    color:var(--grm-ink,#041e42);border-radius:8px;
    display:inline-flex;align-items:center;justify-content:center;
    transition:transform .15s ease;
    font-family:inherit;
}
.kdfy-post-action:active{transform:scale(.92);}
.kdfy-post-action svg{width:24px;height:24px;stroke-width:1.7;}
.kdfy-post-action.is-liked{color:var(--grm-danger,#dc2626);}
.kdfy-post-action.is-liked svg{fill:var(--grm-danger,#dc2626);}
.kdfy-post-actions-spacer{flex:1;}

.kdfy-post-caption{padding:0 14px 8px;font-size:13.5px;line-height:1.5;color:var(--grm-success-text,#0b2a49);}
.kdfy-post-caption strong{font-weight:800;color:var(--grm-ink,#041e42);}
.kdfy-post-caption a{color:#1668C7;font-weight:700;text-decoration:none;}

.kdfy-post--ad .kdfy-post-photo{aspect-ratio:3/2;background:var(--grm-ink,#041e42);}
.kdfy-ad-badge{
    display:inline-flex;align-items:center;gap:4px;
    padding:2px 8px 2px 6px;border-radius:99px;
    background:var(--grm-warn-50,#fef7e0);color:var(--grm-warn-text,#B06000);
    font-size:9.5px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;
    border:1px solid var(--grm-warn-50,#FEF7E0);
    line-height:1;
}
.kdfy-ad-badge svg{flex-shrink:0;}
.kdfy-ad-excerpt{
    padding:0 14px 10px;
    font-size:13px;line-height:1.5;color:var(--grm-ink-500,#55636e);
    margin:0;
}

.kdfy-post-trust{display:flex;flex-wrap:wrap;gap:6px;padding:2px 14px 10px;}
.kdfy-trust-pill{
    display:inline-flex;align-items:center;gap:5px;
    padding:5px 11px;border-radius:99px;
    font-size:11px;font-weight:800;letter-spacing:.1px;
    border:1px solid transparent;
}
.kdfy-trust-pill svg{flex-shrink:0;}
.kdfy-trust-kvk{background:#EDF2F8;color:#103A63;border-color:#D3E0EF;}
.kdfy-trust-vca{background:var(--grm-warn-50,#fef7e0);color:var(--grm-warn-text,#B06000);border-color:var(--grm-warn-50,#FEF7E0);}

.kdfy-post-cta-row{
    display:flex;gap:8px;width:100%;
    padding:10px 14px 14px;
    border-top:1px solid var(--grm-canvas,#f5f7fa);
    background:#fff;
}
.kdfy-post-follow{
    flex:1 1 0;min-width:0;
    display:inline-flex;align-items:center;justify-content:center;gap:6px;
    background:var(--grm-rij-diep);color:#fff;border:0;
    font-size:13.5px;font-weight:800;font-family:inherit;letter-spacing:.1px;
    padding:11px 10px;border-radius:12px;cursor:pointer;
    white-space:nowrap;
    transition:transform .14s ease, filter .14s ease, box-shadow .14s ease;
    box-shadow:0 6px 16px -6px rgba(16,58,99,.55);
}
.kdfy-post-follow:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 8px 18px -6px rgba(16,58,99,.6);}
.kdfy-post-follow:active{transform:translateY(0);}
.kdfy-post-follow svg{stroke-width:2.6;}
.kdfy-post-follow.is-following{
    background:#fff;color:#103A63;
    border:1.5px solid var(--grm-brand-100,#d3e0ef);box-shadow:none;
}
.kdfy-post-follow.is-following svg{display:none;}
.kdfy-post-follow.is-following .kdfy-follow-lbl::before{content:"✓ ";}
.kdfy-post-view{
    flex:1 1 0;min-width:0;
    display:inline-flex;align-items:center;justify-content:center;gap:6px;
    padding:11px 10px;border-radius:12px;
    background:#fff;color:var(--grm-ink,#041e42);
    border:1.5px solid var(--grm-line-soft,#eaeff5);
    font-size:13.5px;font-weight:800;letter-spacing:.1px;
    text-decoration:none;
    white-space:nowrap;
    transition:transform .14s ease, border-color .14s ease, background .14s ease;
}
.kdfy-post-view:hover{border-color:#103A63;color:#103A63;background:var(--grm-canvas,#f5f7fa);transform:translateY(-1px);}
.kdfy-post-view:active{transform:translateY(0);}

.kdfy-platform{
    position:relative;overflow:hidden;
    padding:26px 22px 20px;
    color:#fff;
    isolation:isolate;
}
.kdfy-platform-bg{
    position:absolute;inset:0;z-index:0;
    background-repeat:no-repeat;background-position:right -10px top -20px;
    background-size:auto 130%;
    opacity:.18;
    pointer-events:none;
}
.kdfy-platform-orb{
    position:absolute;top:-50px;right:-50px;
    width:180px;height:180px;border-radius:50%;
    background:radial-gradient(circle,rgba(255,255,255,.28) 0%,rgba(255,255,255,0) 65%);
    pointer-events:none;z-index:0;
}
.kdfy-platform-content{position:relative;z-index:1;}
.kdfy-platform-icon{
    width:46px;height:46px;border-radius:14px;
    background:rgba(255,255,255,.22);
    border:1px solid rgba(255,255,255,.25);
    display:inline-flex;align-items:center;justify-content:center;
    color:#fff;
    margin-bottom:14px;
    box-shadow:0 8px 18px -6px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.3);
}
.kdfy-platform-icon svg{width:22px;height:22px;stroke-width:2.2;}
.kdfy-platform-title{
    font-size:20px;font-weight:900;letter-spacing:-.4px;
    margin:0 0 6px;
    color:#fff !important;
    line-height:1.2;
    text-shadow:0 1px 2px rgba(0,0,0,.08);
}
.kdfy-platform-body{
    font-size:13.5px;line-height:1.55;
    color:rgba(255,255,255,.92) !important;
    margin:0 0 18px;
    max-width:88%;
}
.kdfy-platform-cta{
    display:inline-flex;align-items:center;gap:6px;
    padding:10px 18px;
    background:#fff;color:var(--grm-ink,#041e42);
    border-radius:99px;font-size:13px;font-weight:800;letter-spacing:.1px;
    text-decoration:none;
    transition:transform .15s ease, box-shadow .15s ease;
    box-shadow:0 6px 14px -4px rgba(0,0,0,.2);
}
.kdfy-platform-cta:hover{transform:translateY(-1px);box-shadow:0 10px 18px -4px rgba(0,0,0,.25);}

.kdfy-platform--blue{background:linear-gradient(135deg,var(--grm-accent,#1668C7) 0%,var(--grm-accent,#1668C7) 60%,var(--grm-accent-hover,#125AAC) 100%);}
.kdfy-platform--blue .kdfy-platform-cta{color:var(--grm-accent,#1668C7);}
.kdfy-platform--blue .kdfy-platform-bg{
    background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 220' fill='none' stroke='white' stroke-width='1.4'%3E%3Ccircle cx='40' cy='40' r='6'/%3E%3Ccircle cx='180' cy='100' r='6'/%3E%3Ccircle cx='110' cy='180' r='6'/%3E%3Cpath d='M40 40 L180 100 L110 180 Z' stroke-dasharray='3 4'/%3E%3Ccircle cx='40' cy='40' r='28' opacity='.4'/%3E%3Ccircle cx='180' cy='100' r='22' opacity='.4'/%3E%3Ccircle cx='110' cy='180' r='32' opacity='.4'/%3E%3C/svg%3E");
}

.kdfy-platform--amber{background:linear-gradient(135deg,var(--grm-warn,#f59e0b) 0%,#1668C7 55%,#125AAC 100%);}
.kdfy-platform--amber .kdfy-platform-cta{color:#125AAC;}
.kdfy-platform--amber .kdfy-platform-bg{
    background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 220' fill='none' stroke='white' stroke-width='1.5'%3E%3Ccircle cx='160' cy='70' r='46'/%3E%3Ccircle cx='160' cy='70' r='30' opacity='.6'/%3E%3Cline x1='160' y1='4' x2='160' y2='24'/%3E%3Cline x1='160' y1='116' x2='160' y2='136'/%3E%3Cline x1='94' y1='70' x2='114' y2='70'/%3E%3Cline x1='206' y1='70' x2='226' y2='70'/%3E%3Cline x1='114' y1='24' x2='126' y2='36'/%3E%3Cline x1='194' y1='104' x2='206' y2='116'/%3E%3Cline x1='114' y1='116' x2='126' y2='104'/%3E%3Cline x1='194' y1='36' x2='206' y2='24'/%3E%3Cpolyline points='160,52 152,72 168,72 160,90'/%3E%3C/svg%3E");
}

.kdfy-platform--emerald{background:var(--grm-rij-merk);}
.kdfy-platform--emerald .kdfy-platform-cta{color:var(--grm-brand,#103A63);}
.kdfy-platform--emerald .kdfy-platform-bg{
    background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 220' fill='none' stroke='white' stroke-width='1.5'%3E%3Cpath d='M170 30 L170 80 C170 116 140 136 130 142 C120 136 90 116 90 80 L90 30 L130 14 Z'/%3E%3Cpath d='M150 30 L150 76 C150 100 138 114 130 120 C122 114 110 100 110 76 L110 30 L130 22 Z' opacity='.6'/%3E%3Cpolyline points='118,80 128,90 144,72'/%3E%3Ccircle cx='40' cy='160' r='4'/%3E%3Ccircle cx='70' cy='180' r='3'/%3E%3Ccircle cx='30' cy='190' r='3'/%3E%3C/svg%3E");
}

.kdfy-platform--purple{background:linear-gradient(135deg,var(--grm-accent,#1668C7) 0%,var(--grm-accent,#1668C7) 55%,var(--grm-brand-600,#0B2A49) 100%);}
.kdfy-platform--purple .kdfy-platform-cta{color:var(--grm-brand-600,#0B2A49);}
.kdfy-platform--purple .kdfy-platform-bg{
    background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 220' fill='none' stroke='white' stroke-width='1.5'%3E%3Cpath d='M180 50 a18 18 0 0 1 18 18 v32 a18 18 0 0 1 -18 18 h-44 l-14 16 v-16 h-2 a18 18 0 0 1 -18 -18 v-32 a18 18 0 0 1 18 -18 z'/%3E%3Cpath d='M120 110 a14 14 0 0 0 -14 14 v24 a14 14 0 0 0 14 14 h32 l12 12 v-12 a14 14 0 0 0 14 -14 v-24 a14 14 0 0 0 -14 -14 z' opacity='.55'/%3E%3Ccircle cx='150' cy='80' r='2.4' fill='white'/%3E%3Ccircle cx='162' cy='80' r='2.4' fill='white'/%3E%3Ccircle cx='174' cy='80' r='2.4' fill='white'/%3E%3C/svg%3E");
}

.kdfy-platform--rose{background:linear-gradient(135deg,var(--grm-danger,#dc2626) 0%,var(--grm-danger,#dc2626) 55%,var(--grm-danger-700,var(--grm-danger-700,#A11916)) 100%);}
.kdfy-platform--rose .kdfy-platform-cta{color:var(--grm-danger-700,var(--grm-danger-700,#A11916));}
.kdfy-platform--rose .kdfy-platform-bg{
    background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 220' fill='none' stroke='white' stroke-width='1.4'%3E%3Cpolygon points='170,30 178,52 200,52 182,66 188,88 170,76 152,88 158,66 140,52 162,52'/%3E%3Cpolygon points='130,90 134,102 146,102 136,110 140,122 130,114 120,122 124,110 114,102 126,102' opacity='.7'/%3E%3Cpolygon points='185,130 189,142 201,142 191,150 195,162 185,154 175,162 179,150 169,142 181,142' opacity='.55'/%3E%3Cpolygon points='60,160 64,172 76,172 66,180 70,192 60,184 50,192 54,180 44,172 56,172' opacity='.5'/%3E%3C/svg%3E");
}

.kdfy-platform--sky{background:linear-gradient(135deg,var(--grm-sky,#0060DF) 0%,var(--grm-accent,#1668C7) 55%,var(--grm-brand,#103A63) 100%);}
.kdfy-platform--sky .kdfy-platform-cta{color:var(--grm-success,#103a63);}
.kdfy-platform--sky .kdfy-platform-bg{
    background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 220' fill='none' stroke='white' stroke-width='1.5'%3E%3Cpath d='M170 50 a14 14 0 0 1 14 14 c0 16 -28 30 -34 34 c-6 -4 -34 -18 -34 -34 a14 14 0 0 1 14 -14 c8 0 14 4 20 12 c6 -8 12 -12 20 -12z'/%3E%3Cpath d='M70 130 a10 10 0 0 1 10 10 c0 12 -20 22 -24 24 c-4 -2 -24 -12 -24 -24 a10 10 0 0 1 10 -10 c6 0 10 4 14 8 c4 -4 8 -8 14 -8z' opacity='.6'/%3E%3Cpath d='M180 160 a8 8 0 0 1 8 8 c0 8 -16 16 -20 18 c-4 -2 -20 -10 -20 -18 a8 8 0 0 1 8 -8 c4 0 8 2 12 6 c4 -4 8 -6 12 -6z' opacity='.5'/%3E%3C/svg%3E");
}

@media (min-width:680px){
    .kdfy-platform{
        border-radius:20px;
        box-shadow:0 14px 32px -10px rgba(15,23,42,.25);
    }
}

.kdfy-pl-demo{
    background:linear-gradient(160deg,var(--grm-ink,#041e42) 0%,var(--grm-accent-hover,#125AAC) 60%,var(--grm-accent,#1668C7) 100%);
    color:#fff; padding:24px 22px 20px;
    position:relative; overflow:hidden; isolation:isolate;
}
.kdfy-pl-demo::before{
    content:''; position:absolute; top:-40px; right:-40px;
    width:200px; height:200px; border-radius:50%;
    background:radial-gradient(circle,rgba(255,255,255,.16) 0%,transparent 65%);
    pointer-events:none;
}
.kdfy-pl-demo-hdr{position:relative; z-index:1; margin-bottom:18px;}
.kdfy-pl-demo-eyebrow{
    display:inline-flex; align-items:center; gap:5px;
    padding:5px 11px 5px 8px; border-radius:99px;
    background:rgba(255,213,102,.16); color:var(--grm-warn,#f59e0b);
    font-size:10.5px; font-weight:800; letter-spacing:.5px; text-transform:uppercase;
    border:1px solid rgba(255,213,102,.28);
    margin-bottom:10px;
}
.kdfy-pl-demo-title{
    font-size:20px; font-weight:900; letter-spacing:-.4px; line-height:1.2;
    color:#fff !important; margin:0 0 6px;
}
.kdfy-pl-demo-body{
    font-size:13.5px; line-height:1.5; color:rgba(255,255,255,.85);
    margin:0; max-width:88%;
}

.kdfy-pl-demo-stage{
    margin:14px auto 4px;
    display:flex; flex-direction:column; align-items:center; gap:18px;
}
.kdfy-pl-demo-cards{
    position:relative;
    width:190px; height:190px;
}
.kdfy-pl-demo-card{
    position:absolute; inset:0;
    background:#fff; border-radius:16px; overflow:hidden;
    box-shadow:0 16px 32px -8px rgba(0,0,0,.35);
    display:flex; flex-direction:column;
}
.kdfy-pl-demo-card--back{
    transform:scale(.92) translateY(-10px);
    z-index:1; opacity:.6;
}
.kdfy-pl-demo-card--front{
    z-index:2;
    transform-origin:50% 100%;
    animation:kdfy-pl-demo-swipe 6s ease-in-out infinite;
}
@keyframes kdfy-pl-demo-swipe{
    0%,55%   { transform:translateX(0)     rotate(0);     opacity:1;   }
    66%      { transform:translateX(70%)   rotate(15deg); opacity:.95; }
    72%      { transform:translateX(140%)  rotate(22deg); opacity:0;   }
    73%      { transform:translateX(-140%) rotate(-15deg); opacity:0;  }
    86%,100% { transform:translateX(0)     rotate(0);     opacity:1;   }
}
.kdfy-pl-demo-photo{
    position:relative; width:100%; flex:1 1 auto; min-height:120px;
}
.kdfy-pl-demo-photo::after{
    content:''; position:absolute; inset:0;
    background:linear-gradient(180deg,transparent 50%,rgba(11,14,26,.7) 100%);
}
.kdfy-pl-demo-verified{
    position:absolute; top:7px; right:7px; z-index:2;
    display:inline-flex; align-items:center; gap:3px;
    padding:2.5px 6px; border-radius:99px;
    background:#103A63; color:#fff;
    font-size:8.5px; font-weight:800; letter-spacing:.04em;
}
.kdfy-pl-demo-name{
    position:absolute; left:9px; right:9px; bottom:7px; z-index:1;
    color:#fff; line-height:1.18;
}
.kdfy-pl-demo-name b{ display:block; font-size:13px; font-weight:900; text-shadow:0 1px 2px rgba(0,0,0,.3); }
.kdfy-pl-demo-name span{ font-size:9.5px; font-weight:600; opacity:.92; }
.kdfy-pl-demo-meta{
    display:flex; align-items:center; gap:5px;
    padding:8px 11px;
    font-size:10.5px; font-weight:700; color:var(--grm-ink,#041e42);
    flex-shrink:0;
    border-top:1px solid var(--grm-canvas,#f5f7fa);
}
.kdfy-pl-demo-stars{ color:#f59e0b; letter-spacing:.4px; font-size:10px; }
.kdfy-pl-demo-actions{
    display:flex; align-items:center; gap:16px;
}
.kdfy-pl-demo-act{
    width:38px; height:38px; border-radius:50%;
    background:#fff; box-shadow:0 6px 14px -3px rgba(0,0,0,.35);
    display:inline-flex; align-items:center; justify-content:center;
    border:1.5px solid rgba(255,255,255,.2);
}
.kdfy-pl-demo-act svg{ width:14px; height:14px; }
.kdfy-pl-demo-act--no svg{ color:var(--grm-danger,#dc2626); }
.kdfy-pl-demo-act--yes{
    background:var(--grm-brand,#103A63);
    box-shadow:0 8px 18px rgba(16,185,129,.5);
    border-color:transparent;
    width:46px; height:46px;
}
.kdfy-pl-demo-act--yes svg{ width:18px; height:18px; color:#fff; }

.kdfy-pl-demo-match{
    position:absolute; top:30%; left:50%;
    transform:translate(-50%,-50%) rotate(-8deg) scale(.6);
    padding:5px 13px; border-radius:99px;
    background:var(--grm-brand,#103A63);
    color:#fff; font-size:13px; font-weight:900; letter-spacing:.1em;
    opacity:0; pointer-events:none; z-index:5;
    box-shadow:0 8px 22px rgba(16,185,129,.5);
    animation:kdfy-pl-demo-match 6s ease-in-out infinite;
}
@keyframes kdfy-pl-demo-match{
    0%,60%   { opacity:0; transform:translate(-50%,-50%) rotate(-8deg) scale(.6); }
    66%,72%  { opacity:1; transform:translate(-50%,-50%) rotate(-8deg) scale(1); }
    78%,100% { opacity:0; transform:translate(-50%,-50%) rotate(-8deg) scale(1.15); }
}

.kdfy-pl-demo-cta{
    position:relative; z-index:1;
    display:flex; align-items:center; justify-content:center; gap:6px;
    width:fit-content; max-width:100%;
    margin:18px auto 0;
    padding:12px 22px; background:#fff; color:#103A63;
    border-radius:99px; font-size:13.5px; font-weight:800;
    text-decoration:none; white-space:nowrap;
    box-shadow:0 8px 18px -4px rgba(0,0,0,.25);
    transition:transform .14s ease;
}
.kdfy-pl-demo-cta:hover{ transform:translateY(-1px); color:#1668C7; }

@media (min-width:680px){
    .kdfy-pl-demo{ border-radius:20px; box-shadow:0 14px 32px -10px rgba(15,23,42,.25); }
}

.kdfy-pl-review{
    background:#fff; padding:22px 22px 18px;
    border:1px solid var(--grm-line-soft,#eaeff5);
    position:relative; overflow:hidden;
}
.kdfy-pl-review-quote-mark{
    position:absolute; top:-8px; right:14px;
    font-size:80px; line-height:1; font-weight:900;
    color:var(--grm-sky-50,#edf2f8); font-family:var(--grm-font-display,'Inter Tight',sans-serif);
    pointer-events:none;
}
.kdfy-pl-review-quote{
    position:relative; z-index:1;
    font-size:15.5px; line-height:1.55; color:var(--grm-ink,#041e42);
    font-weight:600; margin:0 0 10px;
    font-style:italic;
}
.kdfy-pl-review-stars{
    color:#f59e0b; font-size:14px; letter-spacing:.6px; margin-bottom:14px;
}
.kdfy-pl-review-foot{
    display:flex; align-items:center; gap:10px;
    padding-top:12px; border-top:1px solid var(--grm-canvas,#f5f7fa);
}
.kdfy-pl-review-av{
    width:34px; height:34px; border-radius:50%; flex-shrink:0;
    background:var(--grm-rij-diep);
    color:#fff; font-weight:800; font-size:13px;
    display:inline-flex; align-items:center; justify-content:center;
}
.kdfy-pl-review-author{ flex:1; min-width:0; line-height:1.2; }
.kdfy-pl-review-author strong{ display:block; font-size:13px; font-weight:800; color:var(--grm-ink,#041e42); }
.kdfy-pl-review-author span{ font-size:11px; color:#103A63; font-weight:700; }
.kdfy-pl-review-link{
    font-size:12px; font-weight:800; color:#1668C7;
    text-decoration:none; flex-shrink:0;
}
.kdfy-pl-review-link:hover{ text-decoration:underline; }

@media (min-width:680px){
    .kdfy-pl-review{ border-radius:18px; box-shadow:0 8px 22px -12px rgba(15,23,42,.18); }
}

.kdfy-pl-tip{
    background:var(--grm-warn-50,#FEF7E0);
    padding:20px 22px 18px;
    border:1px solid var(--grm-warn-50,#FEF7E0);
}
.kdfy-pl-tip-badge{
    display:inline-flex; align-items:center; gap:5px;
    padding:4px 10px 4px 7px; border-radius:99px;
    background:var(--grm-warn,#f59e0b); color:var(--grm-warn-text,#B06000);
    font-size:10px; font-weight:900; letter-spacing:.5px; text-transform:uppercase;
    margin-bottom:12px;
}
.kdfy-pl-tip-title{
    font-size:18px; font-weight:900; letter-spacing:-.3px; line-height:1.25;
    color:var(--grm-warn-text,#B06000); margin:0 0 6px;
}
.kdfy-pl-tip-body{
    font-size:13.5px; line-height:1.5; color:var(--grm-warn-text,#B06000);
    margin:0 0 14px; font-weight:500;
}
.kdfy-pl-tip-link{
    display:inline-flex; align-items:center; gap:5px;
    font-size:13px; font-weight:800; color:var(--grm-warn-text,#B06000);
    text-decoration:none;
}
.kdfy-pl-tip-link:hover{ color:var(--grm-warn-text,#B06000); }

@media (min-width:680px){
    .kdfy-pl-tip{ border-radius:18px; box-shadow:0 8px 22px -12px rgba(15,23,42,.15); }
}

.kdfy-pl-stats{
    background:linear-gradient(160deg,var(--grm-ink,#041e42),var(--grm-accent-hover,#125AAC));
    color:#fff; padding:24px 22px 20px;
    position:relative; overflow:hidden;
}
.kdfy-pl-stats::before{
    content:''; position:absolute; top:-30px; right:-30px;
    width:180px; height:180px; border-radius:50%;
    background:radial-gradient(circle,rgba(255,255,255,.12) 0%,transparent 65%);
    pointer-events:none;
}
.kdfy-pl-stats-title{
    font-size:18px; font-weight:900; letter-spacing:-.3px; line-height:1.2;
    color:#fff !important; margin:0 0 4px; position:relative; z-index:1;
}
.kdfy-pl-stats-body{
    font-size:13px; line-height:1.5; color:rgba(255,255,255,.78);
    margin:0 0 16px; position:relative; z-index:1;
}
.kdfy-pl-stats-grid{
    display:grid; grid-template-columns:repeat(2,1fr);
    gap:10px; margin-bottom:16px; position:relative; z-index:1;
}
.kdfy-pl-stats-cell{
    padding:12px 14px;
    background:rgba(255,255,255,.07);
    border:1px solid rgba(255,255,255,.12);
    border-radius:12px;
    line-height:1.2;
}
.kdfy-pl-stats-num{
    display:block;
    font-size:22px; font-weight:900; letter-spacing:-.5px;
    background:var(--grm-warn,#f59e0b);
    -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
    margin-bottom:2px;
}
.kdfy-pl-stats-lbl{
    font-size:11px; font-weight:600; color:rgba(255,255,255,.78);
    line-height:1.3;
}
.kdfy-pl-stats-cta{
    display:inline-flex; align-items:center; gap:6px;
    padding:10px 18px; background:#fff; color:var(--grm-accent-hover,#125AAC);
    border-radius:99px; font-size:13px; font-weight:800;
    text-decoration:none;
    box-shadow:0 6px 14px -4px rgba(0,0,0,.25);
    position:relative; z-index:1;
    transition:transform .14s ease;
}
.kdfy-pl-stats-cta:hover{ transform:translateY(-1px); color:var(--grm-accent-hover,#125AAC); }

@media (min-width:680px){
    .kdfy-pl-stats{ border-radius:20px; box-shadow:0 14px 32px -10px rgba(15,23,42,.25); }
}
@media (max-width:380px){
    .kdfy-pl-stats-grid{ gap:7px; }
    .kdfy-pl-stats-cell{ padding:10px 12px; }
    .kdfy-pl-stats-num{ font-size:19px; }
}
@media (prefers-reduced-motion:reduce){
    .kdfy-pl-demo-card--front, .kdfy-pl-demo-match{ animation:none !important; }
}

.kdfy-trigger{display:flex;align-items:center;justify-content:center;padding:20px 0 6px;min-height:40px;}
.kdfy-loader{display:inline-flex;align-items:center;gap:9px;color:var(--grm-ink-500,#55636e);font-size:12.5px;font-weight:600;}
.kdfy-spinner{
    width:18px;height:18px;border-radius:50%;
    border:2px solid var(--grm-brand-100,#d3e0ef);border-top-color:#1668C7;
    animation:kdfy-spin .8s linear infinite;
}
@keyframes kdfy-spin{ to{ transform:rotate(360deg); } }
.kdfy-end{
    display:inline-flex;align-items:center;gap:7px;
    padding:9px 16px;border-radius:99px;
    background:var(--grm-sky-50,#edf2f8);color:#103A63;
    font-size:12px;font-weight:800;letter-spacing:.2px;
}

.kdfy-filter-strip{
    display:flex;gap:8px;align-items:center;
    padding:4px 16px 14px;
    overflow-x:auto;overflow-y:hidden;
    scrollbar-width:none;-ms-overflow-style:none;
    -webkit-overflow-scrolling:touch;

    position:relative;
}
.kdfy-filter-strip::-webkit-scrollbar{display:none;}

.kdfy-cat-drop{
    flex-shrink:0;
    position:relative;
}
.kdfy-cat-drop summary{
    list-style:none;
    cursor:pointer;
    user-select:none;
}
.kdfy-cat-drop summary::-webkit-details-marker{ display:none; }
.kdfy-cat-drop summary::marker{ content:''; }
.kdfy-fpill--catdrop{

    transition:background .15s, border-color .15s, transform .12s;
}
.kdfy-cat-drop.has-active .kdfy-fpill--catdrop{
    background:var(--grm-ink,#041e42) !important;
    color:#fff !important;
    border-color:var(--grm-ink,#041e42) !important;
}
.kdfy-cat-drop.has-active .kdfy-fpill--catdrop svg{ stroke:#fff; }
.kdfy-cat-drop[open] .kdfy-fpill--catdrop{
    background:var(--grm-sky-50,#edf2f8);
    border-color:#103A63;
    color:#103A63;
}
.kdfy-catdrop-chev{
    width:11px; height:11px;
    margin-left:2px;
    transition:transform .18s ease;
}
.kdfy-cat-drop[open] .kdfy-catdrop-chev{
    transform:rotate(180deg);
}
.kdfy-cat-drop-panel{
    position:absolute;
    top:calc(100% + 8px);
    left:0;
    z-index:2147483647;
    min-width:280px;
    max-width:min(440px, calc(100vw - 32px));
    background:#fff;
    border:1px solid var(--grm-line-soft,#eaeff5);
    border-radius:14px;
    padding:12px;
    box-shadow:0 16px 40px -10px rgba(15,23,42,.25), 0 4px 10px rgba(15,23,42,.06);
    animation:kdfyCatDropIn .15s ease;
}
@keyframes kdfyCatDropIn{
    from{ opacity:0; transform:translateY(-6px); }
    to  { opacity:1; transform:translateY(0); }
}
.kdfy-cat-drop-grid{
    display:flex; flex-wrap:wrap; gap:6px;
}
.kdfy-cat-chip{
    display:inline-flex; align-items:center;
    padding:7px 13px;
    background:#fff;
    border:1px solid var(--grm-line-soft,#eaeff5);
    border-radius:99px;
    font-family:inherit;
    font-size:12.5px; font-weight:600;
    color:var(--grm-success-text,#0b2a49);
    cursor:pointer;
    transition:background .14s, border-color .14s, color .14s, transform .12s;
    white-space:nowrap;
}
.kdfy-cat-chip:hover{
    background:var(--grm-canvas,#f5f7fa);
    border-color:var(--grm-brand-100,#d3e0ef);
    color:#103A63;
}
.kdfy-cat-chip.is-active{
    background:var(--grm-ink,#041e42);
    border-color:var(--grm-ink,#041e42);
    color:#fff;
    font-weight:700;
}
.kdfy-cat-chip.is-active:hover{
    background:var(--grm-success-text,#0b2a49);
    border-color:var(--grm-success-text,#0b2a49);
    color:#fff;
}

@media (max-width:640px){
    .kdfy-cat-drop-panel{
        position:fixed;
        left:16px; right:16px;
        top:auto;
        max-width:none;
        min-width:0;
        max-height:60vh;
        overflow-y:auto;
    }
}
.kdfy-fpill{
    flex-shrink:0;
    display:inline-flex;align-items:center;gap:6px;
    padding:8px 14px;border-radius:99px;
    background:#fff;color:var(--grm-ink,#041e42);
    border:1.5px solid var(--grm-line-soft,#eaeff5);
    font-size:12.5px;font-weight:700;font-family:inherit;
    cursor:pointer;text-decoration:none;
    white-space:nowrap;
    transition:transform .15s ease, border-color .15s ease, background .15s ease;
    line-height:1;
}
.kdfy-fpill:hover{border-color:var(--grm-brand-100,#d3e0ef);}
.kdfy-fpill:active{transform:scale(.96);}
.kdfy-fpill svg{width:14px;height:14px;stroke-width:2.4;flex-shrink:0;}
.kdfy-fpill.is-active{
    background:var(--grm-rij-diep);
    color:#fff;border-color:transparent;
    box-shadow:0 4px 12px -4px rgba(16,58,99,.5);
}
.kdfy-fpill--filters{
    background:var(--grm-ink,#041e42);color:#fff;border-color:transparent;
    padding-right:11px;
}
.kdfy-fpill--filters:hover{background:var(--grm-success-text,#0b2a49);border-color:transparent;}
.kdfy-fpill--filters svg{color:#fff;}
.kdfy-fpill--shuffle{
    background:var(--grm-warn,#f59e0b);
    color:#fff;border-color:transparent;
    box-shadow:0 4px 12px -4px rgba(255,140,0,.55);
}
.kdfy-fpill--shuffle:hover{filter:brightness(1.06);border-color:transparent;}
.kdfy-fpill--shuffle svg{color:#fff;}
.kdfy-fpill--shuffle.is-spinning svg{animation:kdfy-spin 0.7s ease-out;}
.kdfy-fpill-badge{
    display:none;
    background:#fff;color:var(--grm-ink,#041e42);
    font-size:10.5px;font-weight:900;
    border-radius:99px;
    min-width:18px;height:18px;
    align-items:center;justify-content:center;
    padding:0 5px;margin-left:4px;
    line-height:1;
}
.kdfy-fpill--filters.has-active .kdfy-fpill-badge{display:inline-flex;}

.kdfy-filter-result{
    display:none;
    margin:0 16px 10px;padding:10px 14px;
    background:var(--grm-sky-50,#edf2f8);border:1px solid var(--grm-brand-100,#d3e0ef);
    border-radius:12px;color:#103A63;
    font-size:12.5px;font-weight:700;
    align-items:center;justify-content:space-between;gap:8px;
}
.kdfy-filter-result.is-shown{display:flex;}
.kdfy-filter-result-clear{
    background:none;border:0;cursor:pointer;
    color:#1668C7;font-weight:800;font-family:inherit;font-size:12.5px;
    text-decoration:underline;padding:0;
}

.kdfy-sheet-bd{
    position:fixed;inset:0;z-index:999991;
    background:rgba(11,14,26,.6);
    display:none;align-items:flex-end;justify-content:center;
    animation:kdfy-fade .18s ease;
}
.kdfy-sheet-bd.is-open{display:flex;}
@keyframes kdfy-fade{from{opacity:0;}to{opacity:1;}}
.kdfy-sheet{
    background:#fff;border-radius:22px 22px 0 0;
    width:100%;max-width:560px;
    max-height:88vh;display:flex;flex-direction:column;
    animation:kdfy-slide-up .35s cubic-bezier(.2,.8,.2,1.05);
}
@keyframes kdfy-slide-up{from{transform:translateY(100%);}to{transform:translateY(0);}}
.kdfy-sheet-hdr{
    display:flex;align-items:center;gap:10px;
    padding:18px 18px 14px;flex-shrink:0;
    border-bottom:1px solid var(--grm-canvas,#f5f7fa);
}
.kdfy-sheet-title{font-size:18px;font-weight:900;letter-spacing:-.3px;color:var(--grm-ink,#041e42);flex:1;}
.kdfy-sheet-x{
    width:36px;height:36px;border-radius:50%;flex-shrink:0;
    background:var(--grm-canvas,#f5f7fa);border:0;cursor:pointer;
    color:var(--grm-ink,#041e42);
    display:inline-flex;align-items:center;justify-content:center;
    transition:background .15s ease, transform .15s ease;
    font-family:inherit;
}
.kdfy-sheet-x:hover{background:var(--grm-line-soft,#eaeff5);}
.kdfy-sheet-x:active{transform:scale(.92);}
.kdfy-sheet-x svg{width:16px;height:16px;}
.kdfy-sheet-clear{
    background:none;border:0;cursor:pointer;
    font-family:inherit;font-size:13px;font-weight:700;color:var(--grm-ink-500,#55636e);
    padding:6px 10px;border-radius:8px;
}
.kdfy-sheet-clear:hover{background:var(--grm-canvas,#f5f7fa);color:var(--grm-ink,#041e42);}
.kdfy-sheet-body{
    overflow-y:auto;flex:1;
    padding:18px 18px 20px;
    overscroll-behavior:contain;
}
.kdfy-sheet-section{margin-bottom:22px;}
.kdfy-sheet-section:last-child{margin-bottom:0;}
.kdfy-sheet-label{
    display:block;font-size:12px;font-weight:800;
    color:var(--grm-ink-500,#55636e);letter-spacing:.6px;text-transform:uppercase;
    margin-bottom:10px;
}

.kdfy-sheet-ftr{
    padding:14px 18px max(18px, env(safe-area-inset-bottom));
    border-top:1px solid var(--grm-canvas,#f5f7fa);background:#fff;flex-shrink:0;
}
.kdfy-sheet-apply{
    display:block;width:100%;
    padding:14px 18px;border:0;border-radius:14px;cursor:pointer;
    background:var(--grm-rij-diep);color:#fff;
    font-size:14.5px;font-weight:800;letter-spacing:.1px;font-family:inherit;
    box-shadow:0 8px 20px -6px rgba(16,58,99,.55);
}
.kdfy-sheet-apply:active{transform:translateY(1px);}

@media (min-width:680px){
    .kdfy{padding-top:8px;}
    .kdfy-feed{padding:8px 12px 0;gap:14px;}
    .kdfy-post{
        border:1px solid rgba(15,23,42,.05);border-radius:18px;
        box-shadow:0 8px 22px -12px rgba(15,23,42,.18), 0 2px 6px rgba(15,23,42,.05);
    }
}
@media (max-width:380px){
    .kdfy-post-hdr{padding:10px 12px;gap:9px;}
    .kdfy-post-av{width:38px;height:38px;}
    .kdfy-post-name{font-size:13.5px;}
    .kdfy-post-caption{font-size:13px;}
}

.kdfy-more-wrap{display:flex;justify-content:center;padding:8px 0 24px;}
.kdfy-more-btn{background:#103A63;color:#fff;border:0;border-radius:999px;padding:11px 26px;font-weight:800;font-size:14px;cursor:pointer;transition:background .15s,transform .12s;}
.kdfy-more-btn:hover{background:#0B2A49;}
.kdfy-more-btn:active{transform:scale(.96);}
.kdfy-feed-end{text-align:center;color:var(--grm-ink-300,#a8b4bc);font-size:13px;font-weight:600;padding:8px 0 28px;}
.kdfy-hdr-link{background:var(--grm-sky-50,#edf2f8);border:0;color:#103A63;font-weight:800;font-size:12.5px;border-radius:999px;padding:7px 14px;cursor:pointer;transition:background .15s;}
.kdfy-hdr-link:hover{background:var(--grm-brand-100,#d3e0ef);}
.kdfy-post-action.is-on{color:#1668C7;}
.kdfy-post-action.is-on svg{fill:#1668C7;}
.kdfy-post-share-overlay.is-copied::after{content:'Gekopieerd';position:absolute;right:46px;top:50%;transform:translateY(-50%);background:#041E42;color:#fff;font-size:11px;font-weight:700;padding:3px 8px;border-radius:6px;white-space:nowrap;}

.grm-adform{max-width:640px;margin:0 auto;font-family:'Inter',system-ui,sans-serif;color:#041E42;}
.grm-adform-title{font-family:'Inter Tight','Inter Tight',sans-serif;font-weight:800;font-size:1.6rem;margin:0 0 .35rem;}
.grm-adform-lead{color:#55636E;margin:0 0 1.5rem;font-size:.98rem;line-height:1.5;}
.grm-adform-notice{padding:.8rem 1rem;border-radius:10px;margin-bottom:1.25rem;font-size:.9rem;}
.grm-adform-notice.is-ok{background:rgba(16,58,99,.12);border:1px solid rgba(16,58,99,.3);color:#103A63;}
.grm-adform-form{display:flex;flex-direction:column;gap:1.1rem;background:#fff;border:1px solid #D7DEE7;border-radius:16px;padding:1.5rem;box-shadow:0 8px 28px rgba(4,30,66,.06);}
.grm-adform-field{display:flex;flex-direction:column;gap:.4rem;}
.grm-adform-lbl{font-weight:700;font-size:.9rem;}
.grm-adform-lbl .req{color:var(--grm-danger,#dc2626);}
.grm-adform-field input[type=text],.grm-adform-field textarea{width:100%;padding:.8rem 1rem;border:1.5px solid #D7DEE7;border-radius:10px;font:inherit;font-size:1rem;background:#fff;box-sizing:border-box;transition:border-color .15s,box-shadow .15s;}
.grm-adform-field input[type=text]:focus,.grm-adform-field textarea:focus{outline:0;border-color:#103A63;box-shadow:0 0 0 4px rgba(22,104,199,.12);}
.grm-adform-field textarea{resize:vertical;min-height:80px;line-height:1.5;}
.grm-adform-field input[type=file]{font-size:.9rem;}
.grm-adform-hint{font-size:.78rem;color:#55636E;}
.grm-adform-submit{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:#103A63;color:#fff;border:0;padding:.9rem 1.25rem;border-radius:10px;font:inherit;font-weight:800;font-size:1rem;cursor:pointer;box-shadow:0 6px 16px rgba(22,104,199,.3);transition:background .15s,transform .15s;}
.grm-adform-submit:hover{background:#125AAC;transform:translateY(-2px);}
.grm-adform-submit .material-symbols-rounded{font-size:1.2rem;}
.grm-adform-disclaimer{font-size:.78rem;color:#55636E;margin:0;text-align:center;}
.grm-adform-guard{max-width:480px;margin:2rem auto;text-align:center;padding:2rem;background:#fff;border:1px solid #D7DEE7;border-radius:16px;}
.grm-adform-login{display:inline-block;margin-top:.85rem;background:#103A63;color:#fff;padding:.6rem 1.4rem;border-radius:10px;text-decoration:none;font-weight:700;}
.grm-adform-list{margin-top:2rem;}
.grm-adform-list h3{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:1.1rem;margin:0 0 1rem;}
.grm-adform-item{display:flex;align-items:center;gap:.85rem;padding:.75rem;border:1px solid #D7DEE7;border-radius:12px;margin-bottom:.6rem;background:#fff;}
.grm-adform-item-img{width:54px;height:54px;border-radius:8px;object-fit:cover;flex-shrink:0;}
.grm-adform-item-bd{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem;}
.grm-adform-item-bd strong{font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.grm-adform-item-status{font-size:.72rem;font-weight:800;padding:.1rem .5rem;border-radius:999px;width:max-content;}
.grm-adform-item-status--publish{background:rgba(16,58,99,.14);color:#103A63;}
.grm-adform-item-status--pending{background:rgba(242,179,60,.16);color:var(--grm-warn-text,#B06000);}
.grm-adform-item-status--draft{background:var(--grm-sky-50,#edf2f8);color:#55636E;}
.grm-adform-item-del{background:transparent;border:0;color:var(--grm-ink-300,#a8b4bc);cursor:pointer;padding:.4rem;border-radius:8px;transition:background .15s,color .15s;}
.grm-adform-item-del:hover{background:rgba(197,34,31,.10);color:var(--grm-danger,#dc2626);}
