
/* KringToko Frontend App */
body.page-template-default:has(.ktb-app),
body.page-template-default:has(.ktb-auth-page){margin:0;background:#f4f7fb}
body:has(.ktb-app) header:not(.ktb-topbar),
body:has(.ktb-app) footer,
body:has(.ktb-auth-page) header:not(.ktb-topbar),
body:has(.ktb-auth-page) footer{display:none!important}
body:has(.ktb-app) .entry-header,
body:has(.ktb-auth-page) .entry-header{display:none!important}
body:has(.ktb-app) .site-main,
body:has(.ktb-auth-page) .site-main,
body:has(.ktb-app) .entry-content,
body:has(.ktb-auth-page) .entry-content{margin:0!important;padding:0!important;max-width:none!important;width:100%!important}

.ktb-auth-page,.ktb-app{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#18314f}
.ktb-auth-page *,.ktb-app *{box-sizing:border-box}
.ktb-logo-mark{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#08a34a,#087bff);display:grid;place-items:center;color:#fff;font-weight:900;font-size:22px;box-shadow:0 8px 24px rgba(8,163,74,.2)}

.ktb-auth-page{min-height:100vh;background:
radial-gradient(circle at 10% 20%,rgba(10,165,78,.14),transparent 32%),
radial-gradient(circle at 90% 80%,rgba(16,119,255,.12),transparent 30%),
#f7fafc;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:34px}
.ktb-auth-brand{display:flex;gap:13px;align-items:center;margin-bottom:25px}
.ktb-auth-brand h1{margin:0;font-size:34px;line-height:1;color:#123d76}.ktb-auth-brand h1 span{color:#089348}
.ktb-auth-brand p{margin:5px 0 0;color:#72849a}
.ktb-auth-card{width:min(460px,100%);background:#fff;padding:38px;border:1px solid #e5ebf2;border-radius:24px;box-shadow:0 24px 70px rgba(36,64,95,.12)}
.ktb-auth-copy h2{font-size:27px;margin:9px 0}.ktb-auth-copy p{color:#718096;line-height:1.6}
.ktb-kicker{font-size:11px;font-weight:800;letter-spacing:.12em;color:#079447}
.ktb-auth-card form p{margin:15px 0}
.ktb-auth-card label{display:block;font-weight:700;font-size:13px;margin-bottom:7px}
.ktb-auth-card input[type=text],.ktb-auth-card input[type=password]{width:100%;border:1px solid #d9e2ec;border-radius:11px;padding:13px 14px;font-size:15px;background:#fbfcfe}
.ktb-auth-card input[type=submit]{width:100%;border:0;border-radius:11px;padding:14px;background:linear-gradient(135deg,#079447,#0a78e8);color:#fff;font-size:15px;font-weight:800;cursor:pointer}
.ktb-auth-card .login-remember label{display:flex;gap:8px;align-items:center;font-weight:500}
.ktb-auth-foot{text-align:center;color:#9aa8b8;font-size:12px;margin-top:22px}

.ktb-app{min-height:100vh;background:#f4f7fb;display:flex}
.ktb-sidebar{position:fixed;left:0;top:0;bottom:0;width:258px;height:100dvh;min-height:0;background:#0e2947;color:#fff;padding:24px 16px;display:flex;flex-direction:column;z-index:9999;overflow:hidden}
.ktb-brand{display:flex;align-items:center;gap:12px;padding:4px 8px 18px;flex:0 0 auto}.ktb-brand strong{display:block;font-size:23px}.ktb-brand strong span{color:#39d27d}.ktb-brand small{color:#9db0c5}
.ktb-nav{display:flex;flex-direction:column;gap:6px;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:2px 4px 10px 0;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.28) transparent}
.ktb-nav::-webkit-scrollbar{width:7px}
.ktb-nav::-webkit-scrollbar-track{background:transparent}
.ktb-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22);border-radius:999px}
.ktb-nav::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.34)}
.ktb-nav a{display:flex;align-items:center;gap:12px;color:#b9c8d8;text-decoration:none;padding:12px 13px;border-radius:11px;font-size:14px;font-weight:650;transition:.2s;flex:0 0 auto}.ktb-nav a:hover,.ktb-nav a.active{background:rgba(255,255,255,.1);color:#fff}.ktb-nav a.active{box-shadow:inset 3px 0 #36d477}
.ktb-nav-icon{width:25px;height:25px;display:grid;place-items:center;font-size:17px}

/* KringToko Demo — locked Pro & Business previews */
.ktb-demo-divider{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:13px 8px 5px;padding-top:12px;border-top:1px solid rgba(255,255,255,.13);color:#9cd7ba;font-size:10px;font-weight:800;letter-spacing:.09em}
.ktb-demo-divider em{font-style:normal;color:#fbd38d;letter-spacing:0;text-transform:none;font-weight:700}
.ktb-demo-divider.business{color:#93c5fd}
.ktb-locked-nav{appearance:none;border:0;width:100%;display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:11px;background:transparent;color:#8798aa;font:650 13px/1.2 inherit;text-align:left;cursor:pointer;transition:.2s;flex:0 0 auto}
.ktb-locked-nav span:nth-child(2){flex:1}
.ktb-locked-nav b{font-size:11px;opacity:.78}
.ktb-locked-nav:hover{background:rgba(54,212,119,.10);color:#d8e7df;transform:translateX(2px)}
.ktb-locked-nav.business:hover{background:rgba(96,165,250,.12);color:#dbeafe}
body.ktb-modal-open{overflow:hidden}
.ktb-lock-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:20px}
.ktb-lock-modal.open{display:flex}
.ktb-lock-backdrop{position:absolute;inset:0;background:rgba(4,17,28,.72);backdrop-filter:blur(5px)}
.ktb-lock-dialog{position:relative;width:min(440px,100%);padding:34px 30px 28px;border-radius:24px;background:#fff;box-shadow:0 28px 80px rgba(2,18,29,.35);text-align:center;color:#263746;animation:ktbLockIn .22s ease-out}
@keyframes ktbLockIn{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
.ktb-lock-close{position:absolute;right:14px;top:12px;border:0;background:#eef3f6;color:#5b6b79;width:34px;height:34px;border-radius:50%;font-size:23px;line-height:1;cursor:pointer}
.ktb-lock-symbol{width:64px;height:64px;margin:0 auto 14px;border-radius:20px;display:grid;place-items:center;font-size:29px;background:linear-gradient(135deg,#eafff2,#d9f8e5);box-shadow:inset 0 0 0 1px #c8ecd6}
.ktb-lock-kicker{display:inline-flex;border-radius:999px;padding:6px 10px;background:#e8f8ef;color:#08743a;font-size:10px;font-weight:900;letter-spacing:.1em}
.ktb-lock-dialog h2{margin:12px 0 8px;font-size:26px;color:#142936}
.ktb-lock-dialog p{margin:7px 0;color:#60717d;line-height:1.55}
.ktb-lock-wa{display:flex;align-items:center;justify-content:center;margin:20px 0 12px;padding:13px 18px;border-radius:12px;background:#079447;color:#fff!important;text-decoration:none;font-weight:800;box-shadow:0 10px 24px rgba(7,148,71,.22)}
.ktb-lock-wa:hover{background:#067a3c;transform:translateY(-1px)}
.ktb-lock-dialog small{display:block;color:#8796a1}
@media(max-width:700px){.ktb-lock-dialog{padding:30px 20px 24px}.ktb-lock-dialog h2{font-size:23px}}
.ktb-sidebar-foot{margin-top:0;border-top:1px solid rgba(255,255,255,.12);padding:14px 8px 0;flex:0 0 auto;background:#0e2947}
.ktb-user-mini{display:flex;gap:10px;align-items:center}.ktb-user-mini strong{font-size:13px;display:block}.ktb-user-mini small{font-size:11px;color:#a9bacb;display:block;margin-top:2px}
.ktb-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e6f6ee;color:#087c42;font-weight:900;flex:none}
.ktb-logout{display:block;color:#ffbaba;text-decoration:none;font-size:12px;margin-top:12px}

.ktb-main{margin-left:258px;width:calc(100% - 258px);min-height:100vh}
.ktb-topbar{height:88px;background:#fff;border-bottom:1px solid #e8edf3;padding:18px 32px;display:flex;align-items:center;gap:15px;justify-content:space-between;position:sticky;top:0;z-index:100}
.ktb-topbar h1{margin:0;font-size:22px;color:#173554}.ktb-topbar p{margin:4px 0 0;color:#8a9aac;font-size:12px}.ktb-top-user{font-size:13px;color:#738398}
.ktb-menu-toggle{display:none;background:#f2f5f8;border:0;border-radius:9px;padding:8px 10px;font-size:18px}
.ktb-content{padding:28px 32px;max-width:1600px;margin:0 auto}
.ktb-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}
.ktb-stat{background:#fff;border:1px solid #e5ebf2;border-radius:16px;padding:19px;display:flex;gap:14px;align-items:center;box-shadow:0 4px 18px rgba(36,64,95,.04)}
.ktb-stat>span{width:47px;height:47px;border-radius:13px;display:grid;place-items:center;font-weight:900}.ktb-stat>span.green{background:#e9f9f0;color:#079447}.ktb-stat>span.blue{background:#eaf4ff;color:#0a78e8}.ktb-stat>span.purple{background:#f1edff;color:#7259d9}.ktb-stat>span.red{background:#ffeded;color:#d74747}
.ktb-stat small{display:block;color:#8291a3;font-size:12px}.ktb-stat strong{display:block;font-size:21px;margin-top:4px;color:#153554}

.ktb-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ktb-box{background:#fff;border:1px solid #e4ebf2;border-radius:17px;padding:20px;box-shadow:0 5px 20px rgba(26,54,83,.04);margin-bottom:18px}
.ktb-box h3{margin:0 0 14px;font-size:17px;color:#183957}.ktb-box-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.ktb-box-head h3{margin:0}.ktb-box-head p{margin:5px 0 0;color:#8593a3;font-size:13px}.ktb-box-head a{font-size:12px;color:#087fea;text-decoration:none}
.ktb-table-wrap{overflow:auto}.ktb-table{width:100%;border-collapse:collapse;font-size:13px;min-width:650px}.ktb-table th{text-align:left;color:#8090a2;font-size:11px;text-transform:uppercase;letter-spacing:.03em;padding:11px 10px;border-bottom:1px solid #edf1f5}.ktb-table td{padding:13px 10px;border-bottom:1px solid #f0f3f6;color:#42566b;vertical-align:middle}.ktb-table tr:last-child td{border-bottom:0}.ktb-table small{color:#97a4b2}.empty{text-align:center;color:#9aa7b5!important;padding:30px!important}
.ktb-pill{display:inline-block;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;background:#eef2f6;color:#637486}.ktb-pill.success,.ktb-pill.in{background:#e8f8ef;color:#087c42}.ktb-pill.danger,.ktb-pill.out{background:#ffeded;color:#c83d3d}.ktb-pill.adjustment{background:#edf1ff;color:#4d63c9}
.ktb-code{font-family:monospace;background:#f2f5f8;padding:4px 7px;border-radius:6px}
.ktb-muted{color:#8a99aa;font-size:12px}
.ktb-actions{white-space:nowrap}.ktb-icon-btn{display:inline-block;text-decoration:none;border:1px solid #dbe4ec;border-radius:8px;padding:6px 8px;color:#315c84;font-size:11px}.ktb-icon-btn.danger{color:#c63d3d;border-color:#f1c7c7}

.ktb-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;border:1px solid #d9e2eb;background:#fff;color:#38516b;padding:9px 13px;border-radius:9px;font-weight:700;font-size:12px;cursor:pointer}.ktb-btn.primary{border:0;background:linear-gradient(135deg,#079447,#087ce5);color:#fff}.ktb-btn.soft{background:#eef8f3;color:#087c42;border-color:#d6efe1}
.ktb-form{display:none;border-top:1px solid #eef2f5;padding-top:18px;margin-top:15px}.ktb-form.show{display:block}.ktb-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ktb-form label{display:block;color:#476078;font-size:12px;font-weight:700;margin-bottom:12px}.ktb-form label.full{grid-column:1/-1}.ktb-form input,.ktb-form select,.ktb-form textarea,.ktb-filter input,.ktb-filter select{width:100%;margin-top:6px;border:1px solid #dbe3eb;border-radius:9px;padding:10px 11px;background:#fbfcfd;color:#29445d;font:inherit}.ktb-form textarea{resize:vertical}.ktb-form-actions{display:flex;gap:8px;margin-top:5px}.ktb-filter{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin-bottom:16px}.ktb-filter input,.ktb-filter select{width:auto;margin:0}
.ktb-alert{padding:12px 14px;border-radius:10px;margin-bottom:18px;font-size:13px;font-weight:650}.ktb-alert.success{background:#e8f8ef;color:#087c42}.ktb-alert.error{background:#ffeded;color:#c83d3d}
.ktb-user-list{display:flex;flex-direction:column;gap:12px}.ktb-user-row{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid #edf1f5;border-radius:11px}.ktb-user-row strong{display:block;font-size:13px}.ktb-user-row small{display:block;color:#8998a8;margin-top:2px}
.ktb-app-error{padding:40px;text-align:center}

@media(max-width:1050px){
    .ktb-stat-grid{grid-template-columns:1fr 1fr}
    .ktb-grid-2{grid-template-columns:1fr}
}
@media(max-width:760px){
    .ktb-sidebar{transform:translateX(-100%);transition:.25s;width:260px}.ktb-sidebar.open{transform:translateX(0)}
    .ktb-main{margin-left:0;width:100%}.ktb-menu-toggle{display:block}
    .ktb-topbar{padding:15px 18px}.ktb-top-user{display:none}.ktb-content{padding:18px}
    .ktb-stat-grid{grid-template-columns:1fr 1fr;gap:10px}.ktb-stat{padding:14px}.ktb-stat strong{font-size:17px}
    .ktb-form-grid{grid-template-columns:1fr}.ktb-form label.full{grid-column:auto}
}
@media(max-width:480px){.ktb-stat-grid{grid-template-columns:1fr}.ktb-auth-card{padding:27px 22px}}


/* v1.2.0 */
.ktb-store-logo{width:42px;height:42px;border-radius:12px;object-fit:cover;background:#fff}
.ktb-avatar-photo{background-size:cover!important;background-position:center!important;color:transparent!important}
.ktb-top-actions{display:flex;align-items:center;gap:12px}
.ktb-notify{position:relative;text-decoration:none;font-size:18px;width:38px;height:38px;display:grid;place-items:center;border:1px solid #e3eaf1;border-radius:10px;background:#fff}
.ktb-notify span{position:absolute;right:-5px;top:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#e34848;color:white;font-size:10px;font-weight:900;display:grid;place-items:center}
.ktb-install-btn{border:0;border-radius:9px;padding:9px 12px;background:#e9f8f0;color:#087d43;font-weight:800;font-size:12px;cursor:pointer}
.ktb-chart-box canvas{width:100%;display:block;max-height:240px}
.ktb-chart-legend{display:flex;gap:14px;color:#718196;font-size:12px}.ktb-chart-legend span{display:flex;align-items:center;gap:6px}.ktb-chart-legend i{width:9px;height:9px;border-radius:50%;display:inline-block}.ktb-chart-legend i.in{background:#079447}.ktb-chart-legend i.out{background:#d94b4b}
.ktb-brand-preview{display:flex;gap:15px;align-items:center;padding:18px;background:#f6f9fc;border-radius:14px}.ktb-brand-preview img{width:70px;height:70px;border-radius:15px;object-fit:cover}.ktb-brand-preview strong{font-size:22px;color:#183957}.ktb-brand-preview p{margin:6px 0 0;color:#7b8c9e}
.ktb-info-list{margin-top:18px;display:flex;flex-direction:column;gap:10px}.ktb-info-list>div{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid #edf1f5}.ktb-info-list span{color:#8796a6;font-size:12px}.ktb-info-list strong{font-size:12px;text-align:right}
.ktb-profile-card{display:flex;align-items:center;gap:18px;padding:10px}.ktb-profile-photo{width:110px;height:110px;border-radius:24px;background-size:cover;background-position:center;border:5px solid #f0f4f8;box-shadow:0 8px 22px rgba(21,53,84,.08)}.ktb-profile-card h3{margin:0 0 5px;font-size:23px}.ktb-profile-card p{margin:0 0 5px;color:#079447;font-weight:800}.ktb-profile-card small{color:#7f90a1}
@media(max-width:760px){
  .ktb-install-btn{display:none!important}
  .ktb-notify{width:34px;height:34px}
}


/* v1.3.0 */
.ktb-inline-form{display:flex;gap:8px;margin:12px 0 18px}
.ktb-inline-form input{flex:1;border:1px solid #dbe3eb;border-radius:9px;padding:10px 11px;background:#fbfcfd}
.ktb-chip-list{display:flex;flex-wrap:wrap;gap:8px}
.ktb-chip{display:inline-flex;align-items:center;gap:8px;background:#eef6f2;color:#206047;border:1px solid #d9ece1;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700}
.ktb-chip a{text-decoration:none;color:#ad3c3c;font-size:16px;line-height:1}
.ktb-btn.danger-fill{background:#c93e3e;color:#fff;border-color:#c93e3e}


/* v1.3.1 sidebar height responsiveness */
@media(max-height:820px) and (min-width:761px){
  .ktb-sidebar{padding-top:16px;padding-bottom:14px}
  .ktb-brand{padding-bottom:12px}
  .ktb-nav{gap:4px}
  .ktb-nav a{padding-top:10px;padding-bottom:10px}
  .ktb-sidebar-foot{padding-top:10px}
}
@media(max-height:680px) and (min-width:761px){
  .ktb-nav a{padding-top:8px;padding-bottom:8px;font-size:13px}
  .ktb-brand strong{font-size:20px}
  .ktb-user-mini small,.ktb-logout{font-size:10px}
}


/* v1.3.3 — Modern Split Screen Login */
.ktb-auth-page.ktb-auth-split{
    min-height:100vh;
    padding:0;
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(440px,.92fr);
    background:#f7fafc;
    align-items:stretch;
}
.ktb-auth-left{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 15% 15%,rgba(255,255,255,.14),transparent 30%),
        radial-gradient(circle at 85% 80%,rgba(52,211,153,.18),transparent 30%),
        linear-gradient(145deg,#0c2c4c 0%,#0d4f62 48%,#087a55 100%);
    color:#fff;
    min-height:100vh;
}
.ktb-auth-left:before{
    content:"";
    position:absolute;
    width:420px;height:420px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:50%;
    right:-160px;top:-110px;
}
.ktb-auth-left:after{
    content:"";
    position:absolute;
    width:300px;height:300px;
    background:rgba(255,255,255,.035);
    border-radius:46% 54% 60% 40%;
    left:-90px;bottom:-120px;
    transform:rotate(24deg);
}
.ktb-auth-left-inner{
    position:relative;
    z-index:2;
    min-height:100vh;
    max-width:760px;
    margin:0 auto;
    padding:54px 60px 46px;
    display:flex;
    flex-direction:column;
}
.ktb-auth-brand.split-brand{
    margin:0 0 52px;
    color:#fff;
}
.ktb-auth-brand.split-brand h1{
    color:#fff;
    font-size:31px;
}
.ktb-auth-brand.split-brand h1 span{color:#5ce79c}
.ktb-auth-brand.split-brand p{color:rgba(255,255,255,.72)}
.ktb-login-logo{
    width:48px;height:48px;
    object-fit:cover;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 24px rgba(0,0,0,.15);
}
.ktb-auth-hero-copy{max-width:650px}
.ktb-kicker-light{
    display:inline-block;
    font-size:11px;
    font-weight:900;
    letter-spacing:.14em;
    color:#8ff0ba;
    margin-bottom:13px;
}
.ktb-auth-hero-copy h2{
    margin:0;
    color:#fff;
    font-size:clamp(38px,4.6vw,62px);
    line-height:1.03;
    letter-spacing:-.035em;
    max-width:650px;
}
.ktb-auth-hero-copy p{
    margin:20px 0 0;
    max-width:590px;
    color:rgba(255,255,255,.76);
    font-size:17px;
    line-height:1.7;
}
.ktb-auth-feature-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:34px;
}
.ktb-auth-feature{
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:14px 15px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.065);
    border-radius:14px;
    backdrop-filter:blur(8px);
}
.ktb-auth-feature>span{
    width:34px;height:34px;
    display:grid;place-items:center;
    border-radius:10px;
    background:rgba(255,255,255,.12);
    color:#8ff0ba;
    font-weight:900;
}
.ktb-auth-feature strong{
    display:block;
    font-size:13px;
    color:#fff;
    margin-bottom:3px;
}
.ktb-auth-feature small{
    display:block;
    color:rgba(255,255,255,.62);
    font-size:11px;
    line-height:1.45;
}
.ktb-auth-preview-card{
    margin-top:auto;
    width:min(520px,90%);
    background:rgba(255,255,255,.1);
    border:1px solid rgba(255,255,255,.13);
    border-radius:18px;
    padding:16px 18px 18px;
    box-shadow:0 20px 50px rgba(0,0,0,.16);
    backdrop-filter:blur(12px);
}
.ktb-preview-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    color:rgba(255,255,255,.68);
}
.ktb-preview-head .dot{
    display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:4px;
}
.ktb-preview-head .dot.green{background:#5ce79c}
.ktb-preview-head .dot.blue{background:#58b7ff}
.ktb-preview-head .dot.purple{background:#be8cff}
.ktb-preview-stats{
    display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;
}
.ktb-preview-stats>div{
    background:rgba(255,255,255,.08);
    border-radius:11px;
    padding:10px 11px;
}
.ktb-preview-stats small{display:block;color:rgba(255,255,255,.58);font-size:10px}
.ktb-preview-stats strong{display:block;color:#fff;font-size:18px;margin-top:3px}
.ktb-preview-bars{
    height:82px;
    display:flex;
    align-items:flex-end;
    gap:8px;
    padding-top:15px;
}
.ktb-preview-bars i{
    flex:1;
    min-width:10px;
    border-radius:6px 6px 2px 2px;
    background:linear-gradient(180deg,#62e3a0,#43a8ff);
    opacity:.9;
}

.ktb-auth-right{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:48px;
    background:
        radial-gradient(circle at 80% 15%,rgba(14,165,233,.08),transparent 28%),
        radial-gradient(circle at 20% 85%,rgba(16,185,129,.08),transparent 24%),
        #f8fbfd;
}
.ktb-auth-card.split-card{
    width:min(470px,100%);
    padding:40px 42px 34px;
    border-radius:22px;
    border:1px solid #e5ebf2;
    box-shadow:0 24px 80px rgba(29,58,91,.12);
}
.ktb-auth-card.split-card .ktb-auth-copy h2{
    font-size:30px;
    letter-spacing:-.02em;
    margin-top:10px;
}
.ktb-auth-card.split-card .ktb-auth-copy p{
    font-size:14px;
    margin-bottom:24px;
}
.ktb-auth-card.split-card form p{
    margin:16px 0;
}
.ktb-auth-card.split-card label{
    font-size:12px;
    color:#29445d;
}
.ktb-auth-card.split-card input[type=text],
.ktb-auth-card.split-card input[type=password]{
    height:48px;
    border-radius:10px;
    border:1px solid #d9e3ec;
    background:#fbfdff;
    transition:.18s;
}
.ktb-auth-card.split-card input[type=text]:focus,
.ktb-auth-card.split-card input[type=password]:focus{
    border-color:#0b8b69;
    box-shadow:0 0 0 3px rgba(11,139,105,.09);
    outline:none;
}
.ktb-auth-card.split-card input[type=submit]{
    height:50px;
    border-radius:10px;
    background:linear-gradient(135deg,#079447 0%,#0b79e5 100%);
    box-shadow:0 10px 24px rgba(8,122,116,.18);
}
.ktb-auth-card.split-card input[type=submit]:hover{
    filter:brightness(.98);
    transform:translateY(-1px);
}
.ktb-login-helper{
    display:flex;
    gap:8px;
    align-items:center;
    padding:11px 12px;
    border-radius:10px;
    background:#f3f8f6;
    color:#708194;
    margin-top:18px;
}
.ktb-login-helper small{font-size:11px}
.ktb-mobile-brand{display:none}
.ktb-auth-card.split-card .ktb-auth-foot{
    margin-top:22px;
    padding-top:18px;
    border-top:1px solid #edf1f5;
}

@media(max-width:1050px){
    .ktb-auth-page.ktb-auth-split{
        grid-template-columns:minmax(0,.95fr) minmax(410px,1.05fr);
    }
    .ktb-auth-left-inner{padding:42px 38px}
    .ktb-auth-feature-grid{grid-template-columns:1fr}
    .ktb-auth-preview-card{display:none}
}
@media(max-width:820px){
    .ktb-auth-page.ktb-auth-split{
        display:block;
        background:#f6f9fc;
    }
    .ktb-auth-left{display:none}
    .ktb-auth-right{
        min-height:100vh;
        padding:28px 18px;
    }
    .ktb-mobile-brand{
        display:flex;
        align-items:center;
        gap:11px;
        margin-bottom:30px;
    }
    .ktb-mobile-brand strong{
        display:block;
        color:#173f72;
        font-size:22px;
    }
    .ktb-mobile-brand strong span{color:#079447}
    .ktb-mobile-brand small{
        display:block;
        color:#8392a3;
        margin-top:3px;
    }
    .ktb-auth-card.split-card{
        padding:30px 26px;
    }
}


/* v1.3.4 — Login auto-fit viewport, no unnecessary vertical scroll */
html:has(.ktb-auth-split),
body:has(.ktb-auth-split){
    height:100%;
    min-height:100%;
    overflow:hidden!important;
}
body:has(.ktb-auth-split){
    margin:0!important;
}

.ktb-auth-page.ktb-auth-split{
    height:100dvh;
    min-height:100dvh;
    max-height:100dvh;
    overflow:hidden;
}
.ktb-auth-left,
.ktb-auth-right{
    min-height:0;
    height:100dvh;
    max-height:100dvh;
    overflow:hidden;
}
.ktb-auth-left-inner{
    min-height:0;
    height:100%;
    padding:clamp(28px,4.6vh,54px) clamp(30px,4.4vw,60px) clamp(24px,4vh,46px);
}
.ktb-auth-brand.split-brand{
    margin-bottom:clamp(24px,4.2vh,52px);
}
.ktb-auth-hero-copy h2{
    font-size:clamp(34px,4.2vw,58px);
}
.ktb-auth-hero-copy p{
    margin-top:clamp(12px,2.2vh,20px);
    font-size:clamp(14px,1.15vw,17px);
    line-height:1.6;
}
.ktb-auth-feature-grid{
    margin-top:clamp(18px,3vh,34px);
    gap:10px;
}
.ktb-auth-feature{
    padding:11px 13px;
}
.ktb-auth-preview-card{
    margin-top:clamp(16px,3vh,30px);
    padding:13px 16px 14px;
}
.ktb-preview-stats{
    margin-top:10px;
}
.ktb-preview-bars{
    height:clamp(54px,8.5vh,82px);
    padding-top:10px;
}

.ktb-auth-right{
    padding:clamp(22px,4.2vh,48px) clamp(22px,3.5vw,48px);
}
.ktb-auth-card.split-card{
    padding:clamp(26px,4vh,40px) clamp(28px,3.3vw,42px) clamp(24px,3.5vh,34px);
    max-height:calc(100dvh - 44px);
    overflow:auto;
    scrollbar-width:none;
}
.ktb-auth-card.split-card::-webkit-scrollbar{display:none}
.ktb-auth-card.split-card .ktb-auth-copy h2{
    font-size:clamp(24px,2.2vw,30px);
}
.ktb-auth-card.split-card .ktb-auth-copy p{
    margin-bottom:clamp(14px,2.2vh,24px);
}
.ktb-auth-card.split-card form p{
    margin:clamp(10px,1.7vh,16px) 0;
}
.ktb-auth-card.split-card input[type=text],
.ktb-auth-card.split-card input[type=password]{
    height:clamp(42px,5.8vh,48px);
}
.ktb-auth-card.split-card input[type=submit]{
    height:clamp(44px,6vh,50px);
}
.ktb-login-helper{
    margin-top:clamp(12px,2vh,18px);
}
.ktb-auth-card.split-card .ktb-auth-foot{
    margin-top:clamp(14px,2.2vh,22px);
    padding-top:clamp(12px,1.8vh,18px);
}

/* Common 1366x768 / compact laptop displays */
@media (max-height:820px) and (min-width:821px){
    .ktb-auth-left-inner{
        padding-top:28px;
        padding-bottom:22px;
    }
    .ktb-auth-brand.split-brand{
        margin-bottom:25px;
    }
    .ktb-auth-hero-copy h2{
        font-size:44px;
    }
    .ktb-auth-hero-copy p{
        margin-top:11px;
        font-size:14px;
        line-height:1.5;
    }
    .ktb-auth-feature-grid{
        margin-top:20px;
        gap:8px;
    }
    .ktb-auth-feature{
        padding:9px 11px;
    }
    .ktb-auth-feature>span{
        width:30px;height:30px;
    }
    .ktb-auth-feature small{
        font-size:10px;
    }
    .ktb-auth-preview-card{
        margin-top:16px;
        padding:11px 14px 12px;
        width:min(500px,86%);
    }
    .ktb-preview-stats>div{
        padding:7px 9px;
    }
    .ktb-preview-stats strong{
        font-size:16px;
    }
    .ktb-preview-bars{
        height:55px;
    }
    .ktb-auth-card.split-card{
        padding:28px 34px 24px;
        max-height:calc(100dvh - 36px);
    }
}

/* Very short laptop windows: reduce decorative content first */
@media (max-height:680px) and (min-width:821px){
    .ktb-auth-brand.split-brand{
        margin-bottom:16px;
    }
    .ktb-auth-hero-copy h2{
        font-size:38px;
    }
    .ktb-auth-hero-copy p{
        font-size:13px;
    }
    .ktb-auth-feature-grid{
        grid-template-columns:1fr 1fr;
        margin-top:14px;
    }
    .ktb-auth-feature{
        padding:7px 9px;
    }
    .ktb-auth-feature:nth-child(3),
    .ktb-auth-feature:nth-child(4){
        display:none;
    }
    .ktb-auth-preview-card{
        margin-top:12px;
    }
    .ktb-preview-bars{
        height:42px;
    }
    .ktb-auth-card.split-card{
        padding:22px 30px 20px;
    }
    .ktb-login-helper{
        display:none;
    }
}

/* Mobile/tablet can scroll naturally if device UI reduces the usable viewport */
@media(max-width:820px){
    html:has(.ktb-auth-split),
    body:has(.ktb-auth-split){
        height:auto;
        min-height:100%;
        overflow:auto!important;
    }
    .ktb-auth-page.ktb-auth-split{
        height:auto;
        min-height:100dvh;
        max-height:none;
        overflow:visible;
    }
    .ktb-auth-right{
        min-height:100dvh;
        height:auto;
        max-height:none;
        overflow:visible;
    }
    .ktb-auth-card.split-card{
        max-height:none;
        overflow:visible;
    }
}


/* v1.3.5 — KringToko horizontal logo on login */
.ktb-auth-brand.split-brand.ktb-auth-brand-logo{
    display:block;
    width:min(470px,82%);
    margin-bottom:clamp(24px,4.2vh,52px);
    padding:0;
}
.ktb-login-brand-horizontal{
    display:block;
    width:100%;
    max-width:470px;
    height:auto;
    object-fit:contain;
    border-radius:12px;
    box-shadow:0 12px 34px rgba(0,0,0,.10);
}
.ktb-mobile-brand.ktb-mobile-brand-logo{
    display:none;
}
.ktb-login-brand-mobile{
    display:block;
    width:min(330px,100%);
    height:auto;
    object-fit:contain;
}
@media(max-height:820px) and (min-width:821px){
    .ktb-auth-brand.split-brand.ktb-auth-brand-logo{
        width:min(390px,76%);
        margin-bottom:24px;
    }
}
@media(max-height:680px) and (min-width:821px){
    .ktb-auth-brand.split-brand.ktb-auth-brand-logo{
        width:min(335px,68%);
        margin-bottom:14px;
    }
}
@media(max-width:820px){
    .ktb-mobile-brand.ktb-mobile-brand-logo{
        display:block;
        margin-bottom:26px;
    }
}


/* v1.3.6 — Organic logo treatment + owner upgrade button */

/* Remove rectangular white card feel from desktop login logo */
.ktb-auth-brand.split-brand.ktb-auth-brand-logo{
    position:relative;
    width:min(470px,82%);
    padding:14px 24px 12px 18px;
    margin-left:-6px;
    isolation:isolate;
}
.ktb-auth-brand.split-brand.ktb-auth-brand-logo::before{
    content:"";
    position:absolute;
    inset:-8px -14px -8px -10px;
    z-index:-1;
    background:
        linear-gradient(135deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.94) 62%,rgba(219,255,239,.90) 100%);
    border:1px solid rgba(255,255,255,.38);
    border-radius:42% 58% 48% 52% / 54% 44% 56% 46%;
    box-shadow:
        0 16px 36px rgba(1,35,60,.16),
        0 0 30px rgba(99,237,187,.10);
    transform:rotate(-1.2deg);
}
.ktb-auth-brand.split-brand.ktb-auth-brand-logo::after{
    content:"";
    position:absolute;
    width:38px;
    height:38px;
    right:-14px;
    top:4px;
    z-index:-2;
    border-radius:50%;
    background:rgba(199,255,229,.75);
    box-shadow:-425px 115px 0 -12px rgba(255,255,255,.65);
}
.ktb-login-brand-horizontal{
    position:relative;
    z-index:1;
    width:100%;
    max-width:470px;
    height:auto;
    object-fit:contain;
    border-radius:0;
    box-shadow:none;
    filter:drop-shadow(0 4px 7px rgba(10,50,85,.08));
}

/* Mobile keeps a clean white card-like context, since it already reads well */
@media(max-width:820px){
    .ktb-mobile-brand.ktb-mobile-brand-logo{
        background:linear-gradient(135deg,#fff 0%,#f5fffa 100%);
        border:1px solid #e7eef3;
        border-radius:18px;
        padding:14px 16px;
        box-shadow:0 12px 30px rgba(29,58,91,.08);
    }
}

/* Owner-only upgrade CTA */
.ktb-upgrade-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    text-decoration:none!important;
    border:1px solid rgba(255,183,56,.28);
    background:linear-gradient(135deg,#fff6db 0%,#ffe6a6 100%);
    color:#8a5600!important;
    padding:9px 13px;
    border-radius:10px;
    font-size:12px;
    font-weight:900;
    box-shadow:0 6px 16px rgba(197,132,13,.10);
    transition:.18s ease;
    white-space:nowrap;
}
.ktb-upgrade-btn:hover{
    transform:translateY(-1px);
    box-shadow:0 9px 20px rgba(197,132,13,.16);
    color:#744900!important;
}
@media(max-width:900px){
    .ktb-upgrade-btn{
        padding:8px 10px;
        font-size:11px;
    }
}
@media(max-width:760px){
    .ktb-upgrade-btn{
        position:fixed;
        right:16px;
        bottom:18px;
        z-index:9998;
        box-shadow:0 10px 28px rgba(132,86,0,.24);
    }
}


/* v1.3.7 — Desktop login left panel: white logo zone + smooth green gradient */
@media(min-width:821px){

  .ktb-auth-left{
      background:
          linear-gradient(
              180deg,
              #ffffff 0%,
              #ffffff 22%,
              #f4fbf8 27%,
              #d9f5e8 34%,
              #81dec0 43%,
              #139b75 56%,
              #0d6f62 72%,
              #0b5060 100%
          )!important;
      color:#fff;
  }

  /* Decorative teal arcs remain subtle */
  .ktb-auth-left:before{
      border-color:rgba(14,100,96,.12)!important;
  }
  .ktb-auth-left:after{
      background:rgba(3,74,84,.08)!important;
  }

  .ktb-auth-left-inner{
      padding-top:24px!important;
  }

  /* Logo sits directly on the white zone: no box/blob */
  .ktb-auth-brand.split-brand.ktb-auth-brand-logo{
      position:relative;
      width:min(470px,82%);
      margin:0 0 26px 0!important;
      padding:0!important;
      background:transparent!important;
      border:0!important;
      box-shadow:none!important;
      isolation:auto!important;
  }

  .ktb-auth-brand.split-brand.ktb-auth-brand-logo::before,
  .ktb-auth-brand.split-brand.ktb-auth-brand-logo::after{
      display:none!important;
      content:none!important;
  }

  .ktb-login-brand-horizontal{
      display:block;
      width:100%;
      max-width:470px;
      height:auto;
      object-fit:contain;
      background:transparent!important;
      border-radius:0!important;
      box-shadow:none!important;
      filter:none!important;
  }

  /* Text area begins in the transition zone and stays readable */
  .ktb-kicker-light{
      color:#087a58!important;
      text-shadow:none!important;
  }

  .ktb-auth-hero-copy h2{
      color:#073855!important;
      text-shadow:none!important;
  }

  .ktb-auth-hero-copy p{
      color:#355f6d!important;
  }

  /* Feature cards sit on greener section */
  .ktb-auth-feature-grid{
      margin-top:18px!important;
  }

  .ktb-auth-feature{
      background:rgba(4,72,78,.20)!important;
      border-color:rgba(255,255,255,.22)!important;
      backdrop-filter:blur(8px);
  }

  .ktb-auth-feature strong{
      color:#fff!important;
  }

  .ktb-auth-feature small{
      color:rgba(255,255,255,.78)!important;
  }

  .ktb-auth-feature>span{
      background:rgba(255,255,255,.16)!important;
      color:#d9ffef!important;
  }

  .ktb-auth-preview-card{
      background:rgba(1,61,70,.25)!important;
      border-color:rgba(255,255,255,.20)!important;
      box-shadow:0 18px 42px rgba(3,53,61,.14)!important;
  }

  .ktb-preview-head,
  .ktb-preview-stats small{
      color:rgba(255,255,255,.78)!important;
  }

  .ktb-preview-stats strong{
      color:#fff!important;
  }
}

/* Compact desktop/laptop tuning so the white logo zone does not consume too much height */
@media(max-height:820px) and (min-width:821px){
  .ktb-auth-left{
      background:
          linear-gradient(
              180deg,
              #ffffff 0%,
              #ffffff 18%,
              #f3fbf7 23%,
              #d5f3e5 29%,
              #73d9b7 37%,
              #139b75 49%,
              #0d6f62 67%,
              #0b5060 100%
          )!important;
  }

  .ktb-auth-brand.split-brand.ktb-auth-brand-logo{
      width:min(390px,76%)!important;
      margin-bottom:17px!important;
  }

  .ktb-auth-hero-copy h2{
      font-size:42px!important;
  }

  .ktb-auth-hero-copy p{
      font-size:13px!important;
      margin-top:8px!important;
  }

  .ktb-auth-feature-grid{
      margin-top:14px!important;
  }
}


/* v1.3.8 — Dark Premium Login */
@media(min-width:821px){

  .ktb-auth-left{
      background:
          radial-gradient(circle at 18% 14%,rgba(19,180,146,.16),transparent 28%),
          radial-gradient(circle at 82% 78%,rgba(13,150,103,.14),transparent 26%),
          linear-gradient(145deg,#0a2038 0%,#0d3f55 48%,#0a6a5a 100%)!important;
      color:#fff;
  }

  .ktb-auth-left:before{
      border-color:rgba(255,255,255,.07)!important;
  }
  .ktb-auth-left:after{
      background:rgba(255,255,255,.025)!important;
  }

  .ktb-auth-left-inner{
      padding-top:30px!important;
  }

  /* Transparent logo, no white panel */
  .ktb-auth-brand.split-brand.ktb-auth-brand-logo{
      position:relative;
      width:min(430px,78%)!important;
      margin:0 0 28px 0!important;
      padding:0!important;
      background:transparent!important;
      border:0!important;
      box-shadow:none!important;
      isolation:auto!important;
  }

  .ktb-auth-brand.split-brand.ktb-auth-brand-logo::before,
  .ktb-auth-brand.split-brand.ktb-auth-brand-logo::after{
      display:none!important;
      content:none!important;
  }

  .ktb-login-brand-horizontal{
      width:100%;
      max-width:430px;
      background:transparent!important;
      border-radius:0!important;
      box-shadow:none!important;
      filter:
          drop-shadow(0 5px 10px rgba(0,0,0,.18))
          drop-shadow(0 0 10px rgba(80,220,170,.08));
  }

  .ktb-kicker-light{
      color:#6ee7b7!important;
  }

  .ktb-auth-hero-copy h2{
      color:#fff!important;
      font-size:clamp(36px,4vw,54px)!important;
      line-height:1.04;
      text-shadow:0 2px 14px rgba(0,0,0,.12);
  }

  .ktb-auth-hero-copy p{
      color:rgba(255,255,255,.76)!important;
      max-width:590px;
  }

  .ktb-auth-feature-grid{
      margin-top:24px!important;
      gap:10px!important;
  }

  .ktb-auth-feature{
      background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.045))!important;
      border-color:rgba(255,255,255,.10)!important;
      box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
      backdrop-filter:blur(8px);
  }

  .ktb-auth-feature>span{
      background:linear-gradient(135deg,rgba(62,211,151,.22),rgba(39,143,222,.16))!important;
      color:#84f0c2!important;
  }

  .ktb-auth-feature strong{
      color:#fff!important;
  }

  .ktb-auth-feature small{
      color:rgba(255,255,255,.62)!important;
  }

  .ktb-auth-preview-card{
      width:min(500px,88%)!important;
      background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.045))!important;
      border-color:rgba(255,255,255,.09)!important;
      box-shadow:0 18px 45px rgba(0,0,0,.18)!important;
  }

  .ktb-preview-head,
  .ktb-preview-stats small{
      color:rgba(255,255,255,.64)!important;
  }

  .ktb-preview-stats>div{
      background:rgba(255,255,255,.055)!important;
  }

  .ktb-preview-stats strong{
      color:#fff!important;
  }

  .ktb-preview-bars i{
      background:linear-gradient(180deg,#67e8a9,#39a7f3)!important;
  }

  .ktb-auth-right{
      background:
          radial-gradient(circle at 82% 16%,rgba(14,165,233,.06),transparent 28%),
          radial-gradient(circle at 18% 84%,rgba(16,185,129,.06),transparent 25%),
          #f7fafc!important;
  }

  .ktb-auth-card.split-card{
      border:1px solid #e6edf3!important;
      box-shadow:0 24px 70px rgba(21,54,88,.12)!important;
  }
}

/* Compact laptops */
@media(max-height:820px) and (min-width:821px){
  .ktb-auth-left-inner{
      padding-top:22px!important;
      padding-bottom:18px!important;
  }

  .ktb-auth-brand.split-brand.ktb-auth-brand-logo{
      width:min(360px,72%)!important;
      margin-bottom:17px!important;
  }

  .ktb-auth-hero-copy h2{
      font-size:40px!important;
  }

  .ktb-auth-hero-copy p{
      font-size:13px!important;
      margin-top:8px!important;
  }

  .ktb-auth-feature-grid{
      margin-top:15px!important;
      gap:8px!important;
  }

  .ktb-auth-feature{
      padding:8px 10px!important;
  }

  .ktb-auth-preview-card{
      margin-top:13px!important;
      width:min(470px,84%)!important;
  }
}

@media(max-height:680px) and (min-width:821px){
  .ktb-auth-brand.split-brand.ktb-auth-brand-logo{
      width:min(320px,66%)!important;
      margin-bottom:11px!important;
  }

  .ktb-auth-hero-copy h2{
      font-size:36px!important;
  }

  .ktb-auth-feature:nth-child(3),
  .ktb-auth-feature:nth-child(4){
      display:none!important;
  }

  .ktb-auth-preview-card{
      margin-top:10px!important;
  }
}

/* Mobile keeps existing layout */
@media(max-width:820px){
  .ktb-mobile-brand.ktb-mobile-brand-logo{
      background:linear-gradient(135deg,#fff,#f6fffa)!important;
      border:1px solid #e4edf3!important;
      border-radius:18px!important;
      padding:14px 16px!important;
      box-shadow:0 10px 26px rgba(29,58,91,.08)!important;
  }
}


/* v1.3.9 — Upgrade Plans */
.ktb-upgrade-hero{
    position:relative;
    overflow:hidden;
    padding:28px 30px;
    margin-bottom:18px;
    color:#fff;
    border-radius:18px;
    background:
        radial-gradient(circle at 90% 15%,rgba(255,255,255,.13),transparent 25%),
        linear-gradient(135deg,#0e3554 0%,#08745e 100%);
    box-shadow:0 10px 28px rgba(18,67,88,.12);
}
.ktb-upgrade-hero:after{
    content:"";
    position:absolute;
    right:-70px;bottom:-90px;
    width:230px;height:230px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:50%;
}
.ktb-upgrade-kicker{
    font-size:11px;font-weight:900;letter-spacing:.13em;color:#8cf0be;
}
.ktb-upgrade-hero h2{
    margin:8px 0 8px;
    font-size:30px;color:#fff;
}
.ktb-upgrade-hero p{
    max-width:760px;
    margin:0;
    color:rgba(255,255,255,.78);
    line-height:1.6;
}
.ktb-upgrade-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}
.ktb-plan-card{
    position:relative;
    background:#fff;
    border:1px solid #e1e8ef;
    border-radius:18px;
    padding:22px;
    box-shadow:0 6px 22px rgba(29,58,91,.05);
}
.ktb-plan-card.pro{
    border-top:4px solid #0a8d72;
}
.ktb-plan-card.business{
    border-top:4px solid #7254d7;
}
.ktb-plan-top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
}
.ktb-plan-top h3{
    margin:8px 0 4px;
    font-size:24px;
    color:#183957;
}
.ktb-plan-top p{
    margin:0;color:#8090a1;font-size:13px;
}
.ktb-plan-icon{
    width:50px;height:50px;
    display:grid;place-items:center;
    border-radius:14px;
    background:#f2f7f5;
    font-size:24px;
}
.ktb-plan-card.business .ktb-plan-icon{
    background:#f4f1ff;
}
.ktb-plan-badge{
    display:inline-block;
    padding:5px 8px;
    border-radius:999px;
    background:#e8f8f1;
    color:#087b48;
    font-size:9px;
    font-weight:900;
    letter-spacing:.05em;
}
.ktb-plan-badge.business{
    background:#f1edff;
    color:#6348c9;
}
.ktb-plan-price{
    display:flex;
    flex-wrap:wrap;
    align-items:end;
    gap:6px;
    margin:22px 0 18px;
    padding-bottom:18px;
    border-bottom:1px solid #edf1f5;
}
.ktb-plan-price strong{
    font-size:26px;
    color:#153654;
}
.ktb-plan-price span{
    color:#738498;
    margin-bottom:3px;
}
.ktb-plan-price small{
    width:100%;
    display:block;
    margin-top:4px;
    color:#8a99a9;
}
.ktb-plan-section-title{
    font-size:12px;
    font-weight:900;
    color:#39546c;
    margin-bottom:10px;
}
.ktb-plan-features{
    list-style:none;
    margin:0 0 22px;
    padding:0;
    display:grid;
    gap:9px;
}
.ktb-plan-features li{
    font-size:13px;
    color:#53677c;
    line-height:1.4;
}
.ktb-plan-card.pro .ktb-plan-features li::first-letter{color:#0a8d72}
.ktb-plan-cta{
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none!important;
    min-height:48px;
    padding:11px 15px;
    border-radius:11px;
    font-size:13px;
    font-weight:900;
    color:#fff!important;
    transition:.18s ease;
}
.ktb-plan-cta.pro{
    background:linear-gradient(135deg,#079447,#0b7de3);
}
.ktb-plan-cta.business{
    background:linear-gradient(135deg,#684bc8,#8a5ae8);
}
.ktb-plan-cta:hover{
    transform:translateY(-1px);
    box-shadow:0 9px 20px rgba(21,54,84,.14);
}
.ktb-upgrade-note{
    display:flex;
    gap:13px;
    align-items:flex-start;
    margin-top:18px;
    padding:17px 19px;
    background:#fff8e7;
    border:1px solid #f5e4b8;
    border-radius:14px;
}
.ktb-upgrade-note-icon{font-size:24px}
.ktb-upgrade-note strong{color:#72551d}
.ktb-upgrade-note p{
    margin:4px 0 0;
    color:#816b3f;
    font-size:12px;
}
@media(max-width:900px){
    .ktb-upgrade-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
    .ktb-upgrade-hero{padding:22px 20px}
    .ktb-upgrade-hero h2{font-size:25px}
    .ktb-plan-card{padding:18px}
    .ktb-plan-price strong{font-size:23px}
}


/* v1.3.10 — Desktop text branding; logo image only on mobile */
@media(min-width:821px){
    .ktb-auth-brand.split-brand.ktb-auth-brand-text{
        display:block!important;
        width:auto!important;
        margin:0 0 28px 0!important;
        padding:0!important;
        background:transparent!important;
        border:0!important;
        box-shadow:none!important;
    }
    .ktb-brand-wordmark{
        font-size:clamp(30px,3vw,42px);
        line-height:1;
        font-weight:900;
        letter-spacing:-.045em;
        color:#ffffff;
        text-shadow:0 4px 18px rgba(0,0,0,.12);
    }
    .ktb-brand-wordmark span{
        color:#5ce79c;
    }
    .ktb-brand-tagline{
        margin-top:7px;
        font-size:14px;
        font-weight:500;
        letter-spacing:.01em;
        color:rgba(255,255,255,.66);
    }
}
@media(max-height:820px) and (min-width:821px){
    .ktb-auth-brand.split-brand.ktb-auth-brand-text{
        margin-bottom:18px!important;
    }
    .ktb-brand-wordmark{
        font-size:34px;
    }
    .ktb-brand-tagline{
        margin-top:5px;
        font-size:12px;
    }
}
@media(max-height:680px) and (min-width:821px){
    .ktb-auth-brand.split-brand.ktb-auth-brand-text{
        margin-bottom:12px!important;
    }
}

/* On mobile, desktop text branding is hidden and the existing logo image remains */
@media(max-width:820px){
    .ktb-auth-brand-text{
        display:none!important;
    }
    .ktb-mobile-brand.ktb-mobile-brand-logo{
        display:block!important;
    }
}


/* v1.3.11 — Desktop login proportion & branding refinement */
@media(min-width:821px){

  /* Center the left-side content vertically and use the available height better */
  .ktb-auth-left-inner{
      justify-content:center!important;
      min-height:100dvh!important;
      height:100dvh!important;
      padding-top:24px!important;
      padding-bottom:24px!important;
  }

  /* Larger branding as the main visual identity */
  .ktb-auth-brand.split-brand.ktb-auth-brand-text{
      margin:0 0 22px 0!important;
  }

  .ktb-brand-wordmark{
      font-size:clamp(46px,5vw,72px)!important;
      line-height:.96!important;
      letter-spacing:-.055em!important;
  }

  .ktb-brand-tagline{
      margin-top:10px!important;
      font-size:clamp(15px,1.2vw,18px)!important;
      color:rgba(255,255,255,.74)!important;
  }

  /* Hero becomes supporting copy only; duplicate headline removed */
  .ktb-auth-hero-copy-compact{
      max-width:610px;
  }

  .ktb-auth-hero-copy-compact .ktb-kicker-light{
      display:block;
      margin-bottom:8px!important;
  }

  .ktb-auth-hero-copy-compact p{
      margin:0!important;
      color:rgba(255,255,255,.76)!important;
      font-size:clamp(14px,1.15vw,16px)!important;
      line-height:1.55!important;
      max-width:590px;
  }

  /* Pull the remaining content upward and make the block feel centered */
  .ktb-auth-feature-grid{
      margin-top:20px!important;
  }

  .ktb-auth-preview-card{
      margin-top:18px!important;
      width:min(540px,90%)!important;
  }

  /* Keep overall left stack compact enough for 1366x768 */
  .ktb-preview-bars{
      height:clamp(44px,7vh,64px)!important;
  }
}

/* Typical laptop height */
@media(max-height:820px) and (min-width:821px){
  .ktb-auth-left-inner{
      padding-top:18px!important;
      padding-bottom:18px!important;
  }

  .ktb-auth-brand.split-brand.ktb-auth-brand-text{
      margin-bottom:14px!important;
  }

  .ktb-brand-wordmark{
      font-size:clamp(42px,4.5vw,58px)!important;
  }

  .ktb-brand-tagline{
      margin-top:6px!important;
      font-size:13px!important;
  }

  .ktb-auth-hero-copy-compact .ktb-kicker-light{
      margin-bottom:5px!important;
  }

  .ktb-auth-hero-copy-compact p{
      font-size:12.5px!important;
  }

  .ktb-auth-feature-grid{
      margin-top:12px!important;
      gap:8px!important;
  }

  .ktb-auth-feature{
      padding:8px 10px!important;
  }

  .ktb-auth-preview-card{
      margin-top:12px!important;
      width:min(500px,86%)!important;
  }
}

/* Very short desktop windows */
@media(max-height:680px) and (min-width:821px){
  .ktb-brand-wordmark{
      font-size:40px!important;
  }

  .ktb-brand-tagline{
      font-size:12px!important;
  }

  .ktb-auth-feature:nth-child(3),
  .ktb-auth-feature:nth-child(4){
      display:none!important;
  }

  .ktb-auth-preview-card{
      margin-top:9px!important;
  }
}


/* v1.3.12 — Larger proportional KringToko desktop branding */
@media(min-width:821px){
    .ktb-brand-wordmark{
        font-size:clamp(56px,7vw,92px)!important;
        line-height:.94!important;
    }
    .ktb-brand-tagline{
        margin-top:12px!important;
        font-size:clamp(16px,1.35vw,20px)!important;
        color:rgba(255,255,255,.74)!important;
    }
}

/* Keep branding proportional on common laptop heights */
@media(max-height:820px) and (min-width:821px){
    .ktb-brand-wordmark{
        font-size:clamp(50px,6.2vw,76px)!important;
    }
    .ktb-brand-tagline{
        margin-top:8px!important;
        font-size:clamp(14px,1.2vw,17px)!important;
    }
}

/* Very short desktop/laptop viewport */
@media(max-height:680px) and (min-width:821px){
    .ktb-brand-wordmark{
        font-size:clamp(46px,5.5vw,66px)!important;
    }
    .ktb-brand-tagline{
        margin-top:6px!important;
        font-size:13px!important;
    }
}


/* v1.3.13 — Tagline spacing */
@media(min-width:821px){
    .ktb-brand-tagline{
        margin-top:14px!important;
    }
}


/* v1.3.14 — Input nominal format Indonesia */
.ktb-money-field{
  display:flex;
  align-items:center;
  width:100%;
  border:1px solid #dce5ea;
  border-radius:10px;
  background:#fff;
  overflow:hidden;
  transition:border-color .16s ease,box-shadow .16s ease;
}
.ktb-money-field:focus-within{
  border-color:#079447;
  box-shadow:0 0 0 3px rgba(7,148,71,.08);
}
.ktb-money-field>span{
  flex:0 0 auto;
  padding:0 0 0 12px;
  color:#71828a;
  font-size:13px;
  font-weight:700;
}
.ktb-money-field .ktb-money-input{
  width:100%;
  min-width:0;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  background:transparent!important;
  padding-left:7px!important;
}


/* v1.4.0 — Mode Toko + mobile responsive hardening */
.ktb-mode-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px;border:1px solid #dcebe4;background:#f6fbf8;border-radius:14px;min-width:0}
.ktb-mode-title{grid-column:1/-1;font-weight:800;color:#087c42;font-size:13px}
.ktb-mode-hint{grid-column:1/-1;padding:10px 12px;background:#fff;border:1px solid #e6efe9;border-radius:10px}.ktb-mode-hint strong,.ktb-mode-hint small{display:block}.ktb-mode-hint small{margin-top:4px;color:#7a8b80}
.ktb-mode-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;padding:7px 0}.ktb-mode-check input{width:auto!important;margin:0!important}
.ktb-product-meta{color:#5f766b}
html,body{max-width:100%;overflow-x:hidden}
.ktb-app,.ktb-main,.ktb-content,.ktb-page,.ktb-box,.ktb-grid-2,.ktb-stat-grid,.ktb-table-wrap,.ktb-form,.ktb-form-grid{min-width:0;max-width:100%;box-sizing:border-box}
.ktb-box *{box-sizing:border-box}.ktb-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.ktb-form input,.ktb-form select,.ktb-form textarea,.ktb-filter input,.ktb-filter select,.ktb-inline-form input{max-width:100%;min-width:0}
.ktb-box p,.ktb-box small,.ktb-box td,.ktb-box th{overflow-wrap:anywhere;word-break:normal}
@media(max-width:760px){
 .ktb-main{margin-left:0!important;width:100%!important;max-width:100vw!important}
 .ktb-content{width:100%!important;max-width:100%!important;padding:14px!important;margin:0!important}
 .ktb-grid-2,.ktb-stat-grid,.ktb-form-grid,.ktb-mode-fields{grid-template-columns:minmax(0,1fr)!important;width:100%!important}
 .ktb-box{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important}
 .ktb-form,.ktb-form.show{width:100%!important;max-width:100%!important}
 .ktb-form label,.ktb-form input,.ktb-form select,.ktb-form textarea{width:100%!important;max-width:100%!important}
 .ktb-form-actions{flex-wrap:wrap}.ktb-form-actions .ktb-btn{max-width:100%}
 .ktb-inline-form{width:100%;flex-wrap:wrap}.ktb-inline-form input{flex:1 1 100%}.ktb-inline-form .ktb-btn{flex:1 1 auto}
 .ktb-filter{width:100%;align-items:stretch}.ktb-filter input,.ktb-filter select{width:100%!important;flex:1 1 100%}
 .ktb-table{width:max-content;min-width:100%}.ktb-table th,.ktb-table td{white-space:nowrap}.ktb-table td small{white-space:normal}
 .ktb-topbar{width:100%!important;max-width:100%!important;padding:14px!important}.ktb-topbar>div:nth-child(2){min-width:0}.ktb-topbar h1{font-size:20px;line-height:1.15;overflow-wrap:anywhere}
 .ktb-box-head{align-items:flex-start;flex-wrap:wrap}.ktb-box-head .ktb-btn{max-width:100%}
 .ktb-info-list>div{flex-direction:column;gap:4px}.ktb-info-list strong{text-align:left}
 .ktb-profile-card{flex-direction:column;align-items:flex-start}
}
@media(max-width:480px){.ktb-content{padding:10px!important}.ktb-box{padding:16px!important}.ktb-topbar h1{font-size:19px!important}}
.ktb-demo-login-info{
    margin:16px 0 4px;
    padding:12px 14px;
    border:1px dashed rgba(7,148,71,.32);
    border-radius:12px;
    background:rgba(234,248,240,.6);
    color:#53645f;
    font-size:12px;
}
.ktb-demo-login-title{
    margin-bottom:7px;
    color:#08733a;
    font-size:10px;
    font-weight:800;
    letter-spacing:.09em;
}
.ktb-demo-login-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:3px 0;
}
.ktb-demo-login-row code{
    padding:2px 6px;
    border-radius:6px;
    background:rgba(255,255,255,.82);
    color:#1f3b34;
    font-family:inherit;
    font-size:12px;
    font-weight:700;
}
