.clkey-configure-btn,
.clkey-configure-btn:visited {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: linear-gradient(135deg, #111111, #3a3226);
    color: #ffffff !important;
    padding: 14px 24px;
    border-radius: 999px;
    font-weight: 700;
    text-decoration: none !important;
    border: 1px solid rgba(214,181,109,.5);
    box-shadow: 0 18px 40px rgba(0,0,0,.16);
    transition: transform .2s ease, box-shadow .2s ease;
}
.clkey-configure-btn:hover { transform: translateY(-2px); box-shadow: 0 22px 50px rgba(0,0,0,.22); }
.clkey-alert,
.clkey-form-message,
.clkey-agent-box [data-clkey-agent-message] {
    border-radius: 14px;
    padding: 12px 14px;
    margin: 12px 0;
    font-size: 14px;
    line-height: 1.45;
}
.clkey-alert,
.clkey-form-message.is-error,
.clkey-agent-box .is-error {
    background: #fff1f1;
    color: #8a1f1f;
    border: 1px solid #f0b9b9;
}
.clkey-form-message.is-success,
.clkey-agent-box .is-success {
    background: #f0fff6;
    color: #125d2b;
    border: 1px solid #b7ebc8;
}
.clkey-config-form {
    border-top: 1px solid rgba(255,255,255,.12);
    margin-top: 22px;
    padding-top: 22px;
}
.clkey-form-title {
    font-weight: 800;
    color: #ffffff;
    font-size: 20px;
    margin-bottom: 8px;
}
.clkey-price-note {
    color: rgba(255,255,255,.78);
    font-size: 14px;
    margin: 0 0 15px;
}
.clkey-price-note strong { color: #d6b56d; }
.clkey-input,
.clkey-proof-form input[type="file"] {
    width: 100%;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.08);
    color: #ffffff;
    border-radius: 14px;
    min-height: 46px;
    padding: 10px 14px;
    outline: none;
    margin-bottom: 10px;
}
.clkey-input::placeholder { color: rgba(255,255,255,.42); }
.clkey-submit { width: 100%; margin-top: 6px; }
.clkey-submit.is-loading { opacity: .72; cursor: wait; }
.clkey-thankyou-box {
    border: 1px solid #e8e2d2;
    border-radius: 22px;
    padding: 24px;
    margin: 24px 0;
    background: #fffdf7;
}
.clkey-qr-img {
    max-width: 280px;
    width: 100%;
    height: auto;
    border-radius: 18px;
    border: 1px solid #eee;
    padding: 10px;
    background: #fff;
    display: block;
    margin: 16px 0;
}
.clkey-proof-form { display: grid; gap: 10px; max-width: 420px; }
.clkey-proof-form label { font-weight: 700; }
.clkey-success { color: #0f7a31; font-weight: 700; }
.clkey-agent-auth {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    align-items: start;
}
.clkey-agent-box,
.clkey-agent-portal,
.clkey-voucher-card {
    border: 1px solid #e9e4d7;
    border-radius: 22px;
    padding: 24px;
    background: #fffdf8;
    box-shadow: 0 20px 50px rgba(0,0,0,.06);
}
.clkey-agent-box .clkey-input {
    background: #fff;
    color: #111;
    border-color: #ddd;
}
.clkey-voucher-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 16px;
    margin-top: 16px;
}
.clkey-voucher-card { display: grid; gap: 8px; }
.clkey-voucher-card strong { font-size: 22px; letter-spacing: .06em; }
@media (max-width: 820px) {
    .clkey-agent-auth { grid-template-columns: 1fr; }
}

/* Checkout QR payment display */
.clkey-checkout-qr-payment {
    margin-top: 10px;
}
.clkey-checkout-qr-box {
    margin-top: 14px;
    padding: 16px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    text-align: center;
}
.clkey-checkout-qr-title {
    margin: 0 0 12px;
    color: #1f2937;
}
.clkey-checkout-qr-img {
    display: block;
    width: min(260px, 100%);
    height: auto;
    margin: 0 auto 10px;
    border-radius: 8px;
    background: #fff;
}
.clkey-checkout-qr-link {
    margin: 8px 0 10px;
    font-size: 13px;
}
.clkey-checkout-next-step {
    margin: 10px 0 0;
    padding: 10px 12px;
    background: #f8fafc;
    border-radius: 8px;
    font-size: 13px;
    line-height: 1.5;
    color: #475569;
}
.clkey-checkout-no-qr {
    margin-top: 12px;
    padding: 12px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: 8px;
    color: #9a3412;
}

/* Multi-step CLKey configurator */
.clkey-step-indicator {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin: 0 0 18px;
}
.clkey-step-indicator span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.12);
    color: rgba(255,255,255,.62);
    font-size: 12px;
    font-weight: 800;
}
.clkey-step-indicator span.is-active {
    background: rgba(214,181,109,.18);
    border-color: rgba(214,181,109,.46);
    color: #d6b56d;
}
.clkey-customize-step[hidden],
.clkey-config-form[hidden] {
    display: none !important;
}
.clkey-next-step {
    width: 100%;
    margin-top: 16px;
}
.clkey-back-step {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    margin: 0 0 16px;
    padding: 0 14px;
    border-radius: 999px;
    border: 1px solid rgba(214,181,109,.32);
    background: rgba(214,181,109,.10);
    color: #d6b56d;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}
.clkey-back-step:hover,
.clkey-back-step:focus {
    background: rgba(214,181,109,.18);
}
.clkey-config-form--step {
    border-top: 0;
    margin-top: 0;
    padding-top: 0;
}
.ndc-keyc--commerce .ndc-keyc__viewer {
    overflow: hidden;
}
@media (max-width: 900px) {
    .clkey-step-indicator {
        max-width: 520px;
    }
}

/* Compact booking panel update v2.0.4 */
.ndc-keyc--commerce .clkey-step-indicator {
    gap: 6px;
    margin-bottom: 12px;
}
.ndc-keyc--commerce .clkey-step-indicator span {
    min-height: 28px;
    padding: 5px 8px;
    font-size: 10px;
}
.ndc-keyc--commerce .clkey-config-form {
    margin-top: 14px;
    padding-top: 14px;
}
.ndc-keyc--commerce .clkey-config-form--step {
    margin-top: 0;
    padding-top: 0;
}
.ndc-keyc--commerce .clkey-form-title {
    font-size: 17px;
    margin-bottom: 6px;
}
.ndc-keyc--commerce .clkey-price-note {
    margin-bottom: 10px;
}
.ndc-keyc--commerce .clkey-input,
.ndc-keyc--commerce .clkey-proof-form input[type="file"] {
    min-height: 39px;
    padding: 7px 12px;
    margin-bottom: 7px;
    border-radius: 11px;
    font-size: 13px;
}
.ndc-keyc--commerce .clkey-next-step {
    margin-top: 12px;
}
.ndc-keyc--commerce .clkey-back-step {
    min-height: 32px;
    margin-bottom: 12px;
    padding: 0 12px;
    font-size: 11px;
}
.ndc-keyc--commerce .clkey-submit {
    margin-top: 8px;
    min-height: 38px;
    font-size: 11px;
}
.ndc-keyc--commerce .clkey-form-message {
    padding: 9px 11px;
    margin: 9px 0;
    font-size: 12px;
    border-radius: 11px;
}

/* v2.1.0 photoreal model update */
.ndc-keyc--commerce .ndc-keyc__viewer-note{backdrop-filter: blur(8px);}


/* Multi-step CLKey configurator update v2.9.4 */
.clkey-step-panel[hidden] {
    display: none !important;
}
.clkey-step-actions {
    display: grid;
    grid-template-columns: 1fr 1.4fr;
    gap: 10px;
    align-items: center;
    margin-top: 16px;
}
.clkey-delivery-options {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin: 8px 0 16px;
}
.clkey-delivery-option {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    padding: 13px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.055);
    color: rgba(255,255,255,.86);
    cursor: pointer;
}
.clkey-delivery-option.is-selected {
    border-color: rgba(214,181,109,.55);
    background: rgba(214,181,109,.12);
}
.clkey-delivery-option input {
    margin-top: 3px;
}
.clkey-delivery-option strong {
    display: block;
    font-size: 14px;
    line-height: 1.2;
    color: #fff;
}
.clkey-delivery-option small {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    line-height: 1.35;
    color: rgba(255,255,255,.62);
}
@media (max-width: 640px) {
    .clkey-step-actions {
        grid-template-columns: 1fr;
    }
}

/* v2.9.5: Premium step indicator */
.ndc-keyc--commerce .clkey-step-indicator,
.clkey-step-indicator {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 0 0 20px !important;
    padding: 8px !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 14px 35px rgba(0,0,0,.18) !important;
}
.ndc-keyc--commerce .clkey-step-indicator span,
.clkey-step-indicator span {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    min-height: 70px !important;
    padding: 10px 8px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    background: rgba(255,255,255,.045) !important;
    color: rgba(255,255,255,.66) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    text-align: center !important;
    transition: all .22s ease !important;
}
.ndc-keyc--commerce .clkey-step-indicator span b,
.clkey-step-indicator span b {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.10) !important;
    color: rgba(255,255,255,.72) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    font-style: normal !important;
}
.ndc-keyc--commerce .clkey-step-indicator span em,
.clkey-step-indicator span em {
    display: block !important;
    max-width: 100% !important;
    color: inherit !important;
    font-style: normal !important;
    letter-spacing: -.01em !important;
    white-space: normal !important;
}
.ndc-keyc--commerce .clkey-step-indicator span.is-active,
.clkey-step-indicator span.is-active {
    transform: translateY(-1px) !important;
    border-color: rgba(214,181,109,.70) !important;
    background: linear-gradient(180deg, rgba(214,181,109,.26), rgba(214,181,109,.10)) !important;
    color: #f4d58b !important;
    box-shadow: 0 12px 24px rgba(214,181,109,.13), inset 0 1px 0 rgba(255,255,255,.14) !important;
}
.ndc-keyc--commerce .clkey-step-indicator span.is-active b,
.clkey-step-indicator span.is-active b {
    background: #d6b56d !important;
    color: #111 !important;
}
@media (max-width: 640px) {
    .ndc-keyc--commerce .clkey-step-indicator,
    .clkey-step-indicator {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}


/* v2.9.6: aligned compact premium stepper */
.ndc-keyc--commerce .clkey-step-indicator,
.clkey-step-indicator {
    gap: 6px !important;
    padding: 7px !important;
    margin-bottom: 16px !important;
    border-radius: 16px !important;
}
.ndc-keyc--commerce .clkey-step-indicator span,
.clkey-step-indicator span {
    display: grid !important;
    grid-template-rows: 24px 24px !important;
    align-items: center !important;
    justify-items: center !important;
    gap: 4px !important;
    min-height: 62px !important;
    padding: 7px 4px !important;
    border-radius: 13px !important;
    overflow: hidden !important;
}
.ndc-keyc--commerce .clkey-step-indicator span b,
.clkey-step-indicator span b {
    width: 24px !important;
    height: 24px !important;
    font-size: 12px !important;
    line-height: 1 !important;
}
.ndc-keyc--commerce .clkey-step-indicator span em,
.clkey-step-indicator span em {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 24px !important;
    font-size: 9.5px !important;
    line-height: 1.05 !important;
    text-align: center !important;
    letter-spacing: -0.03em !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
}
@media (max-width: 640px) {
    .ndc-keyc--commerce .clkey-step-indicator,
    .clkey-step-indicator {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}


/* v2.9.16: CLKey checkout payment breakdown */
.woocommerce-checkout-review-order-table tr.clkey-payment-breakdown th,
.woocommerce-checkout-review-order-table tr.clkey-payment-breakdown td,
.woocommerce-cart-form ~ .cart-collaterals tr.clkey-payment-breakdown th,
.woocommerce-cart-form ~ .cart-collaterals tr.clkey-payment-breakdown td,
.cart_totals tr.clkey-payment-breakdown th,
.cart_totals tr.clkey-payment-breakdown td {
    font-size: 14px;
    line-height: 1.35;
    vertical-align: middle;
}

.woocommerce-checkout-review-order-table tr.clkey-payment-breakdown--full th,
.woocommerce-checkout-review-order-table tr.clkey-payment-breakdown--full td,
.cart_totals tr.clkey-payment-breakdown--full th,
.cart_totals tr.clkey-payment-breakdown--full td {
    padding-top: 14px;
    border-top: 1px solid rgba(0,0,0,0.08);
}

.woocommerce-checkout-review-order-table tr.clkey-payment-breakdown--dp th,
.woocommerce-checkout-review-order-table tr.clkey-payment-breakdown--dp td,
.cart_totals tr.clkey-payment-breakdown--dp th,
.cart_totals tr.clkey-payment-breakdown--dp td {
    color: #111111;
    font-weight: 700;
}

.woocommerce-checkout-review-order-table tr.clkey-payment-breakdown--remaining th,
.woocommerce-checkout-review-order-table tr.clkey-payment-breakdown--remaining td,
.cart_totals tr.clkey-payment-breakdown--remaining th,
.cart_totals tr.clkey-payment-breakdown--remaining td {
    color: #6b5a2b;
    font-weight: 700;
}

.clkey-order-total-note {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    line-height: 1.3;
    font-weight: 600;
    color: #6b5a2b;
}

/* v2.9.45 Modern order tracker layout */
.clkey-tracker-box,
.clkey-tracker-box *{
    box-sizing:border-box;
    font-family:Poppins, Inter, Montserrat, Manrope, Arial, sans-serif;
}
.clkey-tracker-box{
    max-width:1120px;
    margin:24px auto;
    padding:22px;
    border:1px solid #e5e7eb;
    border-radius:0 !important;
    background:#ffffff;
    box-shadow:0 18px 45px rgba(15,23,42,.08);
    color:#0f172a;
}
.clkey-tracker-box>h3{
    margin:0 0 18px;
    font-size:28px;
    line-height:1.15;
    font-weight:800;
    letter-spacing:-.04em;
    color:#08111f;
}
.clkey-tracker-form{
    margin:0;
}
.clkey-tracker-box .ndc-keyc__label{
    display:block;
    margin:0 0 8px;
    color:#475569;
    font-size:13px;
    font-weight:700;
    letter-spacing:.02em;
    text-transform:uppercase;
}
.clkey-tracker-search-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
    align-items:stretch;
    margin-bottom:22px;
}
.clkey-tracker-search-row .clkey-input,
.clkey-tracker-search-row input[type="text"]{
    width:100%;
    min-width:0;
    min-height:50px;
    padding:0 16px;
    background:#ffffff !important;
    color:#111827 !important;
    border:1px solid #cbd5e1 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    outline:none;
    -webkit-text-fill-color:#111827 !important;
}
.clkey-tracker-search-row .clkey-input:focus,
.clkey-tracker-search-row input[type="text"]:focus{
    border-color:#b98a33 !important;
    box-shadow:0 0 0 3px rgba(185,138,51,.16) !important;
}
.clkey-tracker-search-row .clkey-input::placeholder,
.clkey-tracker-search-row input[type="text"]::placeholder{
    color:#64748b !important;
    -webkit-text-fill-color:#64748b !important;
}
.clkey-tracker-search-row .ndc-keyc__button{
    min-height:50px;
    border-radius:0 !important;
    padding:0 22px;
    background:#b98a33 !important;
    border:1px solid #b98a33 !important;
    color:#0b0b0b !important;
    font-weight:800;
    white-space:nowrap;
    box-shadow:none !important;
}
.clkey-tracker-search-row .ndc-keyc__button:hover{
    background:#d3a84a !important;
    border-color:#d3a84a !important;
}
.clkey-tracker-result{
    margin-top:0;
}
.clkey-tracker-layout{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);
    gap:20px;
    align-items:stretch;
}
.clkey-tracker-3d-preview{
    max-width:none;
    margin:0;
    min-width:0;
    background:#050505;
    border:1px solid #111827;
    border-radius:0 !important;
    overflow:hidden;
    box-shadow:0 16px 36px rgba(15,23,42,.18);
}
.clkey-tracker-3d-preview .ndc-keyc{
    max-width:100%;
    margin:0;
    font-family:Poppins, Inter, Montserrat, Manrope, Arial, sans-serif;
}
.clkey-tracker-3d-preview .ndc-keyc__wrap{
    display:block;
    grid-template-columns:1fr !important;
    border-radius:0 !important;
    box-shadow:none !important;
    min-height:420px;
}
.clkey-tracker-3d-preview .ndc-keyc__viewer{
    min-height:420px !important;
    height:420px !important;
    border-radius:0 !important;
}
.clkey-tracker-3d-preview .ndc-keyc__canvas,
.clkey-tracker-3d-preview canvas{
    border-radius:0 !important;
}
.clkey-tracker-3d-preview .ndc-keyc__panel,
.clkey-tracker-3d-preview .ndc-keyc__viewer-note,
.clkey-tracker-3d-preview .ndc-keyc__model-message{
    display:none !important;
}
.clkey-tracker-summary{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
    align-content:start;
    margin:0;
}
.clkey-tracker-summary p{
    position:relative;
    margin:0;
    padding:17px 18px 17px 22px;
    border:1px solid #e2e8f0;
    border-left:4px solid #b98a33;
    border-radius:0 !important;
    background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
    color:#334155;
    box-shadow:0 8px 18px rgba(15,23,42,.06);
}
.clkey-tracker-summary strong{
    display:block;
    margin:0 0 6px;
    color:#07111f;
    font-size:14px;
    line-height:1.25;
    font-weight:800;
}
.clkey-tracker-summary span,
.clkey-tracker-summary .woocommerce-Price-amount{
    display:inline-block;
    color:#0f172a;
    font-size:16px;
    line-height:1.35;
    font-weight:600;
}
.clkey-tracker-summary p:nth-child(2){
    background:#0f172a;
    border-color:#0f172a;
    border-left-color:#f6c343;
    color:#ffffff;
}
.clkey-tracker-summary p:nth-child(2) strong,
.clkey-tracker-summary p:nth-child(2) span{
    color:#ffffff;
}
.ndc-keyc--readonly .ndc-keyc__panel input:disabled,
.ndc-keyc--readonly .ndc-keyc__panel select:disabled,
.ndc-keyc--readonly .ndc-keyc__panel textarea:disabled,
.ndc-keyc--readonly .ndc-keyc__panel button:disabled{
    cursor:not-allowed;
    opacity:.78;
}
.ndc-keyc--readonly .ndc-keyc__icon-modal,
.ndc-keyc--readonly .clkey-step-actions,
.ndc-keyc--readonly .clkey-delivery-options{
    pointer-events:none;
}
@media(max-width:900px){
    .clkey-tracker-layout{
        grid-template-columns:1fr;
    }
    .clkey-tracker-3d-preview{
        order:1;
    }
    .clkey-tracker-summary{
        order:2;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:640px){
    .clkey-tracker-box{
        padding:16px;
        margin:18px auto;
    }
    .clkey-tracker-box>h3{
        font-size:24px;
    }
    .clkey-tracker-search-row{
        grid-template-columns:1fr;
    }
    .clkey-tracker-search-row .ndc-keyc__button{
        width:100%;
    }
    .clkey-tracker-summary{
        grid-template-columns:1fr;
    }
    .clkey-tracker-3d-preview .ndc-keyc__wrap,
    .clkey-tracker-3d-preview .ndc-keyc__viewer{
        min-height:340px !important;
        height:340px !important;
    }
}

/* v2.9.46 Black borderless tracker */
.clkey-tracker-box,
.clkey-tracker-box *{
    font-family:Poppins, Inter, Montserrat, Manrope, Arial, sans-serif !important;
}
.clkey-tracker-box{
    background:#000000 !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    color:#ffffff !important;
}
.clkey-tracker-box>h3{
    color:#ffffff !important;
}
.clkey-tracker-box .ndc-keyc__label{
    color:#cbd5e1 !important;
}
.clkey-tracker-search-row .clkey-input,
.clkey-tracker-search-row input[type="text"]{
    background:#121212 !important;
    color:#ffffff !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    outline:0 !important;
    -webkit-text-fill-color:#ffffff !important;
}
.clkey-tracker-search-row .clkey-input:focus,
.clkey-tracker-search-row input[type="text"]:focus{
    border:0 !important;
    box-shadow:0 0 0 2px rgba(198,154,61,.55) !important;
}
.clkey-tracker-search-row .clkey-input::placeholder,
.clkey-tracker-search-row input[type="text"]::placeholder{
    color:#94a3b8 !important;
    -webkit-text-fill-color:#94a3b8 !important;
}
.clkey-tracker-search-row .ndc-keyc__button{
    background:#c59a3d !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    color:#050505 !important;
}
.clkey-tracker-search-row .ndc-keyc__button:hover{
    background:#e0b95a !important;
    border:0 !important;
}
.clkey-tracker-3d-preview{
    background:#050505 !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
}
.clkey-tracker-3d-preview .ndc-keyc__wrap,
.clkey-tracker-3d-preview .ndc-keyc__viewer,
.clkey-tracker-3d-preview .ndc-keyc__canvas,
.clkey-tracker-3d-preview canvas{
    background:#050505 !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
}
.clkey-tracker-summary p{
    background:#101010 !important;
    border:0 !important;
    border-left:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    color:#e5e7eb !important;
}
.clkey-tracker-summary strong{
    color:#f6c343 !important;
}
.clkey-tracker-summary span,
.clkey-tracker-summary .woocommerce-Price-amount,
.clkey-tracker-summary .woocommerce-Price-currencySymbol{
    color:#ffffff !important;
}
.clkey-tracker-summary p:nth-child(2){
    background:#c59a3d !important;
    color:#050505 !important;
}
.clkey-tracker-summary p:nth-child(2) strong,
.clkey-tracker-summary p:nth-child(2) span{
    color:#050505 !important;
}

/* v2.9.51 tracker saved configuration + deeper orange color tuning */
.clkey-tracker-box{
    background:#000000 !important;
}
.clkey-tracker-search-row .ndc-keyc__button{
    background:#D4AF37 !important;
    color:#050505 !important;
}
.clkey-tracker-search-row .ndc-keyc__button:hover{
    background:#D4AF37 !important;
}
.clkey-tracker-summary strong{
    color:#D4AF37 !important;
}
.clkey-tracker-summary p:nth-child(2){
    background:#D4AF37 !important;
    color:#050505 !important;
}
.clkey-tracker-summary p:nth-child(2) strong,
.clkey-tracker-summary p:nth-child(2) span{
    color:#050505 !important;
}
.clkey-tracker-config-panel{
    display:block !important;
    margin-top:0 !important;
    padding:20px !important;
    background:#0b0b0b !important;
    color:#ffffff !important;
    box-shadow:none !important;
    border:0 !important;
    border-radius:0 !important;
}
.clkey-tracker-config-head{
    margin:0 0 16px !important;
    padding:0 0 14px !important;
    border-bottom:1px solid rgba(255,255,255,.08) !important;
}
.clkey-tracker-config-head small{
    display:block !important;
    margin:0 0 6px !important;
    color:#D4AF37 !important;
    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    text-transform:uppercase !important;
    letter-spacing:.12em !important;
}
.clkey-tracker-config-head h4{
    margin:0 0 6px !important;
    color:#ffffff !important;
    font-size:20px !important;
    line-height:1.2 !important;
    font-weight:900 !important;
    letter-spacing:-.03em !important;
}
.clkey-tracker-config-desc{
    margin:0 !important;
    padding:0 !important;
    color:#9ca3af !important;
    font-size:13px !important;
    line-height:1.45 !important;
    font-weight:500 !important;
}
.clkey-tracker-config-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
}
.clkey-tracker-config-field{
    min-width:0 !important;
    padding:13px 14px !important;
    background:#141414 !important;
    border:1px solid rgba(255,255,255,.06) !important;
    border-radius:0 !important;
    box-shadow:none !important;
    opacity:1 !important;
}
.clkey-tracker-config-field--wide{
    grid-column:1 / -1 !important;
}
.clkey-tracker-config-field small{
    display:block !important;
    margin:0 0 7px !important;
    color:#D4AF37 !important;
    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
}
.clkey-tracker-config-field span{
    display:flex !important;
    align-items:center !important;
    gap:9px !important;
    color:#ffffff !important;
    font-size:14px !important;
    line-height:1.35 !important;
    font-weight:700 !important;
    overflow-wrap:anywhere !important;
}
.clkey-tracker-color-field i{
    width:20px !important;
    height:20px !important;
    flex:0 0 20px !important;
    display:inline-block !important;
    border:2px solid rgba(255,255,255,.65) !important;
    border-radius:0 !important;
    box-shadow:0 0 0 1px rgba(0,0,0,.55) inset !important;
}
@media(max-width:640px){
    .clkey-tracker-config-grid{
        grid-template-columns:1fr !important;
    }
}


/* v2.9.53 tracker sidebar height + compact saved setup */
.clkey-tracker-search-row .ndc-keyc__button,
.clkey-tracker-summary p:nth-child(2),
.clkey-tracker-config-head small,
.clkey-tracker-config-field small,
.clkey-tracker-summary strong{
    color:#D4AF37 !important;
}
.clkey-tracker-search-row .ndc-keyc__button,
.clkey-tracker-summary p:nth-child(2){
    background:#D4AF37 !important;
}
.clkey-tracker-search-row .ndc-keyc__button,
.clkey-tracker-summary p:nth-child(2) strong,
.clkey-tracker-summary p:nth-child(2) span{
    color:#050505 !important;
}
.clkey-tracker-layout{
    grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr) !important;
    gap:18px !important;
    align-items:stretch !important;
}
.clkey-tracker-3d-preview,
.clkey-tracker-summary{
    height:560px !important;
    min-height:560px !important;
    max-height:560px !important;
}
.clkey-tracker-summary{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    overflow:hidden !important;
}
.clkey-tracker-summary p{
    padding:12px 14px !important;
    min-height:72px !important;
    flex:0 0 auto !important;
}
.clkey-tracker-summary strong{
    margin-bottom:4px !important;
    font-size:13px !important;
    line-height:1.15 !important;
}
.clkey-tracker-summary span{
    font-size:14px !important;
    line-height:1.25 !important;
}
.clkey-tracker-config-panel{
    flex:1 1 auto !important;
    min-height:0 !important;
    overflow:hidden !important;
    padding:14px !important;
    display:flex !important;
    flex-direction:column !important;
}
.clkey-tracker-config-head{
    margin:0 0 10px !important;
    padding:0 0 10px !important;
    flex:0 0 auto !important;
}
.clkey-tracker-config-head small{
    margin-bottom:4px !important;
    font-size:10px !important;
    letter-spacing:.10em !important;
}
.clkey-tracker-config-head h4{
    margin:0 0 4px !important;
    font-size:18px !important;
    line-height:1.1 !important;
}
.clkey-tracker-config-desc{
    font-size:12px !important;
    line-height:1.3 !important;
}
.clkey-tracker-config-grid{
    flex:1 1 auto !important;
    min-height:0 !important;
    overflow:auto !important;
    gap:8px !important;
    align-content:start !important;
    scrollbar-width:thin !important;
}
.clkey-tracker-config-field{
    padding:9px 10px !important;
    min-height:0 !important;
}
.clkey-tracker-config-field small{
    margin-bottom:5px !important;
    font-size:10px !important;
    line-height:1.1 !important;
    letter-spacing:.07em !important;
}
.clkey-tracker-config-field span{
    gap:7px !important;
    font-size:12.5px !important;
    line-height:1.25 !important;
    font-weight:700 !important;
}
.clkey-tracker-color-field i{
    width:17px !important;
    height:17px !important;
    flex-basis:17px !important;
}
.clkey-tracker-3d-preview .ndc-keyc__wrap,
.clkey-tracker-3d-preview .ndc-keyc__viewer{
    height:560px !important;
    min-height:560px !important;
    max-height:560px !important;
}
@media(max-width:900px){
    .clkey-tracker-3d-preview,
    .clkey-tracker-summary,
    .clkey-tracker-3d-preview .ndc-keyc__wrap,
    .clkey-tracker-3d-preview .ndc-keyc__viewer{
        height:auto !important;
        min-height:360px !important;
        max-height:none !important;
    }
    .clkey-tracker-summary{
        overflow:visible !important;
    }
    .clkey-tracker-config-panel,
    .clkey-tracker-config-grid{
        overflow:visible !important;
    }
}

/* v2.9.55: keep tracker 3D interactive and keep gold status accent */
.clkey-tracker-3d-preview .ndc-keyc__canvas,
.clkey-tracker-3d-preview .ndc-keyc__canvas canvas,
.clkey-tracker-3d-preview canvas {
    pointer-events: auto !important;
    touch-action: none !important;
}
.clkey-tracker-search-row .ndc-keyc__button,
.clkey-tracker-search-row .ndc-keyc__button:hover,
.clkey-tracker-summary p:nth-child(2),
.clkey-tracker-summary p:nth-child(2):hover {
    background: #D4AF37 !important;
    border-color: #D4AF37 !important;
    color: #050505 !important;
}
.clkey-tracker-summary p:nth-child(2) strong,
.clkey-tracker-summary p:nth-child(2) span {
    color: #050505 !important;
}

/* v2.9.56: owned tracker result state - hide lookup form after successful search */
.clkey-tracker-box.is-owned{
    padding-top:24px !important;
}
.clkey-tracker-owned-note{
    display:block !important;
    width:100% !important;
    margin:0 0 14px !important;
    padding:0 !important;
    color:#ffffff !important;
    background:transparent !important;
    border:0 !important;
    font-family:'Poppins',sans-serif !important;
    font-size:18px !important;
    font-weight:600 !important;
    line-height:1.25 !important;
    letter-spacing:0 !important;
    text-shadow:none !important;
}
.clkey-tracker-box.is-owned .clkey-tracker-form,
.clkey-tracker-box.is-owned > h3{
    display:none !important;
}
.clkey-tracker-box.is-owned .clkey-tracker-result{
    margin-top:0 !important;
}
@media(max-width:900px){
    .clkey-tracker-owned-note{
        font-size:16px !important;
        margin-bottom:12px !important;
    }
}

/* v2.9.60: smaller owned note */
.clkey-tracker-owned-note{
    font-size:14px !important;
    font-weight:600 !important;
    margin-bottom:10px !important;
    letter-spacing:0 !important;
}
@media(max-width:900px){.clkey-tracker-owned-note{font-size:13px !important;}}

/* v2.9.62: balance payment shortcode hard styling against Elementor pink defaults */
.clkey-balance-payment-box,
.clkey-balance-payment-box * {
    box-sizing: border-box;
    font-family: Poppins, Inter, Montserrat, Manrope, Arial, sans-serif !important;
}
.clkey-balance-payment-box {
    max-width: 640px;
    margin: 32px auto;
    padding: 24px;
    background: #111111;
    border: 1px solid rgba(212,175,55,.22);
    border-radius: 18px;
    color: #ffffff;
}
.clkey-balance-payment-box h3 {
    margin: 0 0 20px !important;
    color: #ffffff !important;
    font-family: Poppins, Inter, Montserrat, Manrope, Arial, sans-serif !important;
    font-size: 28px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
}
.clkey-balance-payment-box .ndc-keyc__label,
.clkey-balance-payment-box label {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: Poppins, Inter, Montserrat, Manrope, Arial, sans-serif !important;
    font-weight: 700 !important;
}
.clkey-balance-payment-box .clkey-input,
.clkey-balance-payment-box input[type="text"],
.clkey-balance-payment-box input[type="file"] {
    width: 100% !important;
    min-height: 46px !important;
    margin: 0 0 14px !important;
    padding: 11px 14px !important;
    background: #242424 !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    border-radius: 4px !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: none !important;
    outline: none !important;
}
.clkey-balance-payment-box .clkey-balance-summary {
    margin-top: 18px;
    padding: 18px;
    background: #1f1f1f;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 14px;
}
.clkey-balance-payment-box .clkey-balance-summary p {
    margin: 0 0 9px !important;
    color: #ffffff !important;
    font-family: Poppins, Inter, Montserrat, Manrope, Arial, sans-serif !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
}
.clkey-balance-payment-box .clkey-balance-summary strong {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}
.clkey-balance-payment-box button.ndc-keyc__button,
.clkey-balance-payment-box .ndc-keyc__button,
.elementor .clkey-balance-payment-box button.ndc-keyc__button,
.elementor-widget-container .clkey-balance-payment-box button.ndc-keyc__button,
.clkey-balance-payment-box button[type="submit"],
.clkey-balance-payment-box button[type="submit"]:hover,
.clkey-balance-payment-box button[type="submit"]:focus,
.clkey-balance-payment-box button[type="submit"]:active {
    width: 100% !important;
    min-height: 46px !important;
    margin: 8px 0 18px !important;
    padding: 0 16px !important;
    background: linear-gradient(135deg, #d6b56d, #9f773a) !important;
    background-color: #d6b56d !important;
    background-image: linear-gradient(135deg, #d6b56d, #9f773a) !important;
    border: 1px solid rgba(214,181,109,.72) !important;
    border-radius: 4px !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    font-family: Poppins, Inter, Montserrat, Manrope, Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
    outline: none !important;
    cursor: pointer !important;
}
.clkey-balance-payment-box button.ndc-keyc__button::before,
.clkey-balance-payment-box button.ndc-keyc__button::after,
.clkey-balance-payment-box button[type="submit"]::before,
.clkey-balance-payment-box button[type="submit"]::after {
    display: none !important;
    content: none !important;
}
.clkey-balance-payment-box .clkey-proof-form {
    display: grid;
    gap: 10px;
    max-width: none;
    margin-top: 20px;
}

/* v2.9.66 balance payment method layout */
.clkey-balance-payment-box,
.clkey-balance-payment-box * {
    font-family: Poppins, Inter, Montserrat, Manrope, Arial, sans-serif !important;
}
.clkey-balance-payment-box .clkey-form-message.is-success,
.clkey-balance-payment-box .clkey-success {
    display:block !important;
    margin: 12px 0 !important;
    padding: 12px 14px !important;
    background: rgba(34,197,94,.12) !important;
    border: 1px solid rgba(34,197,94,.35) !important;
    color: #d1fae5 !important;
    -webkit-text-fill-color: #d1fae5 !important;
}
.clkey-balance-payment-box .clkey-form-message.is-error {
    display:block !important;
    margin: 12px 0 !important;
    padding: 12px 14px !important;
    background: rgba(239,68,68,.10) !important;
    border: 1px solid rgba(239,68,68,.35) !important;
    color: #fecaca !important;
    -webkit-text-fill-color: #fecaca !important;
}
.clkey-balance-payment-box .clkey-payment-methods {
    margin-top: 18px !important;
}
.clkey-balance-payment-box .clkey-payment-methods h4 {
    margin: 0 0 12px !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 800 !important;
}
.clkey-balance-payment-box .clkey-payment-method-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
}
.clkey-balance-payment-box .clkey-payment-method-card {
    background: #151515 !important;
    border: 1px solid rgba(212,175,55,.25) !important;
    padding: 16px !important;
    min-height: 180px !important;
}
.clkey-balance-payment-box .clkey-payment-method-card h5 {
    margin: 0 0 10px !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
}
.clkey-balance-payment-box .clkey-small-note {
    margin: 8px 0 0 !important;
    font-size: 12px !important;
    color: rgba(255,255,255,.72) !important;
    -webkit-text-fill-color: rgba(255,255,255,.72) !important;
}
@media (max-width: 720px) {
    .clkey-balance-payment-box .clkey-payment-method-grid {
        grid-template-columns: 1fr !important;
    }
}


/* v2.9.67: Admin order 3D preview uses same 3D-only size as tracker page */
.clkey-admin-3d-preview.clkey-tracker-3d-preview{
    width:100% !important;
    max-width:760px !important;
    min-height:560px !important;
    height:560px !important;
    overflow:hidden !important;
    background:#050505 !important;
}
.clkey-admin-3d-preview.clkey-tracker-3d-preview .ndc-keyc,
.clkey-admin-3d-preview.clkey-tracker-3d-preview .ndc-keyc__wrap,
.clkey-admin-3d-preview.clkey-tracker-3d-preview .ndc-keyc__viewer,
.clkey-admin-3d-preview.clkey-tracker-3d-preview .ndc-keyc__canvas,
.clkey-admin-3d-preview.clkey-tracker-3d-preview canvas{
    width:100% !important;
    min-height:560px !important;
    height:560px !important;
    max-height:560px !important;
    background:#050505 !important;
}
.clkey-admin-3d-preview.clkey-tracker-3d-preview .ndc-keyc__panel,
.clkey-admin-3d-preview.clkey-tracker-3d-preview .ndc-keyc__viewer-note,
.clkey-admin-3d-preview.clkey-tracker-3d-preview .ndc-keyc__model-message{
    display:none !important;
}

/* v2.9.68: front-end payment page auto-loaded order + PayPal front-end checkout styling */
.clkey-balance-payment-box .clkey-balance-lookup-form{
    display:grid !important;
    gap:12px !important;
}
.clkey-balance-payment-box .clkey-payment-loaded-title{
    margin:0 0 16px !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    font-family:Poppins, Inter, Montserrat, Manrope, Arial, sans-serif !important;
    font-size:28px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
}
.clkey-balance-payment-box .clkey-payment-method-card--paypal{
    background:#ffffff !important;
    border:0 !important;
    color:#111111 !important;
    -webkit-text-fill-color:#111111 !important;
}
.clkey-balance-payment-box .clkey-payment-method-card--paypal h5{
    color:#111111 !important;
    -webkit-text-fill-color:#111111 !important;
}
.clkey-balance-payment-box .clkey-paypal-payment-form{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
}
.clkey-balance-payment-box .clkey-paypal-brand{
    display:inline-flex !important;
    align-items:baseline !important;
    gap:0 !important;
    margin:4px 0 14px !important;
    font-family:Arial, Helvetica, sans-serif !important;
    font-size:31px !important;
    line-height:1 !important;
    font-style:italic !important;
    font-weight:900 !important;
    letter-spacing:-1.2px !important;
}
.clkey-balance-payment-box .clkey-paypal-p1,
.clkey-balance-payment-box .clkey-paypal-button-logo span:first-child{
    color:#003087 !important;
    -webkit-text-fill-color:#003087 !important;
}
.clkey-balance-payment-box .clkey-paypal-p2,
.clkey-balance-payment-box .clkey-paypal-button-logo span:last-child{
    color:#009cde !important;
    -webkit-text-fill-color:#009cde !important;
}
.clkey-balance-payment-box button.clkey-paypal-button,
.elementor .clkey-balance-payment-box button.clkey-paypal-button,
.elementor-widget-container .clkey-balance-payment-box button.clkey-paypal-button,
.clkey-balance-payment-box button.clkey-paypal-button:hover,
.clkey-balance-payment-box button.clkey-paypal-button:focus,
.clkey-balance-payment-box button.clkey-paypal-button:active{
    width:100% !important;
    min-height:48px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;
    margin:8px 0 12px !important;
    padding:0 18px !important;
    background:#ffc439 !important;
    background-image:none !important;
    border:0 !important;
    border-radius:4px !important;
    color:#111111 !important;
    -webkit-text-fill-color:#111111 !important;
    font-family:Poppins, Inter, Montserrat, Manrope, Arial, sans-serif !important;
    font-size:14px !important;
    font-weight:800 !important;
    text-decoration:none !important;
    text-transform:none !important;
    letter-spacing:0 !important;
    box-shadow:none !important;
    outline:none !important;
}
.clkey-balance-payment-box button.clkey-paypal-button::before,
.clkey-balance-payment-box button.clkey-paypal-button::after{
    display:none !important;
    content:none !important;
}
.clkey-balance-payment-box .clkey-paypal-button-logo{
    display:inline-flex !important;
    gap:0 !important;
    font-family:Arial, Helvetica, sans-serif !important;
    font-style:italic !important;
    font-size:18px !important;
    font-weight:900 !important;
    letter-spacing:-.6px !important;
}
.clkey-balance-payment-box .clkey-payment-method-card--paypal .clkey-small-note{
    color:rgba(0,0,0,.72) !important;
    -webkit-text-fill-color:rgba(0,0,0,.72) !important;
}

/* v2.9.69: Responsive payment page + frontend PayPal link button fix */
.clkey-balance-payment-box,
.elementor .clkey-balance-payment-box{
    width:min(100%, 1040px) !important;
    max-width:1040px !important;
    margin:32px auto !important;
    padding:28px !important;
    background:#101010 !important;
    border:1px solid rgba(212,175,55,.24) !important;
    border-radius:18px !important;
    color:#fff !important;
    overflow:hidden !important;
}
.clkey-balance-payment-box .clkey-balance-summary{
    padding:22px !important;
    background:#1d1d1d !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:14px !important;
    overflow:hidden !important;
}
.clkey-balance-payment-box .clkey-payment-method-grid{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(280px, 1fr)) !important;
    gap:18px !important;
    align-items:stretch !important;
    width:100% !important;
}
.clkey-balance-payment-box .clkey-payment-method-card,
.clkey-balance-payment-box .clkey-payment-method-card--paypal{
    min-width:0 !important;
    width:100% !important;
    padding:18px !important;
    background:#151515 !important;
    border:1px solid rgba(212,175,55,.28) !important;
    border-radius:0 !important;
    color:#fff !important;
    -webkit-text-fill-color:initial !important;
    overflow:hidden !important;
}
.clkey-balance-payment-box .clkey-payment-method-card--paypal *{
    -webkit-text-fill-color:initial !important;
}
.clkey-balance-payment-box .clkey-payment-method-card h5,
.clkey-balance-payment-box .clkey-payment-method-card--paypal h5{
    margin:0 0 14px !important;
    color:#D4AF37 !important;
    -webkit-text-fill-color:#D4AF37 !important;
    font-size:14px !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.05em !important;
}
.clkey-balance-payment-box .clkey-payment-qr img{
    display:block !important;
    width:min(100%, 240px) !important;
    max-width:240px !important;
    height:auto !important;
    margin:10px auto 18px !important;
    background:#fff !important;
    padding:10px !important;
}
.clkey-balance-payment-box .clkey-paypal-payment-form{
    display:flex !important;
    flex-direction:column !important;
    gap:12px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
}
.clkey-balance-payment-box .clkey-paypal-brand{
    display:inline-flex !important;
    align-items:baseline !important;
    width:max-content !important;
    max-width:100% !important;
    margin:0 0 2px !important;
    font-family:Arial, Helvetica, sans-serif !important;
    font-size:34px !important;
    line-height:1 !important;
    font-style:italic !important;
    font-weight:900 !important;
    letter-spacing:-1.3px !important;
    white-space:nowrap !important;
}
.clkey-balance-payment-box .clkey-paypal-p1,
.clkey-balance-payment-box .clkey-paypal-button-logo span:first-child{
    color:#003087 !important;
    -webkit-text-fill-color:#003087 !important;
}
.clkey-balance-payment-box .clkey-paypal-p2,
.clkey-balance-payment-box .clkey-paypal-button-logo span:last-child{
    color:#009cde !important;
    -webkit-text-fill-color:#009cde !important;
}
.clkey-balance-payment-box .clkey-paypal-amount{
    margin:0 !important;
    color:rgba(255,255,255,.86) !important;
    -webkit-text-fill-color:rgba(255,255,255,.86) !important;
    font-size:14px !important;
}
.clkey-balance-payment-box a.clkey-paypal-button,
.elementor .clkey-balance-payment-box a.clkey-paypal-button,
.elementor-widget-container .clkey-balance-payment-box a.clkey-paypal-button,
.clkey-balance-payment-box a.clkey-paypal-button:link,
.clkey-balance-payment-box a.clkey-paypal-button:visited,
.clkey-balance-payment-box a.clkey-paypal-button:hover,
.clkey-balance-payment-box a.clkey-paypal-button:focus,
.clkey-balance-payment-box a.clkey-paypal-button:active,
.clkey-balance-payment-box button.clkey-paypal-button,
.clkey-balance-payment-box button.clkey-paypal-button:hover,
.clkey-balance-payment-box button.clkey-paypal-button:focus{
    width:100% !important;
    max-width:100% !important;
    min-height:48px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;
    margin:0 !important;
    padding:12px 14px !important;
    background:#ffc439 !important;
    background-color:#ffc439 !important;
    background-image:none !important;
    border:0 !important;
    border-radius:6px !important;
    color:#111111 !important;
    -webkit-text-fill-color:#111111 !important;
    font-family:Poppins, Inter, Montserrat, Manrope, Arial, sans-serif !important;
    font-size:14px !important;
    font-weight:900 !important;
    line-height:1.2 !important;
    text-align:center !important;
    text-decoration:none !important;
    text-transform:none !important;
    letter-spacing:0 !important;
    white-space:normal !important;
    overflow:hidden !important;
    box-shadow:none !important;
    outline:none !important;
    cursor:pointer !important;
}
.clkey-balance-payment-box a.clkey-paypal-button::before,
.clkey-balance-payment-box a.clkey-paypal-button::after,
.clkey-balance-payment-box button.clkey-paypal-button::before,
.clkey-balance-payment-box button.clkey-paypal-button::after{
    display:none !important;
    content:none !important;
}
.clkey-balance-payment-box .clkey-paypal-button-logo{
    flex:0 0 auto !important;
    display:inline-flex !important;
    gap:0 !important;
    font-family:Arial, Helvetica, sans-serif !important;
    font-style:italic !important;
    font-size:18px !important;
    font-weight:900 !important;
    letter-spacing:-.6px !important;
    white-space:nowrap !important;
}
.clkey-balance-payment-box .clkey-payment-method-card--paypal .clkey-small-note,
.clkey-balance-payment-box .clkey-small-note{
    color:rgba(255,255,255,.72) !important;
    -webkit-text-fill-color:rgba(255,255,255,.72) !important;
    font-size:13px !important;
    line-height:1.45 !important;
}
.clkey-balance-payment-box input[type="file"]{
    min-height:50px !important;
    padding:10px !important;
    background:#242424 !important;
    border:1px solid rgba(255,255,255,.18) !important;
    border-radius:6px !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
}
.clkey-balance-payment-box input[type="file"]::file-selector-button{
    margin-right:10px !important;
    padding:8px 10px !important;
    border:0 !important;
    border-radius:4px !important;
    background:#f5f5f5 !important;
    color:#111 !important;
    -webkit-text-fill-color:#111 !important;
    font-weight:700 !important;
}
@media (max-width: 760px){
    .clkey-balance-payment-box,
    .elementor .clkey-balance-payment-box{
        width:calc(100% - 24px) !important;
        margin:20px auto !important;
        padding:18px !important;
        border-radius:14px !important;
    }
    .clkey-balance-payment-box h3,
    .clkey-balance-payment-box .clkey-payment-loaded-title{
        font-size:24px !important;
    }
    .clkey-balance-payment-box .clkey-balance-summary{
        padding:16px !important;
    }
    .clkey-balance-payment-box .clkey-payment-method-grid{
        grid-template-columns:1fr !important;
        gap:14px !important;
    }
    .clkey-balance-payment-box .clkey-payment-method-card,
    .clkey-balance-payment-box .clkey-payment-method-card--paypal{
        padding:15px !important;
    }
}

/* v2.9.71: clearer payment summary, coupon, radio amount choices, and PayPal frontend POST fix */
.clkey-balance-payment-box .clkey-payment-overview{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px 18px !important;
    margin:0 0 18px !important;
}
.clkey-balance-payment-box .clkey-payment-overview p{
    margin:0 !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-size:15px !important;
    line-height:1.45 !important;
}
.clkey-balance-payment-box .clkey-payment-balance-line{
    grid-column:1/-1 !important;
    padding:14px 16px !important;
    background:rgba(212,175,55,.14) !important;
    border:1px solid rgba(212,175,55,.35) !important;
    border-radius:10px !important;
    font-size:18px !important;
}
.clkey-balance-payment-box .clkey-payment-choice-box{
    margin:18px 0 !important;
    padding:16px !important;
    background:#151515 !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:12px !important;
}
.clkey-balance-payment-box .clkey-payment-choice-box h4,
.clkey-balance-payment-box .clkey-payment-methods h4{
    margin:0 0 12px !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-size:18px !important;
    font-weight:900 !important;
}
.clkey-balance-payment-box .clkey-payment-choice{
    display:flex !important;
    align-items:flex-start !important;
    gap:10px !important;
    margin:10px 0 !important;
    padding:12px !important;
    background:#1d1d1d !important;
    border:1px solid rgba(255,255,255,.12) !important;
    border-radius:10px !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    cursor:pointer !important;
}
.clkey-balance-payment-box .clkey-payment-choice input[type="radio"]{
    width:18px !important;
    height:18px !important;
    margin:3px 0 0 !important;
    accent-color:#D4AF37 !important;
}
.clkey-balance-payment-box .clkey-payment-choice strong{
    display:block !important;
    margin:0 0 4px !important;
    color:#D4AF37 !important;
    -webkit-text-fill-color:#D4AF37 !important;
    font-size:15px !important;
    font-weight:900 !important;
}
.clkey-balance-payment-box .clkey-payment-choice small{
    display:block !important;
    color:rgba(255,255,255,.72) !important;
    -webkit-text-fill-color:rgba(255,255,255,.72) !important;
    font-size:13px !important;
    line-height:1.45 !important;
}
.clkey-balance-payment-box .clkey-payment-coupon-form{
    margin:0 0 20px !important;
    padding:16px !important;
    background:#151515 !important;
    border:1px dashed rgba(212,175,55,.38) !important;
    border-radius:12px !important;
}
.clkey-balance-payment-box .clkey-coupon-row{
    display:grid !important;
    grid-template-columns:1fr 190px !important;
    gap:10px !important;
    align-items:end !important;
}
.clkey-balance-payment-box .clkey-coupon-row .clkey-input{
    width:100% !important;
    height:48px !important;
    margin:0 !important;
}
.clkey-balance-payment-box .clkey-coupon-row button{
    height:48px !important;
    margin:0 !important;
    white-space:nowrap !important;
}
.clkey-balance-payment-box .clkey-paypal-direct-form{
    margin:0 !important;
    padding:0 !important;
    width:100% !important;
}
.clkey-balance-payment-box .clkey-paypal-direct-form button.clkey-paypal-button{
    width:100% !important;
}
.clkey-balance-payment-box .clkey-form-message{
    border-radius:10px !important;
    padding:12px 14px !important;
    margin:12px 0 !important;
}
@media (max-width:760px){
    .clkey-balance-payment-box .clkey-payment-overview{
        grid-template-columns:1fr !important;
    }
    .clkey-balance-payment-box .clkey-coupon-row{
        grid-template-columns:1fr !important;
    }
    .clkey-balance-payment-box .clkey-payment-balance-line{
        font-size:16px !important;
    }
}


/* v2.9.73 Payment UI polish - responsive alignment and Elementor-safe buttons */
.clkey-balance-payment-box,
.elementor .clkey-balance-payment-box,
.elementor-widget-container .clkey-balance-payment-box{
    width: min(1120px, calc(100vw - 32px)) !important;
    max-width: 1120px !important;
    margin: 28px auto !important;
    padding: 26px !important;
    border: 1px solid rgba(212,175,55,.38) !important;
    border-radius: 18px !important;
    background: #0b0b0b !important;
    color: #fff !important;
    box-shadow: 0 24px 80px rgba(0,0,0,.45) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}
.clkey-balance-payment-box,
.clkey-balance-payment-box *{
    font-family: 'Poppins', Arial, sans-serif !important;
    box-sizing: border-box !important;
}
.clkey-balance-payment-box h3,
.clkey-balance-payment-box .clkey-payment-loaded-title{
    margin: 0 0 18px !important;
    font-size: clamp(22px, 2.4vw, 32px) !important;
    line-height: 1.16 !important;
    font-weight: 800 !important;
    color: #fff !important;
    letter-spacing: -.03em !important;
}
.clkey-balance-payment-box .clkey-balance-summary{
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
}
.clkey-balance-payment-box .clkey-payment-overview{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px 18px !important;
    padding: 18px !important;
    margin: 0 0 18px !important;
    background: #151515 !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 14px !important;
}
.clkey-balance-payment-box .clkey-payment-overview p{
    margin: 0 !important;
    color: rgba(255,255,255,.88) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}
.clkey-balance-payment-box .clkey-payment-overview strong{
    color: #fff !important;
    font-weight: 800 !important;
}
.clkey-balance-payment-box .clkey-payment-balance-line{
    grid-column: 1 / -1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-top: 6px !important;
    padding: 14px 16px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(212,175,55,.55) !important;
    background: rgba(212,175,55,.12) !important;
    color: #fff !important;
    font-size: 16px !important;
}
.clkey-balance-payment-box .clkey-payment-choice-box,
.clkey-balance-payment-box .clkey-payment-coupon-form,
.clkey-balance-payment-box .clkey-payment-methods{
    margin: 18px 0 0 !important;
    padding: 18px !important;
    background: #111 !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 14px !important;
}
.clkey-balance-payment-box .clkey-payment-choice-box h4,
.clkey-balance-payment-box .clkey-payment-methods h4{
    margin: 0 0 14px !important;
    color: #fff !important;
    font-size: 17px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
}
.clkey-balance-payment-box .clkey-payment-choice{
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    gap: 12px !important;
    align-items: start !important;
    width: 100% !important;
    min-height: auto !important;
    padding: 14px !important;
    margin: 0 0 10px !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 12px !important;
    background: #191919 !important;
    color: #fff !important;
    cursor: pointer !important;
}
.clkey-balance-payment-box .clkey-payment-choice:hover,
.clkey-balance-payment-box .clkey-payment-choice:focus-within{
    border-color: rgba(212,175,55,.62) !important;
    background: #1d1b14 !important;
}
.clkey-balance-payment-box .clkey-payment-choice input[type="radio"]{
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    margin: 3px 0 0 !important;
    accent-color: #d4af37 !important;
}
.clkey-balance-payment-box .clkey-payment-choice strong{
    display: block !important;
    color: #d4af37 !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    margin: 0 0 4px !important;
}
.clkey-balance-payment-box .clkey-payment-choice small{
    display: block !important;
    color: rgba(255,255,255,.78) !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
}
.clkey-balance-payment-box .clkey-coupon-row{
    display: grid !important;
    grid-template-columns: 1fr minmax(150px, auto) !important;
    gap: 10px !important;
    align-items: stretch !important;
    width: 100% !important;
}
.clkey-balance-payment-box .clkey-input,
.clkey-balance-payment-box input[type="text"]{
    width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 12px 14px !important;
    border: 1px solid rgba(255,255,255,.15) !important;
    border-radius: 10px !important;
    background: #202020 !important;
    color: #fff !important;
    outline: none !important;
}
.clkey-balance-payment-box .clkey-payment-method-grid{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
    align-items: stretch !important;
}
.clkey-balance-payment-box .clkey-payment-method-card,
.clkey-balance-payment-box .clkey-payment-method-card--paypal{
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    min-height: 430px !important;
    padding: 20px !important;
    border: 1px solid rgba(212,175,55,.42) !important;
    border-radius: 14px !important;
    background: #121212 !important;
    color: #fff !important;
    overflow: hidden !important;
}
.clkey-balance-payment-box .clkey-payment-method-card h5,
.clkey-balance-payment-box .clkey-payment-method-card--paypal h5{
    margin: 0 0 16px !important;
    color: #d4af37 !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    font-weight: 800 !important;
}
.clkey-balance-payment-box .clkey-payment-qr{
    text-align: center !important;
    margin: 0 auto 18px !important;
    width: 100% !important;
}
.clkey-balance-payment-box .clkey-payment-qr img{
    display: block !important;
    width: min(240px, 100%) !important;
    max-width: 240px !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 12px !important;
    background: #fff !important;
    border: 0 !important;
    border-radius: 10px !important;
}
.clkey-balance-payment-box .clkey-proof-form{
    width: 100% !important;
    max-width: none !important;
    margin-top: auto !important;
    display: grid !important;
    gap: 12px !important;
}
.clkey-balance-payment-box input[type="file"]{
    width: 100% !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 10px !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 10px !important;
    background: #252525 !important;
    color: #fff !important;
}
.clkey-balance-payment-box input[type="file"]::file-selector-button{
    min-height: 34px !important;
    margin-right: 10px !important;
    padding: 7px 12px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #111 !important;
    font-weight: 700 !important;
}
.clkey-balance-payment-box button.ndc-keyc__button,
.clkey-balance-payment-box .ndc-keyc__button,
.elementor .clkey-balance-payment-box button.ndc-keyc__button,
.elementor-widget-container .clkey-balance-payment-box button.ndc-keyc__button,
.clkey-balance-payment-box button[type="submit"],
.clkey-balance-payment-box button[type="submit"]:hover,
.clkey-balance-payment-box button[type="submit"]:focus,
.clkey-balance-payment-box button[type="submit"]:active{
    width: 100% !important;
    min-height: 48px !important;
    padding: 12px 18px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg,#d4af37,#b8862f) !important;
    color: #050505 !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: none !important;
    white-space: normal !important;
}
.clkey-balance-payment-box .clkey-paypal-payment-form{
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    height: 100% !important;
    width: 100% !important;
}
.clkey-balance-payment-box .clkey-paypal-brand{
    margin: 0 !important;
    font-size: clamp(32px, 4vw, 44px) !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: -.06em !important;
}
.clkey-balance-payment-box .clkey-paypal-amount{
    margin: 0 !important;
    color: #fff !important;
    font-size: 15px !important;
}
.clkey-balance-payment-box .clkey-paypal-direct-form{
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}
.clkey-balance-payment-box a.clkey-paypal-button,
.elementor .clkey-balance-payment-box a.clkey-paypal-button,
.elementor-widget-container .clkey-balance-payment-box a.clkey-paypal-button,
.clkey-balance-payment-box a.clkey-paypal-button:link,
.clkey-balance-payment-box a.clkey-paypal-button:visited,
.clkey-balance-payment-box a.clkey-paypal-button:hover,
.clkey-balance-payment-box a.clkey-paypal-button:focus,
.clkey-balance-payment-box a.clkey-paypal-button:active,
.clkey-balance-payment-box button.clkey-paypal-button,
.clkey-balance-payment-box button.clkey-paypal-button:hover,
.clkey-balance-payment-box button.clkey-paypal-button:focus{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 54px !important;
    padding: 12px 16px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #ffc439 !important;
    color: #111 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    white-space: normal !important;
    overflow: visible !important;
    box-shadow: none !important;
    cursor: pointer !important;
}
.clkey-balance-payment-box .clkey-paypal-button-logo{
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 0 !important;
    flex: 0 0 auto !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    font-style: italic !important;
    letter-spacing: -.04em !important;
}
.clkey-balance-payment-box .clkey-paypal-button-logo + span{
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
}
.clkey-balance-payment-box .clkey-small-note{
    margin: 0 !important;
    color: rgba(255,255,255,.72) !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
}
.clkey-balance-payment-box .clkey-form-message,
.clkey-balance-payment-box .clkey-success{
    margin: 12px 0 !important;
    padding: 12px 14px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}
@media (max-width: 900px){
    .clkey-balance-payment-box,
    .elementor .clkey-balance-payment-box,
    .elementor-widget-container .clkey-balance-payment-box{
        width: min(100%, calc(100vw - 20px)) !important;
        padding: 18px !important;
        margin: 18px auto !important;
    }
    .clkey-balance-payment-box .clkey-payment-overview,
    .clkey-balance-payment-box .clkey-payment-method-grid{
        grid-template-columns: 1fr !important;
    }
    .clkey-balance-payment-box .clkey-coupon-row{
        grid-template-columns: 1fr !important;
    }
    .clkey-balance-payment-box .clkey-payment-method-card,
    .clkey-balance-payment-box .clkey-payment-method-card--paypal{
        min-height: auto !important;
    }
}
@media (max-width: 520px){
    .clkey-balance-payment-box .clkey-payment-overview,
    .clkey-balance-payment-box .clkey-payment-choice-box,
    .clkey-balance-payment-box .clkey-payment-coupon-form,
    .clkey-balance-payment-box .clkey-payment-methods,
    .clkey-balance-payment-box .clkey-payment-method-card,
    .clkey-balance-payment-box .clkey-payment-method-card--paypal{
        padding: 14px !important;
    }
    .clkey-balance-payment-box .clkey-payment-balance-line{
        display: block !important;
    }
    .clkey-balance-payment-box .clkey-paypal-button-logo{
        font-size: 16px !important;
    }
}

/* v2.9.78: multiple QR codes + embedded PayPal buttons */
.clkey-balance-payment-box .clkey-qr-selector{
    width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    gap:14px !important;
    align-items:stretch !important;
}
.clkey-balance-payment-box .clkey-qr-options{
    display:grid !important;
    grid-template-columns:repeat(auto-fit,minmax(110px,1fr)) !important;
    gap:8px !important;
    width:100% !important;
}
.clkey-balance-payment-box .clkey-qr-option{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:42px !important;
    padding:9px 10px !important;
    margin:0 !important;
    background:#111 !important;
    border:1px solid rgba(212,175,55,.35) !important;
    border-radius:0 !important;
    color:#fff !important;
    font-family:'Poppins',sans-serif !important;
    font-size:12px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    text-align:center !important;
    cursor:pointer !important;
    box-shadow:none !important;
}
.clkey-balance-payment-box .clkey-qr-option input{
    position:absolute !important;
    opacity:0 !important;
    pointer-events:none !important;
}
.clkey-balance-payment-box .clkey-qr-option.is-active,
.clkey-balance-payment-box .clkey-qr-option:has(input:checked){
    background:#D4AF37 !important;
    border-color:#D4AF37 !important;
    color:#050505 !important;
}
.clkey-balance-payment-box .clkey-qr-option span{
    color:inherit !important;
}
.clkey-balance-payment-box .clkey-payment-qr{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    padding:12px !important;
    background:#fff !important;
    border:0 !important;
    border-radius:0 !important;
    min-height:250px !important;
}
.clkey-balance-payment-box .clkey-payment-qr img{
    display:block !important;
    width:auto !important;
    max-width:260px !important;
    max-height:260px !important;
    height:auto !important;
    object-fit:contain !important;
    margin:0 auto !important;
    padding:0 !important;
    background:#fff !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
}
.clkey-balance-payment-box .clkey-paypal-embedded{
    width:100% !important;
    max-width:100% !important;
    overflow:visible !important;
}
.clkey-balance-payment-box .clkey-paypal-buttons{
    width:100% !important;
    min-height:48px !important;
    overflow:visible !important;
    position:relative !important;
    z-index:2 !important;
}
.clkey-balance-payment-box .clkey-paypal-buttons iframe{
    max-width:100% !important;
}
.clkey-balance-payment-box .clkey-paypal-inline-message{
    display:none !important;
    margin:10px 0 0 !important;
    padding:10px 12px !important;
    font-family:'Poppins',sans-serif !important;
    font-size:12px !important;
    line-height:1.35 !important;
    font-weight:700 !important;
    border-radius:0 !important;
}
.clkey-balance-payment-box .clkey-paypal-inline-message:not(:empty){
    display:block !important;
}
.clkey-balance-payment-box .clkey-paypal-inline-message.is-success{
    background:rgba(212,175,55,.12) !important;
    color:#D4AF37 !important;
}
.clkey-balance-payment-box .clkey-paypal-inline-message.is-error{
    background:rgba(215,25,32,.12) !important;
    color:#ff7878 !important;
}
@media(max-width:767px){
    .clkey-balance-payment-box .clkey-qr-options{
        grid-template-columns:1fr 1fr !important;
    }
    .clkey-balance-payment-box .clkey-payment-qr{
        min-height:220px !important;
    }
    .clkey-balance-payment-box .clkey-payment-qr img{
        max-width:220px !important;
        max-height:220px !important;
    }
}


/* v2.9.79: mobile responsive tracker + keep next-step focus on 3D preview */
.clkey-tracker-box,
.elementor .clkey-tracker-box,
.elementor-widget-container .clkey-tracker-box{
    width:100% !important;
    max-width:min(1120px, calc(100vw - 24px)) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    overflow:hidden !important;
}
.clkey-tracker-box *,
.clkey-tracker-layout,
.clkey-tracker-result,
.clkey-tracker-3d-preview,
.clkey-tracker-summary,
.clkey-tracker-config-panel,
.clkey-tracker-config-grid,
.clkey-tracker-config-field,
.clkey-tracker-search-row{
    min-width:0 !important;
    max-width:100% !important;
}
.clkey-tracker-layout{
    width:100% !important;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) !important;
    align-items:stretch !important;
}
.clkey-tracker-3d-preview,
.clkey-tracker-3d-preview .ndc-keyc,
.clkey-tracker-3d-preview .ndc-keyc__wrap,
.clkey-tracker-3d-preview .ndc-keyc__viewer,
.clkey-tracker-3d-preview .ndc-keyc__canvas,
.clkey-tracker-3d-preview canvas{
    width:100% !important;
    max-width:100% !important;
}
.clkey-tracker-3d-preview{
    overflow:hidden !important;
}
.clkey-tracker-summary p,
.clkey-tracker-config-field,
.clkey-tracker-config-field span,
.clkey-tracker-config-desc{
    overflow-wrap:anywhere !important;
    word-break:normal !important;
}
.clkey-tracker-config-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}
.clkey-tracker-config-field--wide{
    grid-column:1 / -1 !important;
}
@media(max-width:900px){
    .clkey-tracker-box,
    .elementor .clkey-tracker-box,
    .elementor-widget-container .clkey-tracker-box{
        width:100% !important;
        max-width:calc(100vw - 20px) !important;
        padding:14px !important;
        margin-top:14px !important;
        margin-bottom:14px !important;
    }
    .clkey-tracker-layout{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:14px !important;
    }
    .clkey-tracker-3d-preview,
    .clkey-tracker-summary{
        width:100% !important;
        max-width:100% !important;
        order:initial !important;
    }
    .clkey-tracker-summary{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:10px !important;
        overflow:visible !important;
    }
    .clkey-tracker-summary p{
        padding:13px 14px !important;
        width:100% !important;
    }
    .clkey-tracker-summary strong{
        font-size:12px !important;
    }
    .clkey-tracker-summary span{
        font-size:14px !important;
    }
    .clkey-tracker-config-panel{
        padding:14px !important;
        width:100% !important;
        overflow:visible !important;
    }
    .clkey-tracker-config-grid{
        display:grid !important;
        grid-template-columns:1fr !important;
        overflow:visible !important;
        max-height:none !important;
    }
    .clkey-tracker-config-head h4{
        font-size:16px !important;
    }
    .clkey-tracker-3d-preview .ndc-keyc__wrap,
    .clkey-tracker-3d-preview .ndc-keyc__viewer,
    .clkey-tracker-3d-preview .ndc-keyc__canvas{
        min-height:360px !important;
        height:360px !important;
        max-height:360px !important;
    }
}
@media(max-width:520px){
    .clkey-tracker-box,
    .elementor .clkey-tracker-box,
    .elementor-widget-container .clkey-tracker-box{
        max-width:calc(100vw - 14px) !important;
        padding:10px !important;
    }
    .clkey-tracker-owned-note{
        margin-bottom:10px !important;
        padding:8px 10px !important;
        font-size:11px !important;
        line-height:1.25 !important;
    }
    .clkey-tracker-search-row{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:8px !important;
    }
    .clkey-tracker-search-row .clkey-input,
    .clkey-tracker-search-row input[type="text"],
    .clkey-tracker-search-row .ndc-keyc__button{
        width:100% !important;
        min-height:46px !important;
        font-size:14px !important;
    }
    .clkey-tracker-3d-preview .ndc-keyc__wrap,
    .clkey-tracker-3d-preview .ndc-keyc__viewer,
    .clkey-tracker-3d-preview .ndc-keyc__canvas{
        min-height:300px !important;
        height:300px !important;
        max-height:300px !important;
    }
    .clkey-tracker-summary p{
        padding:12px !important;
    }
    .clkey-tracker-config-field{
        padding:10px !important;
    }
}
@media(max-width:380px){
    .clkey-tracker-3d-preview .ndc-keyc__wrap,
    .clkey-tracker-3d-preview .ndc-keyc__viewer,
    .clkey-tracker-3d-preview .ndc-keyc__canvas{
        min-height:260px !important;
        height:260px !important;
        max-height:260px !important;
    }
}
