@font-face{
  font-family:'Paperlogy5';
  src:url('https://k-miracle.net/wp-content/uploads/2025/12/Paperlogy-5Medium.ttf') format('truetype');
  font-weight:500;
  font-style:normal;
  font-display:swap;
}

.kmpp,
.kmpp *{box-sizing:border-box;font-family:'Paperlogy5','Pretendard','Noto Sans KR',sans-serif;}
.kmpp{--navy:#102746;--blue:#315f9f;--blue2:#5f91c9;--sky:#eaf4fb;--mint:#edf7f3;--sage:#598d78;--gold:#b9904f;--gold-soft:#fbf7ee;--rose:#a56f77;--text:#172235;--body:#5f6b7b;--muted:#8a95a4;--line:#e3e9f0;--line2:#edf1f5;--white:#fff;--soft:#f7f9fc;--shadow:0 16px 42px rgba(20,38,65,.07);width:100%;color:var(--text);}
.kmpp a{text-decoration:none!important;}
.kmpp-shell{width:min(1480px,calc(100% - 28px));margin:0 auto;padding:22px 0 36px;}
.kmpp-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px;padding:0 2px;}
.kmpp-kicker{display:block;color:var(--blue);font-size:11px;letter-spacing:.15em;font-weight:600;margin-bottom:7px;}
.kmpp-heading h2{margin:0;color:var(--text);font-size:clamp(27px,2.2vw,37px);line-height:1.15;letter-spacing:-.04em;font-weight:600;}
.kmpp-heading p{margin:8px 0 0;color:var(--body);font-size:14.5px;line-height:1.65;}
.kmpp-admin-add{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 16px;border-radius:12px;background:var(--navy);color:#fff!important;font-size:13.5px;box-shadow:0 10px 24px rgba(16,39,70,.16);}
.kmpp-notice{margin:0 0 14px;padding:11px 14px;border-radius:12px;border:1px solid #e8e2ce;background:#fffaf0;color:#735f35;font-size:13px;}
.kmpp-notice.success{border-color:#d7e8df;background:#f4fbf7;color:#446d5a;}

.kmpp-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 16px;padding:6px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 8px 22px rgba(20,38,65,.035);}
.kmpp-tab{display:flex;align-items:center;justify-content:center;min-height:42px;padding:9px 10px;border-radius:11px;color:#6d7887!important;font-size:13.5px;font-weight:500;transition:.2s ease;}
.kmpp-tab:hover{background:#f6f9fc;color:var(--blue)!important;}
.kmpp-tab.is-active{background:linear-gradient(135deg,#17365f,#315f9f);color:#fff!important;box-shadow:0 8px 18px rgba(49,95,159,.16);}

.kmpp-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;align-items:start;}
.kmpp-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 10px 28px rgba(20,38,65,.045);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.kmpp-card:hover{transform:translateY(-3px);border-color:#d2dde9;box-shadow:0 18px 38px rgba(20,38,65,.09);}
.kmpp-card.is-pinned{border-color:#e4d5b8;box-shadow:0 13px 30px rgba(136,104,52,.08);}
.kmpp-card-main{display:block;color:inherit!important;}
.kmpp-photo{position:relative;overflow:hidden;aspect-ratio:4/3;background:#f1f4f7;}
.kmpp-photo img{display:block;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;}
.kmpp-photo-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:130px;background:linear-gradient(135deg,#f5f8fb,#e9f0f6);color:#9aa7b5;font-size:25px;letter-spacing:-.04em;}
.kmpp-badge{position:absolute;left:10px;bottom:10px;display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.82);color:#315f9f;font-size:11.5px;font-weight:500;box-shadow:0 5px 14px rgba(0,0,0,.07);backdrop-filter:blur(8px);}
.kmpp-badge.static{position:static;background:#eef4fb;border-color:#dbe7f2;box-shadow:none;color:var(--blue);}
.type-instructor .kmpp-badge{color:var(--sage);}
.type-creator .kmpp-badge{color:var(--gold);}
.kmpp-pin-badge{position:absolute;right:10px;top:10px;display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.94);border:1px solid #eadfc8;color:#9a7336;font-size:10px;letter-spacing:.08em;box-shadow:0 5px 14px rgba(0,0,0,.06);}
.kmpp-card-body{padding:14px 14px 15px;}
.kmpp-card-body h3{margin:0;color:var(--text);font-size:17px;line-height:1.35;letter-spacing:-.025em;font-weight:600;}
.kmpp-name-en{margin-top:3px;color:#98a2af;font-size:11.5px;line-height:1.4;}
.kmpp-tagline{margin:9px 0 0;color:#5d6876;font-size:12.5px;line-height:1.55;min-height:35px;}
.kmpp-expertise{margin-top:9px;color:var(--blue);font-size:11.8px;line-height:1.5;}
.kmpp-org{margin-top:8px;padding-top:8px;border-top:1px solid var(--line2);color:#8b95a1;font-size:11.5px;line-height:1.45;}
.kmpp-view{display:flex;align-items:center;justify-content:space-between;margin-top:11px;color:#2f527f;font-size:11.8px;}
.kmpp-view b{font-size:15px;font-weight:400;}
.kmpp-admin-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 12px;border-top:1px solid var(--line2);background:#fafbfd;font-size:10.5px;}
.kmpp-admin-actions a{color:#657383!important;}
.kmpp-admin-actions .kmpp-delete{color:#a25858!important;}
.kmpp-status{padding:3px 6px;border-radius:999px;background:#eef2f6;color:#687586;}
.kmpp-status.pinned{background:#fbf5e8;color:#997238;}
.kmpp-empty{grid-column:1/-1;padding:48px 20px;border:1px dashed #d9e1ea;border-radius:18px;text-align:center;color:#8a95a4;background:#fff;}

/* DETAIL */
.kmpp-detail{scroll-margin-top:90px;margin-top:2px;}
.kmpp-detail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;}
.kmpp-back,.kmpp-edit-detail{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 12px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#596777!important;font-size:12.5px;box-shadow:0 5px 14px rgba(20,38,65,.035);}
.kmpp-edit-detail{color:var(--blue)!important;}
.kmpp-detail-hero{display:grid;grid-template-columns:280px minmax(0,1fr);gap:26px;align-items:center;padding:24px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,#fff 0%,#fbfdff 100%);box-shadow:var(--shadow);position:relative;overflow:hidden;}
.kmpp-detail-hero:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,#315f9f,#79a7d0,#b9904f);opacity:.9;}
.kmpp-detail-photo-wrap{display:flex;justify-content:center;}
.kmpp-detail-photo{width:min(100%,260px);aspect-ratio:4/3;overflow:hidden;border-radius:17px;background:#f0f3f7;border:1px solid #e1e6ec;box-shadow:0 12px 28px rgba(20,38,65,.08);}
.kmpp-detail-photo img{display:block;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;}
.kmpp-detail-label-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.kmpp-detail-pin{display:inline-flex;align-items:center;min-height:26px;padding:5px 9px;border-radius:999px;background:#fbf6eb;border:1px solid #ebdfc8;color:#9b773e;font-size:10px;letter-spacing:.09em;}
.kmpp-detail-identity h1{margin:12px 0 0;color:#172235;font-size:clamp(29px,3vw,45px);line-height:1.08;letter-spacing:-.05em;font-weight:600;}
.kmpp-detail-en{margin-top:6px;color:#9aa4b0;font-size:13px;letter-spacing:.02em;}
.kmpp-detail-tagline{max-width:820px;margin:14px 0 0;color:#526071;font-size:15px;line-height:1.75;}
.kmpp-detail-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:20px;}
.kmpp-fact{min-width:0;padding:11px 12px;border:1px solid var(--line2);border-radius:12px;background:#fff;}
.kmpp-fact span{display:block;margin-bottom:5px;color:#9aa4b0;font-size:10.5px;letter-spacing:.04em;}
.kmpp-fact strong{display:block;color:#354255;font-size:12.5px;line-height:1.45;font-weight:500;overflow-wrap:anywhere;}
.kmpp-website-button{display:inline-flex;align-items:center;gap:7px;margin-top:14px;min-height:38px;padding:8px 12px;border-radius:10px;background:#f5f8fb;border:1px solid #e2e8ef;color:#315f9f!important;font-size:12px;}

.kmpp-detail-card-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:14px;margin-top:14px;}
.kmpp-info-card,.kmpp-content-card,.kmpp-gallery-card{border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(20,38,65,.04);}
.kmpp-info-card{padding:22px;}
.kmpp-section-label{color:#8190a2;font-size:10.5px;letter-spacing:.14em;margin-bottom:6px;}
.kmpp-info-card h2,.kmpp-section-heading h2{margin:0;color:#1d2a3d;font-size:19px;line-height:1.35;letter-spacing:-.025em;font-weight:600;}
.kmpp-chip-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px;}
.kmpp-chip-list span{display:inline-flex;align-items:center;min-height:31px;padding:7px 10px;border-radius:999px;background:#f4f8fc;border:1px solid #e2ebf4;color:#426991;font-size:11.5px;line-height:1.25;}
.kmpp-career-list{display:grid;gap:10px;margin-top:14px;}
.kmpp-career-list>div{display:grid;grid-template-columns:8px minmax(0,1fr);gap:10px;align-items:start;padding-bottom:10px;border-bottom:1px solid var(--line2);}
.kmpp-career-list>div:last-child{padding-bottom:0;border-bottom:0;}
.kmpp-career-list i{width:6px;height:6px;margin-top:7px;border-radius:50%;background:#7195bc;box-shadow:0 0 0 4px #f0f5fa;}
.kmpp-career-list p{margin:0;color:#566373;font-size:13px;line-height:1.65;}
.kmpp-content-card,.kmpp-gallery-card{margin-top:14px;padding:24px;}
.kmpp-content-card--extra{background:linear-gradient(180deg,#fff 0%,#fcfdfd 100%);}
.kmpp-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:13px;border-bottom:1px solid var(--line2);}
.kmpp-section-heading span{display:block;margin-bottom:5px;color:#8492a2;font-size:10px;letter-spacing:.14em;}
.kmpp-richtext{color:#566373;font-size:14px;line-height:1.9;overflow-wrap:anywhere;}
.kmpp-richtext p{margin:0 0 12px;}
.kmpp-richtext p:last-child{margin-bottom:0;}
.kmpp-richtext img{max-width:100%;height:auto;border-radius:14px;}
.kmpp-richtext a{color:var(--blue)!important;text-decoration:underline!important;text-underline-offset:3px;}
.kmpp-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.kmpp-gallery-item{display:block;overflow:hidden;aspect-ratio:4/3;border-radius:14px;background:#f2f5f8;border:1px solid #e6ebf0;}
.kmpp-gallery-item img{display:block;width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .25s ease;}
.kmpp-gallery-item:hover img{transform:scale(1.025);}
.kmpp-detail-bottom{display:flex;justify-content:center;padding:22px 0 2px;}
.kmpp-detail-bottom a{display:inline-flex;align-items:center;min-height:40px;padding:9px 14px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#687586!important;font-size:12.5px;}

/* FORM */
.kmpp-form{scroll-margin-top:90px;margin:0 0 18px;padding:18px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow);}
.kmpp-form-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:13px;border-bottom:1px solid var(--line2);}
.kmpp-form-head span{display:block;color:#8190a2;font-size:10px;letter-spacing:.14em;margin-bottom:4px;}
.kmpp-form-head h3{margin:0;color:#1b293c;font-size:21px;letter-spacing:-.03em;}
.kmpp-form-head a{color:#84909d!important;font-size:12px;}
.kmpp-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;}
.kmpp-form-grid label,.kmpp-existing-gallery{display:block;margin:0;}
.kmpp-form-grid .full{grid-column:1/-1;}
.kmpp-form-grid label>span:first-child,.kmpp-field-title{display:block;margin-bottom:6px;color:#445165;font-size:12px;font-weight:500;}
.kmpp-form-grid input[type="text"],.kmpp-form-grid input[type="url"],.kmpp-form-grid input[type="number"],.kmpp-form-grid select,.kmpp-form-grid textarea,.kmpp-form-grid input[type="file"]{width:100%;border:1px solid #dfe6ed;border-radius:10px;background:#fff;color:#344155;font-size:13px;outline:none;}
.kmpp-form-grid input[type="text"],.kmpp-form-grid input[type="url"],.kmpp-form-grid input[type="number"],.kmpp-form-grid select{min-height:41px;padding:9px 11px;}
.kmpp-form-grid textarea{padding:11px;line-height:1.65;resize:vertical;}
.kmpp-form-grid input[type="file"]{padding:9px;background:#fafbfd;}
.kmpp-form-grid input:focus,.kmpp-form-grid select:focus,.kmpp-form-grid textarea:focus{border-color:#95b4d2;box-shadow:0 0 0 3px rgba(76,125,171,.08);}
.kmpp-form-grid small{display:block;margin-top:5px;color:#929ca8;font-size:10.5px;line-height:1.5;}
.kmpp-pin-option{padding:14px;border:1px solid #e7dfcf;border-radius:13px;background:#fffcf6;}
.kmpp-pin-row{display:flex!important;align-items:center;gap:8px;margin:7px 0 0!important;color:#6b5b3f!important;}
.kmpp-pin-priority-row{display:flex!important;align-items:center;gap:8px;margin-top:10px!important;}
.kmpp-pin-priority-row em{font-style:normal;color:#6f6552;font-size:11.5px;}
.kmpp-pin-priority-row input{width:90px!important;}
.kmpp-photo-preview{display:block;max-width:260px;width:100%;margin-top:9px;aspect-ratio:4/3;object-fit:cover;border-radius:12px;border:1px solid var(--line);}
.kmpp-photo-preview[hidden]{display:none!important;}
.kmpp-gallery-preview{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:8px;}
.kmpp-gallery-preview img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:9px;border:1px solid var(--line);}
.kmpp-existing-gallery{padding:14px;border:1px solid var(--line);border-radius:13px;background:#fafbfd;}
.kmpp-existing-gallery-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:8px;}
.kmpp-existing-image{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff;}
.kmpp-existing-image img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;}
.kmpp-existing-image>span{display:flex!important;align-items:center;gap:5px!important;padding:7px!important;margin:0!important;color:#7b6570!important;font-size:10px!important;}
.kmpp-form-actions{display:flex;justify-content:flex-end;margin-top:16px;}
.kmpp-form-actions button{min-height:43px;padding:10px 18px;border:0;border-radius:11px;background:linear-gradient(135deg,#17365f,#315f9f);color:#fff;font-size:13px;cursor:pointer;box-shadow:0 10px 22px rgba(49,95,159,.16);}

@media(max-width:1240px){
  .kmpp-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
  .kmpp-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:980px){
  .kmpp-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .kmpp-detail-hero{grid-template-columns:230px minmax(0,1fr);gap:20px;}
  .kmpp-detail-card-grid{grid-template-columns:1fr;}
  .kmpp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .kmpp-gallery-preview,.kmpp-existing-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media(max-width:767px){
  .kmpp-shell{width:calc(100% - 12px);padding:12px 0 24px;}
  .kmpp-heading{align-items:flex-start;margin-bottom:12px;padding:0 4px;}
  .kmpp-heading h2{font-size:25px;}
  .kmpp-heading p{font-size:12.8px;line-height:1.55;}
  .kmpp-kicker{font-size:9.6px;}
  .kmpp-admin-add{min-height:38px;padding:8px 11px;border-radius:10px;font-size:11.5px;white-space:nowrap;}
  .kmpp-tabs{gap:4px;margin-bottom:10px;padding:4px;border-radius:13px;}
  .kmpp-tab{min-height:37px;padding:7px 3px;border-radius:9px;font-size:11.5px;}
  .kmpp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .kmpp-card{border-radius:13px;}
  .kmpp-card-body{padding:10px 10px 11px;}
  .kmpp-card-body h3{font-size:14.5px;}
  .kmpp-name-en{font-size:9.8px;}
  .kmpp-tagline{margin-top:6px;min-height:30px;font-size:10.8px;line-height:1.48;}
  .kmpp-expertise,.kmpp-org,.kmpp-view{font-size:10px;}
  .kmpp-badge{left:7px;bottom:7px;min-height:23px;padding:4px 7px;font-size:9.7px;}
  .kmpp-pin-badge{right:7px;top:7px;font-size:8.8px;min-height:21px;}
  .kmpp-admin-actions{gap:6px;padding:7px 8px;font-size:9.5px;}

  .kmpp-detail-toolbar{margin-bottom:8px;padding:0 2px;}
  .kmpp-back,.kmpp-edit-detail{min-height:35px;padding:7px 9px;border-radius:9px;font-size:11px;}
  .kmpp-detail-hero{grid-template-columns:1fr;gap:14px;padding:15px;border-radius:17px;}
  .kmpp-detail-photo-wrap{justify-content:flex-start;}
  .kmpp-detail-photo{width:210px;max-width:72vw;border-radius:14px;}
  .kmpp-detail-identity h1{margin-top:9px;font-size:29px;}
  .kmpp-detail-en{font-size:11.5px;}
  .kmpp-detail-tagline{margin-top:10px;font-size:13px;line-height:1.65;}
  .kmpp-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:14px;}
  .kmpp-fact{padding:9px;border-radius:10px;}
  .kmpp-fact span{font-size:9.5px;}
  .kmpp-fact strong{font-size:11px;}
  .kmpp-website-button{min-height:35px;margin-top:10px;font-size:11px;}
  .kmpp-detail-card-grid{gap:8px;margin-top:8px;}
  .kmpp-info-card,.kmpp-content-card,.kmpp-gallery-card{border-radius:15px;}
  .kmpp-info-card{padding:15px;}
  .kmpp-content-card,.kmpp-gallery-card{margin-top:8px;padding:15px;}
  .kmpp-info-card h2,.kmpp-section-heading h2{font-size:16.5px;}
  .kmpp-chip-list{gap:5px;margin-top:11px;}
  .kmpp-chip-list span{min-height:27px;padding:5px 8px;font-size:10.3px;}
  .kmpp-career-list{gap:8px;margin-top:10px;}
  .kmpp-career-list p{font-size:11.5px;line-height:1.55;}
  .kmpp-richtext{font-size:12.2px;line-height:1.75;}
  .kmpp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;}
  .kmpp-detail-bottom{padding-top:14px;}

  .kmpp-form{padding:13px;border-radius:16px;}
  .kmpp-form-grid{grid-template-columns:1fr;gap:10px;}
  .kmpp-form-grid .full{grid-column:1;}
  .kmpp-gallery-preview,.kmpp-existing-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .kmpp-form-head h3{font-size:18px;}
}
@media(max-width:390px){
  .kmpp-grid{gap:6px;}
  .kmpp-detail-photo{width:190px;}
  .kmpp-detail-facts{grid-template-columns:1fr 1fr;}
  .kmpp-gallery-preview,.kmpp-existing-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* v1.3.0 — dedicated single profile page */
.kmpp-single-page{min-height:60vh;background:linear-gradient(180deg,#fbfdff 0%,#ffffff 38%,#ffffff 100%);padding:18px 0 40px;}
.kmpp-single-shell{padding-top:10px!important;}
body.single-km_professional .page-header,
body.single-km_professional .entry-header,
body.single-km_professional .post-navigation{display:none!important;}

.kmpp-detail-success{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px;padding:13px 15px;border:1px solid #d6e8df;border-radius:14px;background:#f5fbf7;color:#365f4e;box-shadow:0 7px 20px rgba(41,83,63,.035);}
.kmpp-detail-success>div{min-width:0;}
.kmpp-detail-success strong{display:block;font-size:13.5px;font-weight:600;}
.kmpp-detail-success span{display:block;margin-top:3px;color:#6c7f75;font-size:11.5px;line-height:1.5;}
.kmpp-detail-success>a{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 12px;border:1px solid #cfe1d7;border-radius:10px;background:#fff;color:#456b59!important;font-size:11.5px;}

.kmpp-list-primary{padding:10px 17px!important;border-color:#d9e3ed!important;color:#244d7d!important;box-shadow:0 7px 18px rgba(30,73,117,.05);}

.kmpp-recent{margin-top:24px;padding-top:22px;border-top:1px solid var(--line2);}
.kmpp-recent-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:13px;}
.kmpp-recent-head span{display:block;margin-bottom:5px;color:#8c99a8;font-size:9.8px;letter-spacing:.15em;}
.kmpp-recent-head h2{margin:0;color:#1c293a;font-size:20px;line-height:1.3;letter-spacing:-.03em;font-weight:600;}
.kmpp-recent-head>a{color:#60758d!important;font-size:11.5px;white-space:nowrap;}
.kmpp-recent-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;}
.kmpp-recent-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;color:inherit!important;box-shadow:0 7px 20px rgba(20,38,65,.035);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;}
.kmpp-recent-card:hover{transform:translateY(-2px);border-color:#d4dee8;box-shadow:0 12px 28px rgba(20,38,65,.07);}
.kmpp-recent-photo{overflow:hidden;aspect-ratio:4/3;background:#f2f5f8;}
.kmpp-recent-photo img{display:block;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;}
.kmpp-recent-body{padding:10px 11px 11px;}
.kmpp-recent-type{display:inline-flex;margin-bottom:6px;color:#547493;font-size:9.7px;}
.kmpp-recent-body h3{margin:0;color:#243246;font-size:13.5px;line-height:1.35;letter-spacing:-.02em;font-weight:600;}
.kmpp-recent-body p{margin:5px 0 0;color:#7d8997;font-size:10.3px;line-height:1.45;overflow-wrap:anywhere;}
.kmpp-recent-body time{display:block;margin-top:8px;padding-top:7px;border-top:1px solid var(--line2);color:#a1abb6;font-size:8.8px;letter-spacing:.05em;}

.kmpp-form-head-actions{display:flex;align-items:center;gap:10px;}
.kmpp-form-head-actions .kmpp-form-list{display:inline-flex;align-items:center;min-height:31px;padding:6px 9px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#5c6f84!important;}
.kmpp-form-actions{gap:9px;align-items:center;}
.kmpp-form-actions>a{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:10px 14px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#637184!important;font-size:12px;}

@media(max-width:1240px){
  .kmpp-recent-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media(max-width:980px){
  .kmpp-recent-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:767px){
  .kmpp-single-page{padding:6px 0 24px;}
  .kmpp-detail-success{align-items:flex-start;gap:10px;padding:11px 12px;border-radius:12px;}
  .kmpp-detail-success strong{font-size:12.5px;}
  .kmpp-detail-success span{font-size:10.5px;}
  .kmpp-detail-success>a{min-height:33px;padding:7px 9px;font-size:10.5px;}
  .kmpp-recent{margin-top:17px;padding-top:16px;}
  .kmpp-recent-head{margin-bottom:9px;}
  .kmpp-recent-head h2{font-size:17px;}
  .kmpp-recent-head>a{font-size:10.5px;}
  .kmpp-recent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}
  .kmpp-recent-card{border-radius:12px;}
  .kmpp-recent-body{padding:8px 9px 9px;}
  .kmpp-recent-body h3{font-size:12.5px;}
  .kmpp-recent-body p{font-size:9.8px;}
  .kmpp-form-head{align-items:flex-start;}
  .kmpp-form-head-actions{gap:6px;flex-wrap:wrap;justify-content:flex-end;}
  .kmpp-form-head-actions .kmpp-form-list{font-size:10.5px;}
  .kmpp-form-actions{justify-content:space-between;}
}

/* v1.4.0 — 20 profiles per page + mobile single-card slider */
.kmpp .kmpp-directory-status{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin:-4px 2px 10px;color:#7d8997;font-size:11px;line-height:1.4;}
.kmpp .kmpp-directory-status span{color:#355c89;font-weight:600;}
.kmpp .kmpp-directory-status em{font-style:normal;color:#98a2ae;}
.kmpp .kmpp-mobile-slider{width:100%;min-width:0;}
.kmpp .kmpp-mobile-slider-controls{display:none;}

.kmpp .kmpp-pagination{margin-top:22px;padding-top:17px;border-top:1px solid var(--line2);}
.kmpp .kmpp-pagination-desktop{display:flex;align-items:center;justify-content:space-between;gap:18px;}
.kmpp .kmpp-page-summary{color:#8b96a3;font-size:11.5px;white-space:nowrap;}
.kmpp .kmpp-page-links{display:flex;align-items:center;justify-content:flex-end;gap:6px;}
.kmpp .kmpp-page-number,
.kmpp .kmpp-page-arrow{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 9px;border:1px solid #e1e7ee;border-radius:10px;background:#fff;color:#657589!important;font-size:11.5px;line-height:1;box-shadow:0 4px 12px rgba(20,38,65,.025);transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease;}
.kmpp .kmpp-page-number:hover,
.kmpp .kmpp-page-arrow:hover{border-color:#ccd9e6;background:#f8fbfe;color:#315f9f!important;transform:translateY(-1px);}
.kmpp .kmpp-page-number.is-current{border-color:#315f9f;background:#315f9f;color:#fff!important;box-shadow:0 7px 16px rgba(49,95,159,.15);}
.kmpp .kmpp-page-arrow.is-disabled{opacity:.35;box-shadow:none;pointer-events:none;}
.kmpp .kmpp-page-ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:36px;color:#9ba5b1;font-size:12px;}
.kmpp .kmpp-pagination-mobile{display:none;}

/* Desktop: keep 5 cards in a row. */
@media(min-width:1024px){
  .kmpp .kmpp-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;overflow:visible!important;padding:0!important;}
  .kmpp .kmpp-card{width:auto!important;max-width:none!important;flex:none!important;}
}

/* Tablet: compact 3-column layout; mobile slider starts below 768px. */
@media(min-width:768px) and (max-width:1023px){
  .kmpp .kmpp-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:11px!important;overflow:visible!important;padding:0!important;}
  .kmpp .kmpp-card{width:auto!important;max-width:none!important;flex:none!important;}
}

@media(max-width:767px){
  .kmpp .kmpp-directory-status{justify-content:flex-start;margin:0 4px 8px;font-size:10px;}
  .kmpp .kmpp-mobile-slider{position:relative;overflow:hidden;}
  .kmpp .kmpp-grid{
    display:flex!important;
    grid-template-columns:none!important;
    align-items:stretch!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:2px 4px 9px!important;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    scroll-padding-inline:4px;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    touch-action:pan-x pan-y;
  }
  .kmpp .kmpp-grid::-webkit-scrollbar{display:none;width:0;height:0;}
  .kmpp .kmpp-card{
    flex:0 0 calc(100% - 8px)!important;
    width:calc(100% - 8px)!important;
    max-width:calc(100% - 8px)!important;
    min-width:calc(100% - 8px)!important;
    scroll-snap-align:center;
    scroll-snap-stop:always;
    border-radius:16px!important;
    transform:none!important;
  }
  .kmpp .kmpp-card:hover{transform:none!important;}
  .kmpp .kmpp-photo{aspect-ratio:4/3;}
  .kmpp .kmpp-card-body{padding:14px 14px 15px;}
  .kmpp .kmpp-card-body h3{font-size:17px;}
  .kmpp .kmpp-name-en{font-size:11px;}
  .kmpp .kmpp-tagline{min-height:0;margin-top:8px;font-size:12px;line-height:1.55;}
  .kmpp .kmpp-expertise,.kmpp .kmpp-org,.kmpp .kmpp-view{font-size:11.2px;}
  .kmpp .kmpp-admin-actions{padding:9px 11px;font-size:10px;}

  .kmpp .kmpp-mobile-slider-controls{display:flex;align-items:center;justify-content:center;gap:14px;margin:7px 0 1px;}
  .kmpp .kmpp-slide-button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid #dde5ed;border-radius:50%;background:#fff;color:#365c87;font-family:inherit;font-size:17px;line-height:1;box-shadow:0 6px 16px rgba(20,38,65,.05);cursor:pointer;transition:opacity .18s ease,border-color .18s ease,background .18s ease;}
  .kmpp .kmpp-slide-button:disabled{opacity:.28;cursor:default;box-shadow:none;}
  .kmpp .kmpp-slide-count{display:flex;align-items:baseline;justify-content:center;gap:5px;min-width:62px;color:#9aa4b0;font-size:10px;letter-spacing:.02em;}
  .kmpp .kmpp-slide-count strong{color:#315f9f;font-size:14px;font-weight:600;}
  .kmpp .kmpp-slide-count em{font-style:normal;color:#7f8b98;font-size:11px;}

  .kmpp .kmpp-pagination{margin-top:14px;padding-top:13px;}
  .kmpp .kmpp-pagination-desktop{display:none!important;}
  .kmpp .kmpp-pagination-mobile{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:7px;}
  .kmpp .kmpp-mobile-page-button{display:flex;align-items:center;justify-content:center;min-height:40px;padding:9px 8px;border:1px solid #dfe6ed;border-radius:11px;background:#fff;color:#496889!important;font-size:10.6px;line-height:1.2;text-align:center;box-shadow:0 5px 14px rgba(20,38,65,.03);}
  .kmpp .kmpp-mobile-page-button:last-child{justify-self:stretch;}
  .kmpp .kmpp-mobile-page-button.is-disabled{opacity:.34;color:#8d98a5!important;pointer-events:none;box-shadow:none;}
  .kmpp .kmpp-mobile-page-count{display:inline-flex;align-items:baseline;justify-content:center;gap:3px;min-width:48px;color:#9aa4b0;font-size:10px;white-space:nowrap;}
  .kmpp .kmpp-mobile-page-count b{color:#315f9f;font-size:13px;font-weight:600;}
}

@media(max-width:390px){
  .kmpp .kmpp-grid{gap:8px!important;padding-left:3px!important;padding-right:3px!important;scroll-padding-inline:3px;}
  .kmpp .kmpp-card{flex-basis:calc(100% - 6px)!important;width:calc(100% - 6px)!important;max-width:calc(100% - 6px)!important;min-width:calc(100% - 6px)!important;}
  .kmpp .kmpp-mobile-page-button{font-size:10px;padding-left:5px;padding-right:5px;}
}

/* v1.4.0 exact one-card mobile viewport override */
@media(max-width:767px){
  .kmpp .kmpp-grid{padding-left:0!important;padding-right:0!important;scroll-padding-inline:0!important;}
  .kmpp .kmpp-card{flex:0 0 100%!important;width:100%!important;max-width:100%!important;min-width:100%!important;scroll-snap-align:start;}
}
@media(max-width:390px){
  .kmpp .kmpp-grid{padding-left:0!important;padding-right:0!important;scroll-padding-inline:0!important;}
  .kmpp .kmpp-card{flex-basis:100%!important;width:100%!important;max-width:100%!important;min-width:100%!important;}
}


/* v1.5.0 — business-card profiles, reliable 5-image references, polished mobile UI */
.kmpp-notice.kmpp-upload-notice.warning{border-color:#eadfc7;background:#fffaf1;color:#765f34;}
.kmpp-notice.kmpp-upload-notice.error{border-color:#ecd1d1;background:#fff7f7;color:#8c4b4b;}

/* Directory cards: portrait on the left, profile information on the right. */
.kmpp .kmpp-card{height:100%;}
.kmpp .kmpp-card-main{
  display:grid!important;
  grid-template-columns:minmax(104px,42%) minmax(0,58%);
  align-items:stretch;
  min-height:196px;
  height:100%;
}
.kmpp .kmpp-photo{
  min-height:196px;
  height:100%;
  aspect-ratio:auto!important;
  border-right:1px solid var(--line2);
  background:linear-gradient(180deg,#f3f6f9,#edf2f6);
}
.kmpp .kmpp-photo img{object-position:center top!important;}
.kmpp .kmpp-card-body{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  padding:15px 14px 14px;
}
.kmpp .kmpp-card-body h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
.kmpp .kmpp-name-en{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.kmpp .kmpp-tagline{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:0;}
.kmpp .kmpp-expertise{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
.kmpp .kmpp-org{margin-top:auto;}
.kmpp .kmpp-view{padding-top:2px;}
.kmpp .kmpp-badge{left:8px;bottom:8px;}
.kmpp .kmpp-pin-badge{right:8px;top:8px;}

/* Detail page: one clean profile card with equal-height image and identity panel. */
.kmpp .kmpp-detail-hero{
  grid-template-columns:minmax(280px,340px) minmax(0,1fr);
  gap:0;
  align-items:stretch;
  min-height:390px;
  padding:0;
  background:linear-gradient(135deg,#fff 0%,#fbfdff 100%);
}
.kmpp .kmpp-detail-photo-wrap{display:block;min-height:390px;height:100%;}
.kmpp .kmpp-detail-photo{
  width:100%;
  max-width:none;
  height:100%;
  min-height:390px;
  aspect-ratio:auto;
  border:0;
  border-right:1px solid var(--line);
  border-radius:0;
  box-shadow:none;
}
.kmpp .kmpp-detail-photo img{object-position:center top!important;}
.kmpp .kmpp-detail-identity{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:34px 36px;
}
.kmpp .kmpp-detail-facts{max-width:920px;}

/* Activity/reference gallery — five across on desktop, swipe slider on mobile. */
.kmpp .kmpp-gallery-heading em{font-style:normal;color:#8a96a4;white-space:nowrap;}
.kmpp .kmpp-gallery-viewport{width:100%;overflow:hidden;}
.kmpp .kmpp-gallery-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  width:100%;
}
.kmpp .kmpp-gallery-item{aspect-ratio:4/3;border-radius:13px;box-shadow:0 7px 18px rgba(20,38,65,.035);}
.kmpp .kmpp-gallery-controls{display:none;}

/* Upload UX */
.kmpp .kmpp-upload-field{position:relative;padding:14px;border:1px solid #e5ebf1;border-radius:14px;background:#fbfcfe;}
.kmpp .kmpp-gallery-limit{display:flex;align-items:baseline;gap:5px;position:absolute;right:14px;top:13px;color:#8b96a3;}
.kmpp .kmpp-gallery-limit strong{color:#315f9f;font-weight:600;}
.kmpp .kmpp-gallery-limit span{margin:0!important;color:#8b96a3!important;font-weight:400!important;}
.kmpp .kmpp-file-error{margin-top:7px;color:#a45d5d;line-height:1.5;}
.kmpp .kmpp-file-error:empty{display:none;}
.kmpp .kmpp-gallery-preview-item{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff;}
.kmpp .kmpp-gallery-preview-item img{border:0!important;border-radius:0!important;}
.kmpp .kmpp-gallery-preview-item span{position:absolute;right:6px;top:6px;display:flex!important;align-items:center;justify-content:center;width:22px;height:22px;margin:0!important;border-radius:999px;background:rgba(16,39,70,.88);color:#fff!important;font-weight:600!important;box-shadow:0 4px 10px rgba(0,0,0,.12);}
.kmpp .kmpp-existing-image{transition:opacity .18s ease,transform .18s ease,border-color .18s ease;}
.kmpp .kmpp-existing-image.is-marked-remove{opacity:.38;transform:scale(.985);border-color:#dcaeae;}
.kmpp .kmpp-save-group{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;}
.kmpp .kmpp-save-status{color:#8290a0;text-align:right;line-height:1.4;}
.kmpp .kmpp-form-actions button:disabled{opacity:.65;cursor:progress;box-shadow:none;}

@media(min-width:768px) and (max-width:1023px){
  .kmpp .kmpp-card-main{grid-template-columns:minmax(118px,40%) minmax(0,60%);min-height:205px;}
  .kmpp .kmpp-photo{min-height:205px;}
  .kmpp .kmpp-detail-hero{grid-template-columns:minmax(240px,300px) minmax(0,1fr);min-height:360px;}
  .kmpp .kmpp-detail-photo-wrap,.kmpp .kmpp-detail-photo{min-height:360px;}
  .kmpp .kmpp-detail-identity{padding:28px;}
}

@media(max-width:767px){
  .kmpp .kmpp-card-main{
    grid-template-columns:minmax(118px,39%) minmax(0,61%);
    min-height:188px;
  }
  .kmpp .kmpp-photo{min-height:188px;border-right:1px solid var(--line2);}
  .kmpp .kmpp-card-body{padding:14px 13px 13px!important;}
  .kmpp .kmpp-tagline{-webkit-line-clamp:2;}
  .kmpp .kmpp-expertise{-webkit-line-clamp:2;}

  .kmpp .kmpp-detail-hero{grid-template-columns:1fr;min-height:0;padding:18px!important;gap:18px!important;}
  .kmpp .kmpp-detail-photo-wrap{display:flex;justify-content:center;min-height:0;height:auto;}
  .kmpp .kmpp-detail-photo{
    width:min(72vw,280px);
    height:auto;
    min-height:0;
    aspect-ratio:3/4;
    border:1px solid #e1e6ec;
    border-radius:18px;
    box-shadow:0 14px 30px rgba(20,38,65,.08);
  }
  .kmpp .kmpp-detail-identity{display:block;padding:0;}
  .kmpp .kmpp-detail-label-row{justify-content:center;}
  .kmpp .kmpp-detail-identity h1,.kmpp .kmpp-detail-en{text-align:center;}
  .kmpp .kmpp-detail-tagline{text-align:center;}
  .kmpp .kmpp-website-button{margin-left:auto;margin-right:auto;}

  .kmpp .kmpp-gallery-card{overflow:hidden;}
  .kmpp .kmpp-gallery-grid{
    display:flex!important;
    grid-template-columns:none!important;
    gap:10px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    touch-action:pan-x pan-y;
  }
  .kmpp .kmpp-gallery-grid::-webkit-scrollbar{display:none;}
  .kmpp .kmpp-gallery-item{
    flex:0 0 100%;
    width:100%;
    min-width:100%;
    max-width:100%;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    aspect-ratio:4/3;
  }
  .kmpp .kmpp-gallery-controls{display:flex;align-items:center;justify-content:center;gap:13px;margin-top:12px;}
  .kmpp .kmpp-gallery-controls button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid #dde5ed;border-radius:50%;background:#fff;color:#365c87;box-shadow:0 6px 16px rgba(20,38,65,.05);cursor:pointer;}
  .kmpp .kmpp-gallery-controls button:disabled{opacity:.28;cursor:default;box-shadow:none;}
  .kmpp .kmpp-gallery-controls span{display:flex;align-items:baseline;gap:4px;color:#9aa4b0;}
  .kmpp .kmpp-gallery-controls b{color:#315f9f;font-weight:600;}
  .kmpp .kmpp-gallery-controls em{font-style:normal;color:#7f8b98;}

  .kmpp .kmpp-gallery-preview,.kmpp .kmpp-existing-gallery-grid{
    display:flex!important;
    grid-template-columns:none!important;
    gap:8px;
    overflow-x:auto;
    padding-bottom:4px;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }
  .kmpp .kmpp-gallery-preview::-webkit-scrollbar,.kmpp .kmpp-existing-gallery-grid::-webkit-scrollbar{display:none;}
  .kmpp .kmpp-gallery-preview-item,.kmpp .kmpp-existing-image{flex:0 0 72%;max-width:260px;scroll-snap-align:start;}
  .kmpp .kmpp-gallery-preview-item img,.kmpp .kmpp-existing-image img{aspect-ratio:4/3;}
  .kmpp .kmpp-gallery-limit{position:static;margin:2px 0 8px;}
  .kmpp .kmpp-save-group{flex-direction:column;align-items:flex-end;gap:5px;}
  .kmpp .kmpp-save-status{max-width:210px;}
}

@media(max-width:420px){
  .kmpp .kmpp-card-main{grid-template-columns:minmax(112px,40%) minmax(0,60%);min-height:184px;}
  .kmpp .kmpp-photo{min-height:184px;}
  .kmpp .kmpp-detail-photo{width:min(76vw,270px);}
}

/* v1.6.0 — wider business cards, 3-column grid / 15 per page, 7-image 16:9 gallery slider, auto-optimized upload UX */
.kmpp-shell{width:min(1520px,calc(100% - 28px));}
.kmpp .kmpp-directory-status{font-size:12px;}
.kmpp .kmpp-page-summary{font-size:12px;}

@media(min-width:768px){
  .kmpp .kmpp-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
    overflow:visible!important;
    padding:0!important;
  }
  .kmpp .kmpp-card{
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    border-radius:18px!important;
  }
  .kmpp .kmpp-card-main{
    grid-template-columns:156px minmax(0,1fr)!important;
    min-height:236px!important;
  }
  .kmpp .kmpp-photo{
    min-height:236px!important;
  }
  .kmpp .kmpp-card-body{
    padding:18px 17px 16px!important;
  }
  .kmpp .kmpp-card-body h3{font-size:21px!important;}
  .kmpp .kmpp-name-en{font-size:14px!important;}
  .kmpp .kmpp-tagline{margin-top:8px!important;font-size:14px!important;line-height:1.6!important;}
  .kmpp .kmpp-expertise{margin-top:10px!important;font-size:13px!important;line-height:1.55!important;}
  .kmpp .kmpp-org{margin-top:auto!important;padding-top:12px!important;font-size:13px!important;line-height:1.5!important;}
  .kmpp .kmpp-view{margin-top:13px!important;font-size:13px!important;}
  .kmpp .kmpp-view b{font-size:17px!important;}
  .kmpp .kmpp-admin-actions{padding:10px 14px!important;font-size:11px!important;}
}

@media(min-width:1200px){
  .kmpp .kmpp-card-main{grid-template-columns:170px minmax(0,1fr)!important;min-height:248px!important;}
  .kmpp .kmpp-photo{min-height:248px!important;}
}

/* Mobile list stays one-card slider */
@media(max-width:767px){
  .kmpp .kmpp-grid{
    display:flex!important;
    gap:12px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:2px 0 10px!important;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .kmpp .kmpp-card{flex:0 0 100%!important;width:100%!important;min-width:100%!important;max-width:100%!important;}
  .kmpp .kmpp-card-main{grid-template-columns:132px minmax(0,1fr)!important;min-height:214px!important;}
  .kmpp .kmpp-photo{min-height:214px!important;}
  .kmpp .kmpp-card-body h3{font-size:19px!important;}
  .kmpp .kmpp-name-en{font-size:13px!important;}
  .kmpp .kmpp-tagline,.kmpp .kmpp-expertise,.kmpp .kmpp-org,.kmpp .kmpp-view{font-size:12.5px!important;}
}

/* Gallery/reference section: 16:9, desktop 3 per slide, mobile 1 per slide */
.kmpp .kmpp-gallery-viewport{overflow:hidden;width:100%;}
.kmpp .kmpp-gallery-grid{
  display:flex!important;
  gap:12px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px 0 4px!important;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.kmpp .kmpp-gallery-grid::-webkit-scrollbar{display:none;width:0;height:0;}
.kmpp .kmpp-gallery-item{
  overflow:hidden;
  border:1px solid #e6ecf2;
  border-radius:16px;
  background:#f3f6f9;
  scroll-snap-align:start;
  scroll-snap-stop:always;
  aspect-ratio:16/9!important;
  box-shadow:0 8px 20px rgba(20,38,65,.04);
}
.kmpp .kmpp-gallery-item img{
  display:block;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
.kmpp .kmpp-gallery-controls{display:flex!important;align-items:center;justify-content:center;gap:13px;margin-top:14px;}
.kmpp .kmpp-gallery-controls button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid #dde5ed;border-radius:50%;background:#fff;color:#365c87;box-shadow:0 6px 16px rgba(20,38,65,.05);cursor:pointer;transition:.18s ease;}
.kmpp .kmpp-gallery-controls button:disabled{opacity:.28;cursor:default;box-shadow:none;}
.kmpp .kmpp-gallery-controls span{display:flex;align-items:baseline;gap:4px;color:#9aa4b0;font-size:12px;}
.kmpp .kmpp-gallery-controls b{color:#315f9f;font-size:15px;font-weight:600;}
.kmpp .kmpp-gallery-controls em{font-style:normal;color:#7f8b98;}

@media(min-width:1024px){
  .kmpp .kmpp-gallery-item{flex:0 0 calc((100% - 24px) / 3)!important;min-width:calc((100% - 24px) / 3)!important;max-width:calc((100% - 24px) / 3)!important;}
}
@media(min-width:768px) and (max-width:1023px){
  .kmpp .kmpp-gallery-item{flex:0 0 calc((100% - 12px) / 2)!important;min-width:calc((100% - 12px) / 2)!important;max-width:calc((100% - 12px) / 2)!important;}
}
@media(max-width:767px){
  .kmpp .kmpp-gallery-item{flex:0 0 100%!important;min-width:100%!important;max-width:100%!important;}
}

/* Upload area previews and existing images in 16:9 */
.kmpp .kmpp-gallery-preview{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}
.kmpp .kmpp-gallery-preview-item,
.kmpp .kmpp-existing-image{
  position:relative;
  overflow:hidden;
  border:1px solid #e4eaf1;
  border-radius:14px;
  background:#fff;
}
.kmpp .kmpp-gallery-preview-item img,
.kmpp .kmpp-existing-image img{
  display:block;
  width:100%!important;
  aspect-ratio:16/9!important;
  height:auto!important;
  object-fit:cover!important;
  object-position:center!important;
}
.kmpp .kmpp-existing-gallery-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}
.kmpp .kmpp-existing-image span{display:flex;align-items:center;gap:6px;padding:8px 10px;font-size:12px;line-height:1.4;}
.kmpp .kmpp-photo-preview{
  display:block;
  width:min(420px,100%);
  margin-top:10px;
  border-radius:14px;
  aspect-ratio:16/9;
  object-fit:cover;
  background:#eef3f7;
  border:1px solid #dfe7ef;
}

@media(max-width:767px){
  .kmpp .kmpp-gallery-preview,
  .kmpp .kmpp-existing-gallery-grid{
    display:flex!important;
    grid-template-columns:none!important;
    gap:10px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding-bottom:4px!important;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .kmpp .kmpp-gallery-preview::-webkit-scrollbar,
  .kmpp .kmpp-existing-gallery-grid::-webkit-scrollbar{display:none;width:0;height:0;}
  .kmpp .kmpp-gallery-preview-item,
  .kmpp .kmpp-existing-image{flex:0 0 100%!important;min-width:100%!important;max-width:100%!important;scroll-snap-align:start;}
}

/* Detail hero slightly cleaner */
@media(min-width:768px){
  .kmpp .kmpp-detail-hero{grid-template-columns:minmax(300px,360px) minmax(0,1fr)!important;}
}


/* v1.6.1 — wider horizontal business cards and wider portrait column */
.kmpp-shell{width:min(1620px,calc(100% - 28px))!important;}
@media(min-width:1024px){
  .kmpp .kmpp-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;}
  .kmpp .kmpp-card{border-radius:20px!important;}
  .kmpp .kmpp-card-main{grid-template-columns:200px minmax(0,1fr)!important;min-height:262px!important;}
  .kmpp .kmpp-photo{min-height:262px!important;}
  .kmpp .kmpp-photo img{object-fit:cover!important;object-position:center 18%!important;transform:none!important;}
  .kmpp .kmpp-card-body{padding:18px 19px 17px!important;}
  .kmpp .kmpp-card-body h3{font-size:22px!important;}
  .kmpp .kmpp-name-en{font-size:14.5px!important;}
  .kmpp .kmpp-tagline{font-size:14.2px!important;line-height:1.62!important;}
  .kmpp .kmpp-expertise{font-size:13.3px!important;line-height:1.58!important;}
  .kmpp .kmpp-org{font-size:13.2px!important;line-height:1.52!important;}
  .kmpp .kmpp-view{font-size:13.2px!important;}
}
@media(min-width:1320px){
  .kmpp .kmpp-card-main{grid-template-columns:216px minmax(0,1fr)!important;min-height:274px!important;}
  .kmpp .kmpp-photo{min-height:274px!important;}
}
@media(min-width:768px) and (max-width:1023px){
  .kmpp-shell{width:min(1500px,calc(100% - 24px))!important;}
  .kmpp .kmpp-card-main{grid-template-columns:180px minmax(0,1fr)!important;min-height:242px!important;}
  .kmpp .kmpp-photo{min-height:242px!important;}
}
@media(max-width:767px){
  .kmpp .kmpp-card-main{grid-template-columns:146px minmax(0,1fr)!important;min-height:226px!important;}
  .kmpp .kmpp-photo{min-height:226px!important;}
}


/* v1.6.2 — full-image preview for profile photo upload */
.kmpp .kmpp-photo-preview[hidden]{display:none!important;}
.kmpp .kmpp-photo-preview{
  display:block;
  width:min(420px,100%);
  max-width:100%;
  height:auto!important;
  max-height:280px;
  margin-top:10px;
  padding:8px;
  border-radius:14px;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#f6f8fb;
  border:1px solid #dfe7ef;
}
.kmpp .kmpp-upload-field .kmpp-photo-preview{box-shadow:none!important;}
@media(max-width:767px){
  .kmpp .kmpp-photo-preview{width:100%;max-height:220px;padding:6px;}
}


/* v1.6.3 — even wider horizontal profile cards */
.kmpp-shell{width:min(1760px,calc(100% - 24px))!important;}
.kmpp .kmpp-heading{margin-bottom:20px!important;}
@media(min-width:1280px){
  .kmpp .kmpp-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;}
  .kmpp .kmpp-card{border-radius:20px!important;}
  .kmpp .kmpp-card-main{grid-template-columns:232px minmax(0,1fr)!important;min-height:284px!important;}
  .kmpp .kmpp-photo{min-height:284px!important;}
  .kmpp .kmpp-photo img{object-fit:cover!important;object-position:center 18%!important;}
  .kmpp .kmpp-card-body{padding:20px 20px 18px!important;}
  .kmpp .kmpp-card-body h3{font-size:23px!important;line-height:1.28!important;}
  .kmpp .kmpp-name-en{font-size:15px!important;}
  .kmpp .kmpp-tagline{font-size:14.5px!important;line-height:1.65!important;}
  .kmpp .kmpp-expertise{font-size:13.5px!important;line-height:1.6!important;}
  .kmpp .kmpp-org{font-size:13.4px!important;line-height:1.55!important;padding-top:12px!important;}
  .kmpp .kmpp-view{font-size:13.5px!important;margin-top:14px!important;}
}
@media(min-width:1024px) and (max-width:1279px){
  .kmpp-shell{width:min(1660px,calc(100% - 24px))!important;}
  .kmpp .kmpp-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;}
  .kmpp .kmpp-card-main{grid-template-columns:210px minmax(0,1fr)!important;min-height:268px!important;}
  .kmpp .kmpp-photo{min-height:268px!important;}
}
@media(min-width:768px) and (max-width:1023px){
  .kmpp-shell{width:min(1520px,calc(100% - 20px))!important;}
  .kmpp .kmpp-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;}
  .kmpp .kmpp-card-main{grid-template-columns:196px minmax(0,1fr)!important;min-height:252px!important;}
  .kmpp .kmpp-photo{min-height:252px!important;}
}
@media(max-width:767px){
  .kmpp-shell{width:min(100%,calc(100% - 16px))!important;}
  .kmpp .kmpp-card-main{grid-template-columns:154px minmax(0,1fr)!important;min-height:230px!important;}
  .kmpp .kmpp-photo{min-height:230px!important;}
}


/* v1.6.4 — verified wider profile cards, cleaner vertical spacing, passport-style image framing */
.kmpp-shell{width:min(1840px,calc(100% - 24px))!important;}
.kmpp .kmpp-heading{margin-bottom:22px!important;}
.kmpp .kmpp-tabs{margin-bottom:18px!important;}
.kmpp .kmpp-directory-status{margin:2px 2px 14px!important;}
.kmpp .kmpp-card{border-radius:22px!important;overflow:hidden!important;}
.kmpp .kmpp-card-main{align-items:stretch!important;}
.kmpp .kmpp-photo{display:flex!important;align-items:center!important;justify-content:center!important;padding:10px!important;background:linear-gradient(180deg,#f8fafc 0%,#f3f6f9 100%)!important;overflow:hidden!important;}
.kmpp .kmpp-photo img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center top!important;background:#fff!important;border-radius:14px!important;}
.kmpp .kmpp-card-body{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;}
.kmpp .kmpp-card-body h3{margin:0 0 3px!important;}
.kmpp .kmpp-name-en{margin-top:0!important;}
.kmpp .kmpp-tagline{margin-top:10px!important;}
.kmpp .kmpp-expertise{margin-top:11px!important;}
.kmpp .kmpp-org{margin-top:auto!important;padding-top:14px!important;}
.kmpp .kmpp-view{margin-top:14px!important;padding-top:0!important;}
.kmpp .kmpp-admin-actions{padding-top:11px!important;padding-bottom:11px!important;}
@media(min-width:1360px){
  .kmpp .kmpp-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;}
  .kmpp .kmpp-card-main{grid-template-columns:220px minmax(0,1fr)!important;min-height:292px!important;}
  .kmpp .kmpp-photo{min-height:292px!important;}
  .kmpp .kmpp-card-body{padding:22px 22px 20px!important;}
  .kmpp .kmpp-card-body h3{font-size:23px!important;line-height:1.3!important;}
  .kmpp .kmpp-name-en{font-size:15px!important;line-height:1.45!important;}
  .kmpp .kmpp-tagline{font-size:14.4px!important;line-height:1.65!important;}
  .kmpp .kmpp-expertise{font-size:13.5px!important;line-height:1.62!important;}
  .kmpp .kmpp-org{font-size:13.3px!important;line-height:1.55!important;}
  .kmpp .kmpp-view{font-size:13.4px!important;}
}
@media(min-width:1024px) and (max-width:1359px){
  .kmpp-shell{width:min(1720px,calc(100% - 22px))!important;}
  .kmpp .kmpp-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;}
  .kmpp .kmpp-card-main{grid-template-columns:200px minmax(0,1fr)!important;min-height:276px!important;}
  .kmpp .kmpp-photo{min-height:276px!important;}
  .kmpp .kmpp-card-body{padding:20px 19px 18px!important;}
}
@media(min-width:768px) and (max-width:1023px){
  .kmpp-shell{width:min(1540px,calc(100% - 18px))!important;}
  .kmpp .kmpp-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;}
  .kmpp .kmpp-card-main{grid-template-columns:186px minmax(0,1fr)!important;min-height:258px!important;}
  .kmpp .kmpp-photo{min-height:258px!important;}
  .kmpp .kmpp-card-body{padding:18px 18px 16px!important;}
}
@media(max-width:767px){
  .kmpp-shell{width:min(100%,calc(100% - 16px))!important;}
  .kmpp .kmpp-card-main{grid-template-columns:148px minmax(0,1fr)!important;min-height:232px!important;}
  .kmpp .kmpp-photo{min-height:232px!important;padding:8px!important;}
  .kmpp .kmpp-card-body{padding:17px 15px 15px!important;}
  .kmpp .kmpp-card-body h3{font-size:20px!important;}
  .kmpp .kmpp-name-en{font-size:13px!important;}
  .kmpp .kmpp-tagline,.kmpp .kmpp-expertise,.kmpp .kmpp-org,.kmpp .kmpp-view{font-size:12.5px!important;line-height:1.55!important;}
}
