:root{
  --kap-red:#e51d2a;
  --kap-red-2:#ff3140;
  --kap-red-dark:#8f0711;
  --kap-black:#110e0b;
  --kap-black-2:#1c1712;
  --kap-ink:#17120f;
  --kap-cream:#f4efe6;
  --kap-cream-2:#ebe3d5;
  --kap-white:#fffdf9;
  --kap-gold:#c99832;
  --kap-gold-soft:#f1d48d;
  --kap-border:#e1d6c6;
  --kap-muted:#776b61;
  --kap-green:#16855b;
  --kap-danger:#b51724;
  --kap-shadow:0 18px 45px rgba(54,35,17,.10);
  --kap-radius:18px;
  --kap-sidebar:300px;
}

html{margin-top:0!important;background:var(--kap-cream)}
body.kap-body{margin:0!important;background:var(--kap-cream);color:var(--kap-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.45;-webkit-font-smoothing:antialiased}
body.kap-body *,body.kap-body *:before,body.kap-body *:after{box-sizing:border-box}
body.kap-body #wpadminbar{display:none!important}
body.kap-body a{text-decoration:none}
body.kap-body button,body.kap-body input,body.kap-body textarea,body.kap-body select{font:inherit}
body.kap-body h1,body.kap-body h2,body.kap-body h3,body.kap-body p{margin-top:0}
body.kap-body h1{font-size:38px;line-height:1.1;font-weight:500;letter-spacing:-.035em;margin-bottom:12px}
body.kap-body h2{font-size:20px;line-height:1.2;font-weight:650;letter-spacing:-.015em;margin-bottom:16px}
body.kap-body p{color:var(--kap-muted)}

.kap-shell{min-height:100vh;display:grid;grid-template-columns:var(--kap-sidebar) minmax(0,1fr);padding:28px;background:linear-gradient(135deg,#f7f2e9 0%,#efe8dc 100%)}
.kap-sidebar{position:sticky;top:28px;height:calc(100vh - 56px);background:linear-gradient(180deg,#120f0c 0%,#19130e 100%);border-radius:24px 0 0 24px;color:#fff;padding:30px 22px;overflow:auto;box-shadow:0 24px 70px rgba(30,18,8,.22);z-index:3}
.kap-brand-block{padding:0 8px 28px;border-bottom:1px solid rgba(255,255,255,.09);margin-bottom:20px}
.kap-brand-logo{display:block;max-width:170px;max-height:64px;object-fit:contain;object-position:left center}
.kap-wordmark{display:flex;flex-direction:column;align-items:flex-start;line-height:1}
.kap-wordmark strong{font-size:28px;color:var(--kap-red-2);letter-spacing:-.05em;font-weight:800}
.kap-wordmark span{font-family:Georgia,serif;font-size:18px;letter-spacing:.15em;color:#e6bf68;margin-top:4px}
.kap-brand-sub{font-size:10px;letter-spacing:.18em;color:#d5a43a;margin-top:7px;font-weight:800}
.kap-nav{display:flex;flex-direction:column;gap:6px}
.kap-nav-item{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:11px;color:#f9f5ee;font-size:15px;font-weight:650;transition:.2s ease;border:1px solid transparent}
.kap-nav-item:hover{background:rgba(229,29,42,.10);color:#fff;transform:translateX(2px)}
.kap-nav-item.is-active{background:linear-gradient(90deg,rgba(229,29,42,.20),rgba(201,152,50,.08));border-color:rgba(229,29,42,.18);box-shadow:inset 3px 0 0 var(--kap-red)}
.kap-nav-dot{width:18px;color:var(--kap-red-2);font-size:12px;text-align:center;flex:0 0 18px}
.kap-nav-logout{margin-top:14px;border-color:rgba(229,29,42,.35);color:#ffd8dc}

.kap-main{min-width:0;background:var(--kap-cream);border-radius:0 24px 24px 0;overflow:hidden;box-shadow:var(--kap-shadow)}
.kap-topbar{min-height:78px;background:rgba(255,253,249,.95);border-bottom:1px solid var(--kap-border);display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 30px;position:sticky;top:28px;z-index:2;backdrop-filter:blur(16px)}
.kap-topbar-title{font-size:17px;font-weight:600}
.kap-topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.kap-role-badge{background:var(--kap-black);color:#fff;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:800;white-space:nowrap}
.kap-content{padding:36px;max-width:1600px;margin:0 auto}
.kap-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:26px}
.kap-page-head p{max-width:850px;margin-bottom:0}
.kap-back{display:inline-block;color:var(--kap-red);font-size:13px;font-weight:800;margin-bottom:14px}

.kap-btn{appearance:none;border:1px solid transparent;border-radius:11px;padding:11px 15px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-size:13px;font-weight:800;transition:.2s ease;line-height:1.1;white-space:nowrap}
.kap-btn:hover{transform:translateY(-1px)}
.kap-btn-primary{background:linear-gradient(135deg,var(--kap-red-2),var(--kap-red));color:#fff;border-color:#ff5260;box-shadow:0 10px 24px rgba(229,29,42,.18)}
.kap-btn-primary:hover{background:linear-gradient(135deg,#ff4351,#cc111f)}
.kap-btn-dark{background:var(--kap-black);color:#fff;border-color:var(--kap-black)}
.kap-btn-light{background:#fffaf2;color:var(--kap-ink);border-color:var(--kap-border)}
.kap-btn-success{background:#147d58;color:#fff}
.kap-btn-danger{background:#fff1f2;color:#a10f1b;border-color:#efc1c5}
.kap-btn-small{padding:8px 11px;font-size:12px;border-radius:9px}
.kap-btn-shadow{box-shadow:0 14px 32px rgba(229,29,42,.24)}
.kap-link-btn{background:none;border:0;padding:0;color:#9d0b16;font-weight:800;font-size:12px;cursor:pointer;text-decoration:none!important}
.kap-link-btn:hover{color:var(--kap-red)}
.kap-link-danger{color:#b10b18}
.kap-success-text{color:var(--kap-green);font-weight:800;font-size:12px}
.kap-danger-text{color:var(--kap-danger)!important}
.kap-muted{color:#9a8d82;font-size:12px}

.kap-card{background:var(--kap-white);border:1px solid var(--kap-border);border-radius:var(--kap-radius);padding:26px;box-shadow:0 8px 24px rgba(59,37,19,.035);margin-bottom:20px}
.kap-card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}
.kap-card-head h2{margin:0}
.kap-card-head>a{font-size:12px;font-weight:800;color:#9b711d}
.kap-form-card{padding:30px}
.kap-table-card{padding:0;overflow:hidden}
.kap-filter-card{padding:18px}
.kap-pill{display:inline-flex;align-items:center;border-radius:999px;background:var(--kap-black);color:#fff;padding:7px 11px;font-size:11px;font-weight:800;white-space:nowrap}
.kap-pill-soft{background:#f6ead1;color:#8b651b;border:1px solid #ead2a0}
.kap-eyebrow{font-size:11px;letter-spacing:.22em;font-weight:900;color:var(--kap-red);margin-bottom:10px}
.kap-notice{padding:14px 16px;border-radius:12px;margin-bottom:20px;font-weight:700;font-size:13px;border:1px solid}
.kap-notice.is-success{background:#eff9f4;color:#176b4f;border-color:#cbe9db}
.kap-notice.is-error{background:#fff0f1;color:#9c1420;border-color:#efc2c6}
.kap-empty{padding:28px!important;text-align:center;color:#9a8d82!important;font-size:13px}
.kap-info-box{margin-top:22px;padding:18px;border-radius:13px;background:#f8f1e5;border:1px solid #eadbc5}
.kap-info-box p{margin:6px 0 0;font-size:13px}

.kap-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:20px}
.kap-stat-card{background:var(--kap-white);border:1px solid var(--kap-border);border-radius:16px;padding:23px 24px;min-height:145px;box-shadow:0 8px 24px rgba(59,37,19,.035);position:relative;overflow:hidden}
.kap-stat-card:after{content:"";position:absolute;right:-28px;bottom:-34px;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,rgba(229,29,42,.10),transparent 70%)}
.kap-stat-label{font-size:12px;font-weight:800;color:#6e5e50;margin-bottom:8px}
.kap-stat-value{font-family:Georgia,serif;font-size:39px;line-height:1;margin-bottom:10px}
.kap-stat-sub{font-size:12px;color:#88766a;max-width:180px}
.kap-dashboard-grid{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(280px,.9fr);gap:18px}
.kap-activity-list{display:flex;flex-direction:column}
.kap-activity-item{display:grid;grid-template-columns:34px 1fr;gap:12px;padding:15px 0;border-bottom:1px solid #eee5da}
.kap-activity-item:last-child{border-bottom:0}
.kap-activity-icon{width:32px;height:32px;border-radius:10px;background:#f8e9cb;color:#a97308;display:flex;align-items:center;justify-content:center;font-weight:900}
.kap-activity-message{font-size:13px;margin-bottom:5px;color:#3a2f28}
.kap-meta{font-size:10px;color:#9a8b7f}
.kap-activity-full .kap-activity-item{padding:17px 0}
.kap-quick-card h2{margin-bottom:18px}
.kap-quick-link{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border:1px solid var(--kap-border);border-radius:11px;color:var(--kap-ink);font-size:12px;font-weight:800;margin-bottom:9px;transition:.18s ease;background:#fff}
.kap-quick-link:hover{border-color:#ddb7ba;background:#fff6f7;transform:translateX(2px)}

.kap-filter-grid{display:grid;grid-template-columns:2fr repeat(7,minmax(120px,1fr)) auto auto;gap:9px;align-items:center}
.kap-search-row{display:flex;gap:10px;align-items:center}
.kap-search-row .kap-input{flex:1}
.kap-input{width:100%;min-height:42px;border:1px solid #ddcfbf;background:#fff;color:var(--kap-ink);border-radius:10px;padding:10px 12px;outline:none;transition:.18s ease;font-size:13px}
.kap-input:focus{border-color:#d9535e;box-shadow:0 0 0 3px rgba(229,29,42,.08)}
textarea.kap-input{resize:vertical}
.kap-input-small{min-height:34px;padding:6px 8px;font-size:11px}
.kap-file{font-size:11px;padding:7px}
.kap-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.kap-field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:750;color:#55483f}
.kap-field small{font-weight:500;color:#908176}
.kap-field-wide{grid-column:1/-1}
.kap-form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:22px}
.kap-inline-form{display:inline-flex;align-items:center;margin:0}
.kap-upload-inline{display:flex;flex-direction:column;gap:7px;min-width:210px}
.kap-verify-actions{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap}
.kap-reject-form{display:flex;gap:6px;align-items:center;min-width:240px}
.kap-reject-form .kap-input{min-height:34px;padding:7px 9px}
.kap-dispatch-form{display:grid;gap:8px;margin-top:10px;min-width:260px}
.kap-details summary{cursor:pointer;color:#9d0b16;font-weight:800;font-size:12px}
.kap-bulk-bar{display:flex;justify-content:flex-end;margin:-4px 0 12px}

.kap-table-wrap{overflow:auto}
.kap-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;min-width:980px}
.kap-table thead th{background:#f8f2e8;color:#6e5d50;font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:900;text-align:left;padding:13px 15px;border-bottom:1px solid var(--kap-border);white-space:nowrap}
.kap-table tbody td{padding:15px;border-bottom:1px solid #eee5da;vertical-align:top;color:#44372f}
.kap-table tbody tr:last-child td{border-bottom:0}
.kap-table tbody tr:hover td{background:#fffcf7}
.kap-table td strong{font-weight:800;color:#2c221d}
.kap-subline{display:block;font-size:10px;color:#96877b;margin-top:4px;max-width:260px;word-break:break-word}
.kap-check{width:34px;text-align:center!important}
.kap-actions-cell{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.kap-status,.kap-status-select{display:inline-flex;align-items:center;border-radius:999px;border:1px solid;padding:6px 9px;font-size:10px;font-weight:900;white-space:nowrap}
.kap-status-select{appearance:auto;background:#fff;max-width:145px}
.kap-status-new,.kap-status-none{background:#f7f2eb;color:#76685e;border-color:#dfd4c7}
.kap-status-contacted,.kap-status-requested,.kap-status-awaiting_certificate{background:#fff4d8;color:#8a6408;border-color:#f0d28c}
.kap-status-under_review,.kap-status-short_listed,.kap-status-certificate_ready{background:#fff0e6;color:#a05013;border-color:#efc29f}
.kap-status-approved,.kap-status-verified,.kap-status-active,.kap-status-dispatched{background:#ebf8f1;color:#166845;border-color:#bfe5d2}
.kap-status-rejected,.kap-status-revoked,.kap-status-disabled{background:#fff0f2;color:#9f1724;border-color:#eebfc4}
.kap-status-slip_printed{background:#edf4ff;color:#365e9d;border-color:#c7d9f1}
.kap-pagination{display:flex;gap:6px;align-items:center;justify-content:flex-end;padding:16px;border-top:1px solid var(--kap-border);background:#fcf9f4}
.kap-pagination a,.kap-pagination span{min-width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;border:1px solid var(--kap-border);color:#66584e;background:#fff;font-size:11px;font-weight:800}
.kap-pagination a.is-active{background:var(--kap-red);color:#fff;border-color:var(--kap-red)}

.kap-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:20px}
.kap-modal.is-open{display:flex}
.kap-modal-backdrop{position:absolute;inset:0;background:rgba(10,7,5,.68);backdrop-filter:blur(4px)}
.kap-modal-panel{position:relative;width:min(900px,96vw);max-height:90vh;overflow:auto;background:var(--kap-white);border-radius:20px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.35);z-index:1}
.kap-modal-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;border-radius:50%;background:#f7eee4;font-size:24px;cursor:pointer;color:#4f4036}
.kap-modal-title h2{font-size:30px;margin-bottom:20px}
.kap-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kap-detail{padding:14px;border:1px solid #eadfd1;border-radius:12px;background:#fff}
.kap-detail span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#9a887a;font-weight:900;margin-bottom:5px}
.kap-detail strong{font-size:13px;word-break:break-word}
.kap-detail-long{margin-top:14px;padding:16px;border:1px solid #eadfd1;border-radius:12px;background:#fff}
.kap-detail-long>strong{font-size:11px;text-transform:uppercase;letter-spacing:.07em}
.kap-detail-long p{margin:8px 0 0;font-size:13px;word-break:break-word}
.kap-detail-long a{color:var(--kap-red);font-weight:700}

.kap-workflow-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}
.kap-workflow-step{display:flex;gap:12px;align-items:center;padding:15px;border:1px solid var(--kap-border);border-radius:14px;background:#fff}
.kap-workflow-step.is-complete{border-color:#bfe1cf;background:#f2faf6}
.kap-workflow-icon{width:32px;height:32px;border-radius:10px;background:#f6ead5;color:#9b7017;display:flex;align-items:center;justify-content:center;font-weight:900}
.kap-workflow-step.is-complete .kap-workflow-icon{background:#d9f1e5;color:#14724e}
.kap-workflow-step strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.kap-workflow-step span:last-child{font-size:11px;color:#827268}
.kap-two-col{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:20px}
.kap-stack{display:flex;flex-direction:column;gap:0}
.kap-mini-logo{width:48px;height:48px;object-fit:contain;border:1px solid var(--kap-border);border-radius:10px;background:#fff}
.kap-note-list{margin-top:16px;max-height:420px;overflow:auto}
.kap-note{padding:13px 0;border-bottom:1px solid #eee4d7}
.kap-note p{margin-bottom:6px;font-size:13px;color:#40342d}
.kap-history-row{display:grid;grid-template-columns:16px 1fr;gap:9px;padding:10px 0;border-bottom:1px solid #eee4d7}
.kap-history-dot{width:8px;height:8px;border-radius:50%;background:var(--kap-red);margin-top:5px}
.kap-history-row strong{font-size:11px;font-weight:700}
.kap-code-list{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0 22px}
.kap-code-list code{font-size:10px;padding:6px 7px;border-radius:6px;background:#17120f;color:#ffd8db}

/* Login */
.kap-login-wrap{min-height:100vh;position:relative;overflow:hidden;background:radial-gradient(circle at 76% 20%,rgba(174,13,22,.44),transparent 30%),radial-gradient(circle at 28% 80%,rgba(201,152,50,.12),transparent 34%),linear-gradient(135deg,#080606,#180b0c 60%,#26090c);display:flex;align-items:center;justify-content:center;padding:28px}
.kap-login-wrap:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:15px 15px;opacity:.35}
.kap-login-glow{position:absolute;border-radius:50%;filter:blur(80px);opacity:.3}
.kap-glow-one{width:400px;height:400px;background:#ff1025;right:-120px;top:-90px}
.kap-glow-two{width:330px;height:330px;background:#c99631;left:-120px;bottom:-130px}
.kap-login-card{position:relative;z-index:1;width:min(470px,100%);padding:42px;background:rgba(18,12,10,.88);border:1px solid rgba(255,255,255,.10);border-radius:24px;box-shadow:0 40px 100px rgba(0,0,0,.45);backdrop-filter:blur(18px);color:#fff}
.kap-login-brand{margin-bottom:28px}
.kap-login-card h1{font-size:37px;color:#fff;margin-bottom:12px}
.kap-login-card>p{color:#cdbeb4;margin-bottom:26px}
.kap-login-card #loginform p{margin-bottom:15px;color:#e6d9d0}
.kap-login-card #loginform label{display:block;font-size:11px;font-weight:800;margin-bottom:6px;color:#dbcfc7}
.kap-login-card #loginform input[type=text],.kap-login-card #loginform input[type=password]{width:100%;height:47px;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:#fff;padding:10px 12px;outline:none}
.kap-login-card #loginform input:focus{border-color:#e8525c;box-shadow:0 0 0 3px rgba(229,29,42,.15)}
.kap-login-card .login-remember label{display:flex!important;align-items:center;gap:7px}
.kap-login-card .login-submit input{width:100%;height:48px;border:0;border-radius:11px;background:linear-gradient(135deg,#ff3040,#d6101e);color:#fff;font-weight:900;cursor:pointer}
.kap-login-foot{font-size:10px;color:#8f8178;text-align:center;margin-top:20px}

/* Public verification and certificate */
.kap-verify-body{background:#0d0908!important}
.kap-verify-wrap{min-height:100vh;padding:28px;background:radial-gradient(circle at 85% 10%,rgba(195,18,31,.32),transparent 30%),linear-gradient(180deg,#0a0706 0%,#17100c 62%,#0a0706 100%)}
.kap-verify-top{max-width:1120px;margin:0 auto 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.kap-verify-brand{color:#fff}
.kap-verify-card,.kap-verify-summary{max-width:1120px;margin:0 auto 20px;border:1px solid rgba(255,255,255,.10);border-radius:20px;background:rgba(255,255,255,.06);backdrop-filter:blur(15px);color:#fff;padding:26px}
.kap-verify-empty{text-align:center;padding:65px 30px}
.kap-verify-empty h1{color:#fff;margin-top:14px}
.kap-verify-empty p{color:#cbbdb4;max-width:650px;margin:0 auto}
.kap-verify-badge{display:inline-flex;padding:7px 11px;border-radius:999px;background:#daf4e6;color:#0f6845;font-size:10px;font-weight:900;letter-spacing:.06em}
.kap-verify-badge.is-invalid{background:#ffe0e3;color:#9b0e1b}
.kap-verify-summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px}
.kap-verify-summary h1{font-size:29px;color:#fff;margin-bottom:4px}
.kap-verify-summary p{margin:0;color:#bfaea3}
.kap-verify-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}

.kap-certificate{position:relative;width:min(794px,100%);aspect-ratio:210/297;margin:24px auto 50px;background:radial-gradient(circle at 50% 34%,rgba(229,29,42,.18),transparent 33%),linear-gradient(145deg,#090707,#1b1010 65%,#26070a);background-size:cover;background-position:center;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.45);color:#fff;border:1px solid rgba(216,170,72,.48)}
.kap-certificate:before{content:"";position:absolute;inset:22px;border:1px solid rgba(217,170,72,.65);pointer-events:none;z-index:2}
.kap-certificate:after{content:"";position:absolute;inset:32px;border:1px solid rgba(255,255,255,.09);pointer-events:none;z-index:2}
.kap-certificate-overlay{position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.025),transparent),radial-gradient(circle at 50% 0%,rgba(255,255,255,.09),transparent 35%)}
.kap-certificate.has-master-bg .kap-certificate-overlay{background:rgba(0,0,0,.06)}
.kap-certificate-inner{position:relative;z-index:3;height:100%;display:flex;flex-direction:column;align-items:center;text-align:center;padding:72px 76px 52px}
.kap-cert-brand{margin-bottom:50px;align-self:center}
.kap-cert-brand .kap-brand-sub{color:#e2b955}
.kap-cert-brand .kap-brand-logo{object-position:center;max-width:180px}
.kap-cert-brand .kap-wordmark{align-items:center}
.kap-cert-kicker{font-size:10px;letter-spacing:.30em;color:#efc15e;font-weight:900;margin-bottom:14px}
.kap-certificate h2{font-family:Georgia,"Times New Roman",serif;font-size:44px;font-weight:500;letter-spacing:-.02em;margin:0 0 23px;color:#fff}
.kap-cert-presented{font-family:Georgia,serif;font-style:italic;color:#d4c2b7;font-size:16px;margin-bottom:20px}
.kap-cert-nominee-logo{height:92px;display:flex;align-items:center;justify-content:center;margin-bottom:17px}
.kap-cert-nominee-logo img{max-height:88px;max-width:210px;object-fit:contain;filter:drop-shadow(0 6px 18px rgba(0,0,0,.25))}
.kap-cert-logo-placeholder{width:76px;height:76px;border-radius:18px;background:linear-gradient(135deg,#ff3040,#b30c17);display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:38px;border:1px solid rgba(255,255,255,.28)}
.kap-certificate h1{font-family:Georgia,"Times New Roman",serif;font-size:40px;line-height:1.05;font-weight:600;color:#fff;margin:0 0 16px;max-width:620px}
.kap-cert-copy{font-size:13px;max-width:500px;color:#c9b8ad;line-height:1.7;margin-bottom:28px}
.kap-cert-category{padding:14px 28px;border-top:1px solid rgba(219,172,75,.5);border-bottom:1px solid rgba(219,172,75,.5);min-width:65%;margin-bottom:auto}
.kap-cert-category span,.kap-cert-footer-grid span{display:block;font-size:8px;letter-spacing:.18em;color:#d7a847;font-weight:900;margin-bottom:5px}
.kap-cert-category strong{font-family:Georgia,serif;font-size:19px;font-weight:500}
.kap-cert-footer-grid{width:100%;display:grid;grid-template-columns:1fr 1fr 100px;align-items:end;text-align:left;gap:22px;padding-top:24px}
.kap-cert-footer-grid strong{font-size:11px;letter-spacing:.04em;color:#f5ede6}
.kap-cert-qr{text-align:center!important;justify-self:end}
.kap-qr{display:inline-flex;align-items:center;justify-content:center;background:#fff;padding:5px;border-radius:6px;min-width:74px;min-height:74px}
.kap-qr canvas{display:block!important;width:100%!important;height:100%!important;max-width:100%!important}.kap-qr img{display:none!important}
.kap-cert-qr .kap-qr{width:78px;height:78px}
.kap-cert-qr small{display:block;color:#c9b9af;font-size:7px;margin-top:4px;text-transform:uppercase;letter-spacing:.06em}
.kap-cert-bottom-line{position:absolute;bottom:23px;font-size:7px;letter-spacing:.35em;color:#8c7768}

/* Dispatch slip */
.kap-slip-body{background:#eee8df!important;padding:20px}
.kap-print-toolbar{max-width:850px;margin:0 auto 16px;display:flex;gap:8px;justify-content:flex-end;align-items:center;flex-wrap:wrap}
.kap-dispatch-slip{width:min(794px,100%);min-height:1123px;margin:0 auto;background:#fff;color:#18130f;padding:54px;border:1px solid #d9cdbf;box-shadow:0 20px 60px rgba(0,0,0,.12);-webkit-print-color-adjust:exact;print-color-adjust:exact}
.kap-slip-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:28px;border-bottom:3px solid #17120f;margin-bottom:30px}
.kap-slip-head .kap-wordmark strong{color:var(--kap-red)}
.kap-slip-head>div:last-child{text-align:right}
.kap-slip-head>div:last-child span{display:block;font-size:10px;font-weight:900;letter-spacing:.14em;color:#a2101a}
.kap-slip-head>div:last-child strong{font-family:Georgia,serif;font-size:24px}
.kap-slip-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid #ded3c7;margin-bottom:26px}
.kap-slip-field{padding:17px;border-bottom:1px solid #ded3c7;border-right:1px solid #ded3c7}
.kap-slip-field:nth-child(even){border-right:0}.kap-slip-field:nth-last-child(-n+2){border-bottom:0}
.kap-slip-field span{display:block;font-size:9px;font-weight:900;letter-spacing:.08em;color:#88766a;margin-bottom:5px}
.kap-slip-field strong{font-size:14px}
.kap-slip-qr{display:flex;gap:24px;align-items:center;padding:22px 24px;background:#f8f3eb;border:1px solid #e2d7c9;margin-bottom:26px;overflow:hidden}
.kap-slip-qr .kap-qr{width:116px!important;height:116px!important;min-width:116px!important;min-height:116px!important;max-width:116px!important;max-height:116px!important;flex:0 0 116px!important;padding:7px!important;border:1px solid #ded3c7;border-radius:8px;background:#fff;overflow:hidden}
.kap-slip-qr .kap-qr canvas{width:100%!important;height:100%!important;display:block!important}
.kap-slip-qr-copy{min-width:0;display:flex;align-items:center}
.kap-slip-qr strong{display:block;margin:0;color:#18130f;font-size:20px!important;font-weight:900!important;line-height:1.25;letter-spacing:-.01em}
.kap-checklist{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;padding:22px 0;border-top:1px solid #dfd4c8;border-bottom:1px solid #dfd4c8}
.kap-check-item{display:flex;align-items:center;gap:10px;min-height:34px;padding:7px 10px;border:1px solid #eadfd3;border-radius:8px;background:#fffdf9;color:#2b241f}
.kap-check-square{width:16px;height:16px;flex:0 0 16px;border:2px solid #6e6259;border-radius:3px;background:#fff}
.kap-check-item strong{font-size:13px;font-weight:750;line-height:1.3}
.kap-slip-status{margin-top:28px;padding:16px 18px;border:2px solid #17120f;border-radius:8px;text-align:center;background:#fff;font-size:12px}
.kap-slip-status-badge{display:inline-block;font-size:14px;font-weight:900;letter-spacing:.05em}
.kap-slip-status-meta{display:flex;align-items:center;justify-content:center;gap:8px 18px;flex-wrap:wrap;margin-top:8px;font-size:12.5px;line-height:1.45}
.kap-slip-status-meta span{display:inline-block}.kap-slip-status-meta b{font-weight:850}
.kap-slip-status.is-dispatched{border-color:#16855b;background:#edf8f3;color:#0d6847}
.kap-slip-status.is-dispatched .kap-slip-status-badge{color:#087448}

@media (max-width:1380px){
  :root{--kap-sidebar:260px}
  .kap-shell{padding:18px}
  .kap-sidebar{top:18px;height:calc(100vh - 36px)}
  .kap-topbar{top:18px}
  .kap-content{padding:28px}
  .kap-stat-grid{grid-template-columns:repeat(3,1fr)}
  .kap-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

@media (max-width:767px){
  .kap-shell{display:block;padding:0}
  .kap-sidebar{position:relative;top:0;height:auto;border-radius:0;padding:16px 18px;overflow:visible}
  .kap-brand-block{display:flex;align-items:center;justify-content:space-between;padding:0 0 13px;margin-bottom:12px}
  .kap-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
  .kap-nav-item{padding:10px;font-size:12px;justify-content:flex-start}
  .kap-nav-logout{margin-top:0}
  .kap-main{border-radius:0;box-shadow:none}
  .kap-topbar{top:0;padding:14px 18px;min-height:64px}
  .kap-content{padding:22px 18px}
  .kap-page-head h1{font-size:32px}
  .kap-stat-grid{grid-template-columns:repeat(2,1fr)}
  .kap-dashboard-grid,.kap-two-col{grid-template-columns:1fr}
  .kap-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kap-workflow-strip{grid-template-columns:1fr}
}

@media (max-width:760px){
  body.kap-body h1{font-size:29px}
  .kap-nav{display:flex;flex-direction:row;overflow-x:auto;padding-bottom:3px}
  .kap-nav-item{flex:0 0 auto;white-space:nowrap}
  .kap-brand-block{border-bottom:0}
  .kap-brand-block .kap-brand-sub{display:none}
  .kap-topbar{align-items:flex-start}
  .kap-topbar-title{display:none}
  .kap-topbar-actions{width:100%;justify-content:flex-start}
  .kap-role-badge{margin-right:auto}
  .kap-topbar-actions .kap-btn{padding:9px 10px;font-size:11px}
  .kap-content{padding:18px 12px 28px}
  .kap-page-head{display:block;margin-bottom:18px}
  .kap-page-head>.kap-btn,.kap-page-head>form,.kap-page-head>.kap-pill{margin-top:13px}
  .kap-stat-grid{grid-template-columns:1fr 1fr;gap:10px}
  .kap-stat-card{min-height:120px;padding:18px}
  .kap-stat-value{font-size:34px}
  .kap-dashboard-grid{gap:12px}
  .kap-card{padding:18px;border-radius:14px}
  .kap-form-card{padding:18px}
  .kap-filter-grid,.kap-form-grid{grid-template-columns:1fr}
  .kap-field-wide{grid-column:auto}
  .kap-search-row{flex-wrap:wrap}.kap-search-row .kap-input{flex-basis:100%}
  .kap-detail-grid{grid-template-columns:1fr}
  .kap-modal-panel{padding:22px 16px}
  .kap-modal-title h2{font-size:25px}
  .kap-stat-card:nth-child(5){grid-column:1/-1}

  .kap-table-wrap{overflow:visible}
  .kap-table{min-width:0;display:block;width:100%}
  .kap-table thead{display:none}
  .kap-table tbody{display:block}
  .kap-table tbody tr{display:block;margin:12px;border:1px solid var(--kap-border);border-radius:13px;overflow:hidden;background:#fff;box-shadow:0 5px 16px rgba(47,31,19,.04)}
  .kap-table tbody td{display:grid;grid-template-columns:122px minmax(0,1fr);gap:10px;padding:11px 12px;border-bottom:1px solid #eee6dc!important;background:#fff!important;align-items:start;min-height:42px}
  .kap-table tbody td:last-child{border-bottom:0!important}
  .kap-table tbody td:before{content:attr(data-label);font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;color:#8c7a6e;padding-top:2px}
  .kap-table tbody td.kap-empty{display:block;text-align:center;margin:0}
  .kap-table .kap-check{grid-template-columns:122px 1fr;text-align:left!important}
  .kap-actions-cell{display:grid!important;grid-template-columns:122px 1fr!important}
  .kap-actions-cell:before{grid-column:1}.kap-actions-cell>*{grid-column:2}
  .kap-payment-actions,.kap-dispatch-form{min-width:0}
  .kap-upload-inline{min-width:0}
  .kap-reject-form{min-width:0;flex-wrap:wrap}
  .kap-pagination{justify-content:center;flex-wrap:wrap}

  .kap-login-card{padding:28px 20px}.kap-login-card h1{font-size:31px}
  .kap-verify-wrap{padding:18px 10px}.kap-verify-summary{grid-template-columns:1fr;align-items:start}.kap-verify-actions{justify-content:flex-start}
  .kap-certificate-inner{padding:52px 34px 38px}.kap-certificate h2{font-size:31px}.kap-certificate h1{font-size:30px}.kap-cert-brand{margin-bottom:28px}.kap-cert-footer-grid{grid-template-columns:1fr 1fr 75px;gap:10px}.kap-cert-qr .kap-qr{width:68px;height:68px}.kap-cert-copy{font-size:11px}.kap-cert-category{min-width:82%}
  .kap-slip-body{padding:8px}.kap-dispatch-slip{padding:30px 22px}.kap-slip-grid{grid-template-columns:1fr}.kap-slip-field{border-right:0!important;border-bottom:1px solid #ded3c7!important}.kap-slip-field:last-child{border-bottom:0!important}.kap-slip-qr{align-items:center;gap:16px;padding:16px}.kap-slip-qr .kap-qr{width:100px!important;height:100px!important;min-width:100px!important;min-height:100px!important;max-width:100px!important;max-height:100px!important;flex-basis:100px!important}.kap-slip-qr strong{font-size:17px!important}.kap-checklist{grid-template-columns:1fr}.kap-slip-status-meta{flex-direction:column;gap:4px}
}

@media print{
  html,body.kap-body{background:#fff!important;margin:0!important;padding:0!important}
  body.kap-verify-body .kap-verify-top,body.kap-verify-body .kap-verify-summary{display:none!important}
  body.kap-verify-body .kap-verify-wrap{padding:0!important;background:#fff!important;min-height:0}
  body.kap-verify-body .kap-certificate{width:210mm!important;height:297mm!important;max-width:none!important;margin:0!important;box-shadow:none!important;border:0!important;page-break-after:avoid}
  .kap-print-toolbar{display:none!important}
  .kap-slip-body{padding:0!important;background:#fff!important}
  .kap-dispatch-slip{width:210mm!important;min-height:297mm!important;margin:0!important;box-shadow:none!important;border:0!important;padding:14mm!important}
  @page{size:A4 portrait;margin:0}
}


/* v2.1.0 - operational workflow and role-access summary */
.kap-workflow-card{margin:0 0 22px;padding:22px}.kap-workflow-head{align-items:flex-start;gap:18px}.kap-workflow-head h2{margin:0 0 5px}.kap-workflow-head p{margin:0;color:var(--kap-muted);font-size:13px;line-height:1.55}.kap-workflow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}.kap-workflow-step{position:relative;min-height:138px;padding:18px 16px 15px;border:1px solid var(--kap-border);border-radius:16px;background:#fff;overflow:hidden}.kap-workflow-step:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--kap-red)}.kap-workflow-step-2:before{background:#7252aa}.kap-workflow-step-3:before,.kap-workflow-step-7:before{background:#b48511}.kap-workflow-step-4:before{background:#ca7410}.kap-workflow-step-5:before,.kap-workflow-step-8:before{background:#168b63}.kap-workflow-step-6:before{background:#386da9}.kap-workflow-number{display:inline-grid;place-items:center;width:28px;height:28px;margin-bottom:11px;border-radius:999px;background:#17130f;color:#fff;font-size:12px;font-weight:800}.kap-workflow-step strong{display:block;font-size:14px}.kap-workflow-step p{margin:7px 0 10px;color:var(--kap-muted);font-size:12px;line-height:1.5}.kap-workflow-step small{display:block;color:#8d7b6e;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.45px}.kap-access-details{margin-top:16px;border-top:1px solid var(--kap-border);padding-top:15px}.kap-access-details summary{cursor:pointer;font-weight:750;font-size:13px}.kap-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin-top:13px}.kap-access-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border:1px solid var(--kap-border);border-radius:10px;background:#fff}.kap-access-item>span{font-size:12px}.kap-access-pill{display:inline-flex;align-items:center;justify-content:center;min-width:54px;padding:5px 9px;border-radius:999px;font-size:10px}.kap-access-pill.is-yes{background:#e2f5ed;color:#0e7a56}.kap-access-pill.is-view{background:#e6f0fb;color:#315f93}.kap-access-pill.is-no{background:#fde8e9;color:#c53a40}
@media(max-width:1180px){.kap-workflow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.kap-workflow-card{padding:16px}.kap-workflow-grid,.kap-access-grid{grid-template-columns:1fr}.kap-workflow-step{min-height:0}.kap-workflow-head{display:block}.kap-workflow-head .kap-role-badge{display:inline-flex;margin-top:10px}}

/* v2.2.0 - reference workflow panels + internal certificate preview */
.kap-reference-workflow{margin:0 0 24px}.kap-reference-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 14px}.kap-reference-title-row h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:28px;line-height:1.1;color:var(--kap-text)}.kap-reference-two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.kap-reference-panel{position:relative;min-height:430px;padding:24px;border:1px solid #dcc89f;border-radius:18px;background:#fff}.kap-reference-panel h3{margin:0 0 22px;font-family:Georgia,"Times New Roman",serif;font-size:24px;line-height:1.15}.kap-nominee-flow{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 42px auto 48px auto;gap:0 28px;align-items:center;max-width:520px;margin:0 auto}.kap-flow-node{position:relative;min-height:104px;padding:25px 16px 15px;border:1px solid #dcc89f;border-radius:16px;background:#fff;overflow:hidden}.kap-flow-node:before{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:#b48610}.kap-flow-node strong,.kap-flow-node span{display:block}.kap-flow-node strong{font-size:14px;margin-bottom:8px}.kap-flow-node span{color:var(--kap-muted);font-size:11px;line-height:1.5}.kap-flow-node-green{background:#e3f4ec}.kap-flow-node-green:before{background:#148d64}.kap-flow-node-gold{background:#fff1cc}.kap-flow-node-gold:before,.kap-flow-node-center:before{background:#b48610}.kap-flow-node-blue{background:#e9f2fb}.kap-flow-node-blue:before{background:#386da9}.kap-flow-node-center{grid-column:1/-1;justify-self:center;width:58%;min-height:100px}.kap-flow-node-bottom{grid-column:1/-1;justify-self:center;width:58%;min-height:88px}.kap-flow-arrow{font-size:32px;color:#b17d08;text-align:center;line-height:1}.kap-flow-arrow-left{grid-column:1;grid-row:2}.kap-flow-arrow-right{grid-column:2;grid-row:2}.kap-flow-arrow-down{grid-column:1/-1;grid-row:4}.kap-reference-panel-copy{display:flex;flex-direction:column}.kap-reference-list{margin:0;padding:0;list-style:none}.kap-reference-list li{position:relative;margin:0 0 13px;padding-left:22px;font-size:12px;line-height:1.55}.kap-reference-list li:before{content:"•";position:absolute;left:0;top:-1px;color:#b48610;font-size:21px}.kap-approval-rule{margin-top:auto;padding:20px;border-radius:15px;background:#fff0c7}.kap-approval-rule strong{display:block;color:#a46d00;font-size:12px;margin-bottom:10px}.kap-approval-rule p{margin:0;font-size:12px;line-height:1.55}
.kap-payment-role-grid{display:grid;grid-template-columns:1fr 48px 1fr 48px 1fr;align-items:stretch}.kap-payment-role-card{min-height:300px;padding:28px 25px;border-radius:18px;background:#fff3df}.kap-payment-role-card h3{margin:0 0 24px;font-size:16px;color:#c56f0b}.kap-payment-role-card ul{margin:0;padding:0;list-style:none}.kap-payment-role-card li{position:relative;margin:0 0 13px;padding-left:22px;font-size:12px;line-height:1.5}.kap-payment-role-card li:before{content:"•";position:absolute;left:0;top:-2px;font-size:22px;color:currentColor}.kap-payment-role-card.is-admin{background:#e1f4ec}.kap-payment-role-card.is-admin h3,.kap-payment-role-card.is-admin li:before{color:#108963}.kap-payment-role-card.is-manager{background:#e7f0fb}.kap-payment-role-card.is-manager h3,.kap-payment-role-card.is-manager li:before{color:#386da9}.kap-payment-arrow{display:grid;place-items:center;font-size:30px;color:#af7b08}.kap-stage-track{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:14px;padding:13px 16px;border:1px solid var(--kap-border);border-radius:14px;background:#fff;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.kap-stage-track b{color:#b17d08}.kap-record-quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin:-8px 0 20px}
.kap-certificate-info-strip{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:18px;margin-bottom:20px;padding:18px 22px}.kap-certificate-info-strip>div strong,.kap-certificate-info-strip>div small{display:block}.kap-certificate-info-strip>div strong{font-size:13px;margin-bottom:5px}.kap-certificate-info-strip>div small{color:var(--kap-muted);font-size:10px;line-height:1.45}.kap-certificate-info-strip>b{font-size:24px;color:#b17d08}.kap-certificate-preview-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.kap-certificate-preview-stage{min-width:0;padding:20px;border-radius:16px;background:#dfd4c3}.kap-certificate-preview-stage .kap-certificate{width:min(620px,100%);margin:0 auto;box-shadow:0 15px 45px rgba(0,0,0,.2)}.kap-generation-details{position:sticky;top:102px;padding:22px}.kap-generation-details h2{font-size:16px;margin:0 0 16px}.kap-generation-list .kap-detail{display:block;padding:11px 0;border-bottom:1px solid var(--kap-border)}.kap-generation-list .kap-detail span{display:block;margin-bottom:5px;color:#9a8273;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.kap-generation-list .kap-detail strong{display:block;font-size:11px;line-height:1.4}.kap-generation-actions{display:grid;gap:9px;margin-top:20px}.kap-btn-block{width:100%;justify-content:center;text-align:center}.kap-certificate-admin-form{display:grid;gap:9px}.kap-certificate-admin-form textarea.kap-input{min-height:64px;resize:vertical}.kap-certificate-preview-head{align-items:flex-start}
@media(max-width:1180px){.kap-reference-two-col{grid-template-columns:1fr}.kap-reference-panel{min-height:0}.kap-payment-role-grid{grid-template-columns:1fr}.kap-payment-arrow{transform:rotate(90deg);height:38px}.kap-certificate-preview-layout{grid-template-columns:1fr}.kap-generation-details{position:static}.kap-certificate-preview-stage .kap-certificate{width:min(690px,100%)}}
@media(max-width:700px){.kap-reference-panel{padding:17px}.kap-reference-title-row h2{font-size:23px}.kap-reference-panel h3{font-size:20px}.kap-nominee-flow{grid-template-columns:1fr;grid-template-rows:auto 34px auto 34px auto;gap:0}.kap-flow-node-center,.kap-flow-node-bottom{grid-column:1;width:100%}.kap-flow-node-green{grid-column:1;grid-row:1}.kap-flow-arrow-left{grid-column:1;grid-row:2}.kap-flow-node-gold{grid-column:1;grid-row:3}.kap-flow-arrow-right{display:none}.kap-flow-node-center{grid-row:5;margin-top:0}.kap-flow-arrow-down{display:none}.kap-flow-node-bottom{grid-row:6;margin-top:14px}.kap-payment-role-card{min-height:0;padding:22px 18px}.kap-stage-track{justify-content:flex-start}.kap-certificate-info-strip{grid-template-columns:1fr}.kap-certificate-info-strip>b{transform:rotate(90deg);justify-self:start}.kap-certificate-preview-stage{padding:10px}.kap-generation-details{padding:17px}.kap-record-quick-actions{margin-top:0}}

/* =========================================================
   v2.3.0 - prominent typography + public certificate layout
========================================================= */

/* Portal-wide readability upgrade */
body.kap-body{font-size:15px;line-height:1.58}
body.kap-body h1{font-size:42px;font-weight:600;line-height:1.08}
body.kap-body h2{font-size:24px;font-weight:700;line-height:1.2}
body.kap-body h3{font-size:19px;font-weight:700;line-height:1.25}
body.kap-body p{font-size:14px;line-height:1.65}
.kap-nav-item{font-size:16px;font-weight:700;padding:14px 15px}
.kap-topbar-title{font-size:18px;font-weight:700}
.kap-role-badge{font-size:13px;padding:9px 13px}
.kap-btn{font-size:14px;font-weight:850;padding:12px 17px}
.kap-btn-small{font-size:13px;padding:9px 12px}
.kap-link-btn{font-size:13px}
.kap-muted{font-size:13px}
.kap-page-head p{font-size:15px;line-height:1.65}
.kap-back{font-size:14px}
.kap-card-head>a{font-size:13px}
.kap-pill{font-size:12px;padding:8px 12px}
.kap-eyebrow{font-size:12px}
.kap-notice{font-size:14px;line-height:1.55}
.kap-empty{font-size:14px}
.kap-info-box p{font-size:14px}
.kap-stat-label{font-size:13px}
.kap-stat-value{font-size:42px}
.kap-stat-sub{font-size:13px;line-height:1.5}
.kap-activity-message{font-size:14px;line-height:1.55}
.kap-meta{font-size:11.5px}
.kap-quick-link{font-size:14px;padding:14px 15px}
.kap-input{font-size:14px;min-height:44px}
.kap-input-small{font-size:12.5px}
.kap-file{font-size:12.5px}
.kap-field{font-size:13.5px}
.kap-field small{font-size:12px;line-height:1.5}
.kap-details summary{font-size:13.5px}
.kap-table{font-size:13.5px}
.kap-table thead th{font-size:11px;padding:14px 15px}
.kap-table tbody td{padding:16px 15px;line-height:1.5}
.kap-table td strong{font-size:14px}
.kap-subline{font-size:11.5px;line-height:1.45}
.kap-status,.kap-status-select{font-size:11.5px;padding:7px 10px}
.kap-pagination a,.kap-pagination span{font-size:12px}
.kap-modal-title h2{font-size:32px}
.kap-detail span{font-size:10px}
.kap-detail strong{font-size:14.5px;line-height:1.5}
.kap-detail-long>strong{font-size:12px}
.kap-detail-long p{font-size:14px;line-height:1.6}
.kap-workflow-step strong{font-size:12.5px}
.kap-workflow-step span:last-child{font-size:12.5px}
.kap-note p{font-size:14px}
.kap-history-row strong{font-size:12.5px}
.kap-code-list code{font-size:11px}

/* Reference workflow panels */
.kap-reference-title-row h2{font-size:31px}
.kap-reference-panel h3{font-size:27px}
.kap-flow-node strong{font-size:15px}
.kap-flow-node span{font-size:12.5px}
.kap-reference-list li{font-size:13.5px;line-height:1.6}
.kap-approval-rule strong{font-size:13px}
.kap-approval-rule p{font-size:13.5px}
.kap-payment-role-card h3{font-size:18px}
.kap-payment-role-card li{font-size:13.5px;line-height:1.6}
.kap-stage-track{font-size:11.5px}
.kap-workflow-head p{font-size:14px}
.kap-workflow-step p{font-size:13px}
.kap-workflow-step small{font-size:11px}
.kap-access-details summary{font-size:14px}
.kap-access-item>span{font-size:13px}
.kap-access-pill{font-size:11px}

/* Internal certificate preview details */
.kap-generation-details h2{font-size:20px}
.kap-generation-list .kap-detail span{font-size:10px}
.kap-generation-list .kap-detail strong{font-size:14px;line-height:1.5}
.kap-certificate-info-strip>div strong{font-size:14px}
.kap-certificate-info-strip>div small{font-size:11.5px}

/* Public certificate verification - premium light layout */
body.kap-verify-body{background:#f5efe5!important;color:#211a15!important}
.kap-verify-wrap{min-height:100vh;padding:28px 24px 54px;background:radial-gradient(circle at 12% 0%,rgba(201,152,50,.11),transparent 28%),radial-gradient(circle at 92% 18%,rgba(229,29,42,.055),transparent 30%),linear-gradient(180deg,#faf6ef 0%,#f3ecdf 100%)}
.kap-verify-top{max-width:1240px;margin:0 auto 22px;padding:0 4px}
.kap-verify-brand{color:var(--kap-ink)!important}
.kap-verify-brand .kap-wordmark strong{color:var(--kap-red-2)}
.kap-verify-brand .kap-wordmark span{color:#a87918}
.kap-verify-card{max-width:1240px;background:#fffdf9;color:var(--kap-ink);border:1px solid #dfcfb7;box-shadow:0 18px 50px rgba(82,57,31,.09)}
.kap-verify-empty{padding:72px 34px}
.kap-verify-empty h1{color:var(--kap-ink);font-size:42px}
.kap-verify-empty p{color:#75675d;font-size:16px;line-height:1.7}
.kap-verify-badge{padding:9px 14px;font-size:12px;letter-spacing:.02em;background:#e3f6ed;color:#08714c;border:1px solid #c7eadb}
.kap-verify-badge.is-invalid{background:#ffe8e9;color:#a11722;border-color:#f1c9cc}

.kap-public-certificate-card{max-width:1240px;margin:0 auto;border:1px solid #dfcfb7;border-radius:22px;background:#fffdf9;box-shadow:0 24px 65px rgba(71,47,24,.11);padding:24px}
.kap-public-status-row{display:flex;align-items:center;justify-content:flex-start;margin-bottom:18px}
.kap-public-certificate-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.65fr);gap:24px;align-items:start}
.kap-public-certificate-stage{min-width:0;padding:16px;border-radius:15px;background:#ddd4c5;border:1px solid #d7c9b6}
.kap-public-certificate-stage .kap-certificate{width:min(700px,100%);margin:0 auto;box-shadow:0 16px 42px rgba(37,27,19,.22)}
.kap-public-details-card{position:sticky;top:24px;padding:24px 24px 22px;border-radius:16px;background:#f8f2e8;border:1px solid #eadfce}
.kap-public-details-head{padding-bottom:18px;border-bottom:1px solid #ded1bf}
.kap-public-kicker{display:block;margin-bottom:8px;color:#a67512;font-size:10px;font-weight:900;letter-spacing:.12em}
.kap-public-details-head h1{margin:0 0 12px!important;color:#1e1713!important;font-family:Georgia,"Times New Roman",serif;font-size:32px!important;font-weight:700!important;line-height:1.08!important;letter-spacing:-.025em!important;word-break:break-word}
.kap-public-details-head p{margin:0!important;color:#675b52!important;font-size:14px!important;line-height:1.65!important}
.kap-public-detail-list{display:grid}
.kap-public-detail{padding:15px 0;border-bottom:1px solid #ded1bf}
.kap-public-detail span{display:block;margin-bottom:6px;color:#8c7a6c;font-size:10.5px;font-weight:850;letter-spacing:.075em}
.kap-public-detail strong{display:block;color:#18120f;font-size:17px;font-weight:800;line-height:1.35;word-break:break-word}
.kap-public-detail strong.kap-public-active{color:#08714c}
.kap-public-actions{display:grid;gap:10px;margin-top:20px}
.kap-public-actions .kap-btn{min-height:48px;font-size:14px}

/* Public page uses the same certificate artwork but scales it for the card. */
.kap-public-certificate-stage .kap-certificate{margin-bottom:0}

@media(max-width:1100px){
  .kap-public-certificate-grid{grid-template-columns:1fr}
  .kap-public-details-card{position:static}
  .kap-public-certificate-stage .kap-certificate{width:min(720px,100%)}
}

@media(max-width:980px){
  body.kap-body h1{font-size:36px}
  body.kap-body h2{font-size:22px}
  .kap-nav-item{font-size:14px}
  .kap-public-certificate-card{padding:18px}
}

@media(max-width:760px){
  body.kap-body{font-size:14px}
  body.kap-body h1{font-size:31px}
  body.kap-body h2{font-size:21px}
  body.kap-body p{font-size:13.5px}
  .kap-topbar-actions .kap-btn{font-size:12px}
  .kap-table tbody td{font-size:13px}
  .kap-table tbody td:before{font-size:10px}
  .kap-public-certificate-card{padding:13px;border-radius:17px}
  .kap-public-status-row{margin-bottom:13px}
  .kap-public-certificate-stage{padding:8px}
  .kap-public-details-card{padding:20px 18px}
  .kap-public-details-head h1{font-size:28px!important}
  .kap-public-details-head p{font-size:13px!important}
  .kap-public-detail span{font-size:10px}
  .kap-public-detail strong{font-size:15.5px}
  .kap-public-actions .kap-btn{font-size:13px}
  .kap-verify-empty h1{font-size:32px}
  .kap-verify-empty p{font-size:14px}
}

@media(max-width:430px){
  .kap-verify-wrap{padding:16px 8px 30px}
  .kap-verify-top{gap:10px;align-items:center}
  .kap-verify-top .kap-btn{padding:9px 10px;font-size:11px}
  .kap-public-details-head h1{font-size:25px!important}
  .kap-public-detail strong{font-size:15px}
}

@media print{
  body.kap-verify-body .kap-verify-top,
  body.kap-verify-body .kap-public-status-row,
  body.kap-verify-body .kap-public-details-card{display:none!important}
  body.kap-verify-body .kap-public-certificate-card{max-width:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important}
  body.kap-verify-body .kap-public-certificate-grid{display:block!important}
  body.kap-verify-body .kap-public-certificate-stage{padding:0!important;border:0!important;border-radius:0!important;background:#fff!important}
  body.kap-verify-body .kap-public-certificate-stage .kap-certificate{width:210mm!important;height:297mm!important;max-width:none!important;margin:0!important;box-shadow:none!important;border:0!important}
}

/* =========================================================
   v2.4.0 — DASHBOARD INTERNAL NOTES + NOMINEE NOTE COLUMN
========================================================= */
.kap-dashboard-notes-card{margin-top:20px;padding:28px 30px}
.kap-dashboard-notes-head{align-items:flex-start;margin-bottom:20px}
.kap-dashboard-notes-head>div{min-width:0}
.kap-dashboard-notes-head h2{margin-bottom:7px}
.kap-dashboard-notes-head p{margin:0;color:var(--kap-muted);font-size:14px;line-height:1.55}
.kap-dashboard-notes-head>a{padding-top:2px;font-size:14px;font-weight:800;color:#966817;white-space:nowrap}
.kap-dashboard-notes-head>a:hover{color:var(--kap-red)}
.kap-latest-notes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.kap-latest-note-card{display:block;min-width:0;padding:18px 18px 17px;border:1px solid var(--kap-border);border-radius:15px;background:#fffaf2;color:var(--kap-ink);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.kap-latest-note-card:hover{transform:translateY(-2px);border-color:#d9bf96;box-shadow:0 10px 24px rgba(59,37,19,.08)}
.kap-latest-note-card>strong{display:block;margin-bottom:8px;font-size:15px;line-height:1.35;color:#211914}
.kap-latest-note-card>p{margin:0 0 11px;color:#3e322b;font-size:14px;line-height:1.55;overflow-wrap:anywhere}
.kap-latest-note-card .kap-meta{display:block;font-size:11px;line-height:1.45;color:#8e7b6d}
.kap-dashboard-notes-empty{padding:18px!important;border:1px dashed var(--kap-border);border-radius:13px;background:#fffaf4}
.kap-latest-note-cell{min-width:245px;max-width:330px}
.kap-table-note-text{font-size:13.5px;font-weight:650;line-height:1.5;color:#30251f;margin-bottom:7px;overflow-wrap:anywhere}
.kap-latest-note-cell .kap-subline{line-height:1.45}

@media (max-width:1180px){
  .kap-latest-notes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
  .kap-dashboard-notes-card{padding:20px 16px;margin-top:12px}
  .kap-dashboard-notes-head{gap:12px}
  .kap-dashboard-notes-head p{font-size:13px}
  .kap-dashboard-notes-head>a{font-size:12px}
  .kap-latest-notes-grid{grid-template-columns:1fr}
  .kap-latest-note-card{padding:16px}
  .kap-latest-note-cell{min-width:0;max-width:none}
  .kap-table-note-text{font-size:13px}
}

/* =========================================================
   v2.5.0 - LAPTOP RESPONSIVENESS + STABLE FILTER LAYOUT
   Keeps the desktop portal premium while preventing horizontal
   overflow on common 1280px-1600px notebook displays.
========================================================= */

/* Never let a grid child force the portal wider than its main column. */
.kap-main,
.kap-content,
.kap-card,
.kap-filter-card,
.kap-table-card,
.kap-dashboard-grid > *,
.kap-stat-grid > *,
.kap-filter-grid > *{
  min-width:0;
}

.kap-table-wrap{
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  scrollbar-color:#cdbda8 transparent;
}
.kap-table-wrap::-webkit-scrollbar{height:8px}
.kap-table-wrap::-webkit-scrollbar-track{background:transparent}
.kap-table-wrap::-webkit-scrollbar-thumb{background:#cdbda8;border-radius:99px}

/* Large and normal laptops: keep the sidebar, but give the work area more room. */
@media (min-width:1251px) and (max-width:1650px){
  :root{--kap-sidebar:238px}
  .kap-shell{padding:16px}
  .kap-sidebar{
    top:16px;
    height:calc(100vh - 32px);
    padding:24px 17px;
    border-radius:20px 0 0 20px;
  }
  .kap-brand-block{padding:0 6px 22px;margin-bottom:16px}
  .kap-brand-logo{max-width:150px}
  .kap-nav{gap:4px}
  .kap-nav-item{padding:11px 11px;font-size:14px;gap:9px}
  .kap-main{border-radius:0 20px 20px 0}
  .kap-topbar{
    top:16px;
    min-height:70px;
    padding:14px 20px;
    gap:12px;
  }
  .kap-topbar-title{font-size:16px}
  .kap-topbar-actions{gap:8px}
  .kap-role-badge{font-size:12px;padding:8px 10px}
  .kap-topbar-actions .kap-btn{padding:10px 12px;font-size:12.5px}
  .kap-content{padding:24px 22px;max-width:none}
  .kap-page-head{gap:18px;margin-bottom:21px;flex-wrap:wrap}
  body.kap-body h1{font-size:36px}
  .kap-page-head p{font-size:14px}

  /* Dashboard cards fit naturally in the narrower main panel. */
  .kap-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .kap-stat-card{min-height:132px;padding:19px 20px}
  .kap-stat-value{font-size:38px}
  .kap-dashboard-grid{grid-template-columns:minmax(0,1.7fr) minmax(260px,.9fr);gap:14px}
  .kap-latest-notes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

  /* Ten lead-filter controls now use two compact rows instead of one overflowing row. */
  .kap-filter-card{padding:15px}
  .kap-filter-grid{
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:9px;
    align-items:stretch;
  }
  .kap-filter-grid input[type="search"]{grid-column:span 2}
  .kap-filter-grid .kap-input,
  .kap-filter-grid .kap-btn{
    width:100%;
    min-width:0;
    min-height:44px;
  }
  .kap-filter-grid .kap-btn{white-space:normal;text-align:center;padding-left:10px;padding-right:10px}

  /* Wide content stays inside the portal and scrolls only inside its own card when needed. */
  .kap-table{min-width:930px}
  .kap-reference-two-col{grid-template-columns:1fr}
  .kap-reference-panel{min-height:0}
  .kap-certificate-preview-layout{grid-template-columns:minmax(0,1fr) minmax(270px,330px)}
}

/* Compact laptops (roughly 1024-1250): preserve sidebar and use a four-column filter grid. */
@media (min-width:981px) and (max-width:1250px){
  :root{--kap-sidebar:220px}
  .kap-shell{padding:12px}
  .kap-sidebar{
    top:12px;
    height:calc(100vh - 24px);
    padding:21px 14px;
    border-radius:18px 0 0 18px;
  }
  .kap-brand-logo{max-width:140px}
  .kap-brand-block{padding:0 5px 18px;margin-bottom:14px}
  .kap-nav-item{padding:10px 9px;font-size:13px;gap:8px}
  .kap-main{border-radius:0 18px 18px 0}
  .kap-topbar{top:12px;padding:12px 16px;min-height:66px;flex-wrap:wrap}
  .kap-topbar-title{font-size:15px}
  .kap-topbar-actions{gap:7px}
  .kap-topbar-actions .kap-btn{padding:9px 10px;font-size:12px}
  .kap-role-badge{font-size:11.5px;padding:8px 10px}
  .kap-content{padding:20px 16px;max-width:none}
  body.kap-body h1{font-size:33px}
  body.kap-body h2{font-size:22px}
  .kap-page-head{gap:14px;margin-bottom:18px;flex-wrap:wrap}
  .kap-page-head p{font-size:13.5px}

  .kap-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .kap-stat-card{min-height:122px;padding:18px}
  .kap-stat-card:nth-child(5){grid-column:1/-1}
  .kap-dashboard-grid{grid-template-columns:1fr;gap:12px}
  .kap-latest-notes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

  .kap-filter-card{padding:14px}
  .kap-filter-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
    align-items:stretch;
  }
  .kap-filter-grid input[type="search"]{grid-column:span 2}
  .kap-filter-grid .kap-input,
  .kap-filter-grid .kap-btn{
    width:100%;
    min-width:0;
    min-height:43px;
  }
  .kap-filter-grid .kap-btn{white-space:normal;padding-left:9px;padding-right:9px}

  .kap-table{min-width:900px}
  .kap-reference-two-col,
  .kap-payment-role-grid,
  .kap-certificate-preview-layout{grid-template-columns:1fr}
  .kap-reference-panel{min-height:0}
  .kap-payment-arrow{transform:rotate(90deg);height:34px}
  .kap-generation-details{position:static}
}

/* Very wide desktop remains single-row where there is genuinely enough room. */
@media (min-width:1651px){
  .kap-filter-grid > .kap-btn{min-width:0}
}


/* =========================================================
   v2.6.0 - MOBILE SLIDE-OUT PORTAL MENU
========================================================= */
.kap-mobile-menu-toggle,
.kap-mobile-menu-close,
.kap-mobile-menu-overlay{display:none}

@media (max-width:767px){
  body.kap-portal-body{overflow-x:hidden}
  .kap-shell{display:block;padding:0;min-height:100vh}
  .kap-main{min-height:100vh}

  .kap-mobile-menu-toggle{
    width:44px;
    height:44px;
    flex:0 0 44px;
    display:inline-flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    padding:0;
    border:1px solid var(--kap-border);
    border-radius:12px;
    background:#fffaf2;
    color:var(--kap-ink);
    box-shadow:0 6px 18px rgba(62,40,21,.06);
    cursor:pointer;
    position:relative;
    z-index:1003;
  }
  .kap-mobile-menu-toggle span{
    width:19px;
    height:2px;
    display:block;
    border-radius:99px;
    background:currentColor;
    transition:transform .25s ease,opacity .2s ease;
  }
  body.kap-mobile-menu-open .kap-mobile-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  body.kap-mobile-menu-open .kap-mobile-menu-toggle span:nth-child(2){opacity:0}
  body.kap-mobile-menu-open .kap-mobile-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  .kap-sidebar{
    position:fixed!important;
    z-index:1200!important;
    top:0!important;
    left:0;
    width:min(86vw,330px)!important;
    height:100dvh!important;
    max-height:100dvh;
    padding:20px 16px 24px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    border-radius:0 22px 22px 0!important;
    box-shadow:18px 0 55px rgba(17,10,5,.28)!important;
    transform:translate3d(-105%,0,0);
    visibility:hidden;
    transition:transform .34s cubic-bezier(.22,.8,.3,1),visibility 0s linear .34s;
    overscroll-behavior:contain;
  }
  .kap-sidebar.is-mobile-open{
    transform:translate3d(0,0,0);
    visibility:visible;
    transition:transform .34s cubic-bezier(.22,.8,.3,1),visibility 0s;
  }

  .kap-brand-block{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:12px;
    padding:2px 2px 18px!important;
    margin-bottom:14px!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }
  .kap-brand-block-inner{min-width:0;flex:1}
  .kap-brand-block .kap-brand-sub{display:block!important;font-size:8px;line-height:1.35;letter-spacing:.14em}
  .kap-brand-block .kap-brand-logo{max-width:145px;max-height:56px}
  .kap-mobile-menu-close{
    width:38px;
    height:38px;
    flex:0 0 38px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid rgba(255,255,255,.13);
    border-radius:11px;
    background:rgba(255,255,255,.06);
    color:#fff;
    font-size:28px;
    font-weight:300;
    line-height:1;
    cursor:pointer;
  }

  .kap-nav{
    display:flex!important;
    flex-direction:column!important;
    gap:6px!important;
    overflow:visible!important;
    padding:0 0 18px!important;
  }
  .kap-nav-item{
    width:100%;
    min-height:46px;
    flex:0 0 auto!important;
    justify-content:flex-start!important;
    padding:11px 13px!important;
    font-size:14px!important;
    white-space:normal!important;
    border-radius:11px;
  }
  .kap-nav-logout{margin-top:10px!important}

  .kap-mobile-menu-overlay{
    position:fixed;
    z-index:1190;
    inset:0;
    width:100%;
    height:100%;
    display:block;
    padding:0;
    border:0;
    background:rgba(17,12,8,.48);
    backdrop-filter:blur(2px);
    -webkit-backdrop-filter:blur(2px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .28s ease,visibility 0s linear .28s;
  }
  body.kap-mobile-menu-open .kap-mobile-menu-overlay{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transition:opacity .28s ease,visibility 0s;
  }
  body.kap-mobile-menu-open{overflow:hidden!important;touch-action:none}

  .kap-topbar{
    top:0!important;
    min-height:68px;
    padding:12px 14px!important;
    align-items:center!important;
    gap:10px!important;
    z-index:1100!important;
  }
  .kap-topbar-title{display:block;font-size:15px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
  .kap-topbar-actions{width:auto!important;flex:0 1 auto;justify-content:flex-end!important;gap:6px!important}
}

@media (max-width:760px){
  .kap-topbar-title{display:none!important}
  .kap-topbar-actions{margin-left:auto!important;width:auto!important;flex-wrap:nowrap!important;min-width:0}
  .kap-role-badge{margin-right:0!important;max-width:122px;overflow:hidden;text-overflow:ellipsis;font-size:10.5px!important;padding:7px 8px!important}
  .kap-topbar-actions .kap-btn{padding:8px 9px!important;font-size:10.5px!important}
  .kap-topbar-actions .kap-btn-light{display:none}
}

@media (max-width:430px){
  .kap-mobile-menu-toggle{width:41px;height:41px;flex-basis:41px;border-radius:11px}
  .kap-sidebar{width:min(90vw,320px)!important;padding:17px 14px 22px!important}
  .kap-nav-item{min-height:44px;padding:10px 12px!important;font-size:13.5px!important}
  .kap-role-badge{max-width:108px}
  .kap-topbar-actions .kap-btn-dark{padding:8px!important}
}

@media (prefers-reduced-motion:reduce){
  .kap-sidebar,.kap-mobile-menu-overlay,.kap-mobile-menu-toggle span{transition:none!important}
}


/* =========================================================
   v2.6.1 - DESKTOP / LAPTOP RECOVERY GUARD
   Mobile drawer is limited to phones. From 768px upward the
   portal always returns to the normal two-column desktop shell.
========================================================= */
@media (min-width:768px){
  body.kap-portal-body{
    overflow-x:auto!important;
    overflow-y:auto!important;
    touch-action:auto!important;
  }
  body.kap-portal-body.kap-mobile-menu-open{
    overflow-x:auto!important;
    overflow-y:auto!important;
    touch-action:auto!important;
  }
  .kap-shell{
    display:grid!important;
    grid-template-columns:var(--kap-sidebar) minmax(0,1fr)!important;
    min-height:100vh!important;
  }
  .kap-sidebar,
  .kap-sidebar.is-mobile-open{
    position:sticky!important;
    transform:none!important;
    visibility:visible!important;
    width:auto!important;
    max-height:none!important;
    left:auto!important;
    overflow-x:hidden!important;
    transition:none!important;
  }
  .kap-mobile-menu-toggle,
  .kap-mobile-menu-close,
  .kap-mobile-menu-overlay{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  .kap-brand-block{
    display:block!important;
  }
  .kap-nav{
    display:flex!important;
    flex-direction:column!important;
    overflow:visible!important;
    padding-bottom:0!important;
  }
  .kap-nav-item{
    flex:0 0 auto!important;
    width:auto!important;
    justify-content:flex-start!important;
    white-space:normal!important;
  }
  .kap-main{
    min-width:0!important;
  }
}


/* =========================================================
   v2.7.0 — BUTTON CONTRAST + PORTAL USER MANAGEMENT
========================================================= */
.kap-btn-primary,
a.kap-btn-primary,
a.kap-btn-primary:visited,
a.kap-btn-primary:hover,
a.kap-btn-primary:focus,
a.kap-btn-primary:active,
button.kap-btn-primary,
input.kap-btn-primary{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-decoration:none!important;
}
.kap-btn-dark,
a.kap-btn-dark,
a.kap-btn-dark:visited,
a.kap-btn-dark:hover,
a.kap-btn-dark:focus,
a.kap-btn-dark:active,
button.kap-btn-dark,
.kap-btn-success,
a.kap-btn-success,
a.kap-btn-success:visited,
a.kap-btn-success:hover,
a.kap-btn-success:focus,
a.kap-btn-success:active,
button.kap-btn-success{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-decoration:none!important;
}
.kap-btn-danger,
a.kap-btn-danger,
a.kap-btn-danger:visited,
a.kap-btn-danger:hover,
a.kap-btn-danger:focus,
a.kap-btn-danger:active,
button.kap-btn-danger{
  color:#a10f1b!important;
  -webkit-text-fill-color:#a10f1b!important;
  text-decoration:none!important;
}
.kap-btn-light,
a.kap-btn-light,
a.kap-btn-light:visited,
a.kap-btn-light:hover,
a.kap-btn-light:focus,
a.kap-btn-light:active,
button.kap-btn-light{
  color:var(--kap-ink)!important;
  -webkit-text-fill-color:var(--kap-ink)!important;
  text-decoration:none!important;
}
.kap-user-manage-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:220px}
.kap-user-manage-actions .kap-inline-form{margin:0}
.kap-user-manage-actions .kap-input-small{min-width:165px}
@media(max-width:767px){
  .kap-user-manage-actions{min-width:0;align-items:stretch;flex-direction:column}
  .kap-user-manage-actions .kap-input-small,.kap-user-manage-actions .kap-btn{width:100%}
}
