/* Kicksta.in app components (login, dashboard, wallet, orders, tickets, service pages).
   Extends the site palette: ink #0A0A0A, green #00DD83, amber #FFB600, pink #FF005A, blue #0068FF, surface #F0F0F3.
   Uses the Webflow type scale classes (heading-style-*, label, button). No new colour tokens. */
.kx-main{--kx-ink:#0A0A0A;--kx-green:#00DD83;--kx-amber:#FFB600;--kx-pink:#FF005A;--kx-blue:#0068FF;--kx-surface:#F0F0F3;--kx-line:rgba(10,10,10,.12);--kx-ease:cubic-bezier(.32,.72,0,1)}
.kx-main .container{max-width:1240px}
.kx-main .section{padding-top:3rem;padding-bottom:4rem}
.kx-center{text-align:center}.kx-intro{max-width:46rem;margin:0 auto 2.5rem}.kx-center.kx-intro,.kx-intro.kx-center{text-align:center}
.kx-lede{font-size:1.125rem;line-height:1.55;opacity:.8;margin:.75rem 0 1.25rem}
.kx-muted{opacity:.7}.kx-small{font-size:.9rem}.kx-break{word-break:break-all}.kx-gap{margin-top:1rem}.kx-h-gap{margin:2.25rem 0 1rem}
.kx-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem;align-items:center}.kx-actions-center{justify-content:center}
.kx-more{margin-top:1rem}
/* crumbs */
.kx-crumbs{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.9rem;opacity:.75;margin-bottom:1.25rem}.kx-crumbs a{text-decoration:underline;text-underline-offset:3px}
/* forms */
.kx-form{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}
.kx-field{display:flex;flex-direction:column;gap:.4rem}.kx-field>span{font-weight:500;font-size:.95rem}
.kx-field input,.kx-field select,.kx-field textarea{width:100%;font:inherit;color:var(--kx-ink);background:#fff;border:1.5px solid var(--kx-line);border-radius:14px;padding:.85rem 1rem;transition:border-color .25s var(--kx-ease),box-shadow .25s var(--kx-ease)}
.kx-field input:focus,.kx-field select:focus,.kx-field textarea:focus{outline:none;border-color:var(--kx-ink);box-shadow:0 0 0 4px rgba(0,221,131,.35)}
.kx-field input:disabled{background:var(--kx-surface);opacity:.8}
.kx-field small{opacity:.65}
.kx-code{font-size:1.75rem;letter-spacing:.5rem;text-align:center;font-weight:700}
.kx-check{display:flex;gap:.6rem;align-items:flex-start;font-size:.95rem}.kx-check input{margin-top:.25rem;accent-color:var(--kx-ink)}.kx-check a{text-decoration:underline}
.kx-row{display:flex;justify-content:flex-end;margin-top:-.25rem}
.kx-link,.kx-link-strong{text-decoration:underline;text-underline-offset:3px}.kx-link-strong{font-weight:600}
.kx-linkbtn{background:none;border:0;padding:0;font:inherit;cursor:pointer;color:inherit}
.kx-inline{display:inline}.kx-link{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer}
.kx-switch{margin:1.25rem 0 0;font-size:.95rem}
button.button{border:0;background:none;padding:0;cursor:pointer;font:inherit}
/* flash */
.kx-flash{border-radius:14px;padding:.85rem 1.1rem;margin:1rem 0;font-size:.95rem}
.kx-flash-ok{background:rgba(0,221,131,.18)}.kx-flash-bad{background:rgba(255,0,90,.12);color:#8a0030}.kx-flash-info{background:rgba(0,104,255,.1)}
/* auth */
.kx-auth{display:grid;grid-template-columns:1.1fr .9fr;gap:1.5rem;align-items:stretch}.kx-auth-single{grid-template-columns:minmax(0,34rem);justify-content:center}
.kx-auth-card{background:var(--kx-surface);border-radius:28px;padding:clamp(1.5rem,4vw,3rem)}
.kx-auth-aside{border-radius:28px;padding:clamp(1.5rem,4vw,3rem);display:flex;flex-direction:column;gap:1rem;justify-content:center}
.kx-aside-amber{background:var(--kx-amber)}.kx-aside-green{background:var(--kx-green)}
.kx-auth-aside img{border-radius:16px}
/* usp bullets */
.kx-usp{list-style:none;margin:1rem 0;padding:0;display:grid;gap:.6rem}
.kx-usp li{position:relative;padding-left:1.9rem;line-height:1.4}
.kx-usp li::before{content:"";position:absolute;left:0;top:.1rem;width:1.15rem;height:1.15rem;border-radius:50%;background:var(--kx-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 6.2l2.1 2.1L9 4.2' fill='none' stroke='%230A0A0A' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/80% no-repeat}
.kx-aside-green .kx-usp li::before{background-color:#fff}
.kx-usp-center{justify-items:center;max-width:26rem;margin:1.5rem auto}.kx-usp-center li{text-align:left}
/* account nav + header */
.kx-head{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;align-items:flex-end;margin-bottom:1.75rem}
.kx-acct-nav{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;background:var(--kx-surface);padding:.35rem;border-radius:999px}
.kx-acct-nav a,.kx-acct-nav .kx-link{padding:.55rem 1rem;border-radius:999px;text-decoration:none;font-weight:500;font-size:.95rem;transition:background-color .25s var(--kx-ease),color .25s}
.kx-acct-nav a:hover{background:#fff}.kx-acct-nav a.is-active{background:var(--kx-ink);color:#fff}.kx-acct-nav .kx-acct-new{background:var(--kx-green)}
/* stats + cards */
.kx-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.kx-stat{display:flex;flex-direction:column;gap:.35rem;background:var(--kx-surface);border-radius:24px;padding:1.4rem;text-decoration:none;color:inherit;transition:transform .35s var(--kx-ease)}
a.kx-stat:hover{transform:translateY(-3px)}
.kx-stat strong{font-family:"Roboto Condensed",sans-serif;font-size:2.4rem;line-height:1;font-weight:700}
.kx-stat-l{font-size:.9rem;opacity:.7}.kx-stat-s{font-size:.85rem;opacity:.6}.kx-stat-a{font-size:.9rem;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.kx-stat-wallet{background:var(--kx-ink);color:#fff}.kx-stat-wallet .kx-stat-l{opacity:.75}
.kx-card{background:var(--kx-surface);border-radius:28px;padding:clamp(1.25rem,3vw,2rem)}
.kx-card-dark{background:var(--kx-ink);color:#fff}
.kx-card-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}
.kx-big{display:block;font-family:"Roboto Condensed",sans-serif;font-size:3rem;line-height:1.05;font-weight:700;margin:.25rem 0 .5rem}
.kx-narrow{max-width:46rem}
.kx-two{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}
.kx-wallet-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:1.5rem;margin-bottom:1rem}
.kx-chips,.kx-presets{display:flex;flex-wrap:wrap;gap:.5rem;margin:.5rem 0 1rem}
.kx-chip{display:inline-block;border:0;cursor:pointer;font:inherit;font-weight:500;background:var(--kx-surface);color:var(--kx-ink);padding:.65rem 1.15rem;border-radius:999px;text-decoration:none;transition:background-color .25s var(--kx-ease),transform .25s var(--kx-ease)}
.kx-chip:hover{background:var(--kx-green)}.kx-chip:active{transform:scale(.97)}
.kx-ghost{display:inline-block;border:1.5px solid var(--kx-ink);background:transparent;color:var(--kx-ink);font:inherit;font-weight:500;border-radius:999px;padding:.75rem 1.3rem;cursor:pointer;text-decoration:none;transition:background-color .25s var(--kx-ease),color .25s}
.kx-ghost:hover{background:var(--kx-ink);color:#fff}
.kx-empty{background:var(--kx-surface);border-radius:24px;padding:2rem;text-align:center}.kx-empty p{margin:0 0 1rem;opacity:.75}
/* tables */
.kx-table-wrap{overflow-x:auto;border-radius:24px;background:var(--kx-surface);padding:.25rem}
.kx-table{width:100%;border-collapse:collapse;min-width:560px}
.kx-table th,.kx-table td{padding:1rem 1.1rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--kx-line)}
.kx-table thead th{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;opacity:.65;font-weight:500}
.kx-table tbody tr:last-child td,.kx-table tbody tr:last-child th{border-bottom:0}
.kx-table small{display:block;opacity:.6;margin-top:.15rem}
.kx-pos{color:#00794a;font-weight:600}.kx-neg{color:#8a0030;font-weight:600}
.kx-badge{display:inline-block;font-size:.8rem;font-weight:600;padding:.35rem .7rem;border-radius:999px;white-space:nowrap}
.kx-badge-ok{background:var(--kx-green)}.kx-badge-warn{background:var(--kx-amber)}.kx-badge-bad{background:rgba(255,0,90,.18);color:#8a0030}.kx-badge-info{background:#fff;border:1px solid var(--kx-line)}
.kx-tag{font-style:normal;font-size:.7rem;font-weight:600;background:var(--kx-amber);padding:.15rem .5rem;border-radius:999px;margin-left:.35rem}
.kx-progress{height:10px;background:#fff;border-radius:999px;overflow:hidden;margin:1.25rem 0}.kx-progress span{display:block;height:100%;background:var(--kx-green);border-radius:999px;transition:width .6s var(--kx-ease)}
.kx-dl{display:grid;gap:.1rem;margin:0}.kx-dl>div{display:flex;justify-content:space-between;gap:1.5rem;padding:.8rem 0;border-bottom:1px solid var(--kx-line)}.kx-dl dt{opacity:.65}.kx-dl dd{margin:0;text-align:right;font-weight:500}
/* list + thread */
.kx-list{display:grid;gap:.6rem}.kx-list-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:var(--kx-surface);border-radius:20px;padding:1.1rem 1.3rem;text-decoration:none;color:inherit;transition:transform .3s var(--kx-ease)}.kx-list-item:hover{transform:translateX(4px)}.kx-list-item small{display:block;opacity:.65;margin-top:.15rem}
.kx-thread{display:grid;gap:.75rem;margin:1rem 0 1.5rem}
.kx-msg{border-radius:20px;padding:1rem 1.25rem;max-width:90%}.kx-msg small{opacity:.65}.kx-msg p{margin:.35rem 0 0}
.kx-msg-me{background:var(--kx-surface);justify-self:end}.kx-msg-staff{background:var(--kx-green);justify-self:start}
/* wallet pay */
.kx-pay{display:grid;grid-template-columns:auto 1fr;gap:1.5rem;align-items:start}.kx-qr{background:#fff;padding:12px;border-radius:18px;width:184px;height:184px;display:grid;place-items:center}.kx-pay-side{display:grid;gap:1rem}
/* catalog */
.kx-channel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem}
.kx-channel{display:flex;flex-direction:column;gap:1rem}.kx-channel header{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap}.kx-channel header a{text-decoration:none}
.kx-type-list{list-style:none;margin:0;padding:0;flex:1}.kx-type-list li a{display:flex;justify-content:space-between;gap:1rem;padding:.7rem .25rem;border-bottom:1px solid var(--kx-line);text-decoration:none;transition:padding .3s var(--kx-ease)}.kx-type-list li a:hover{padding-left:.75rem}.kx-type-list b{white-space:nowrap}.kx-type-list small{font-weight:400;opacity:.65}
.kx-svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.1rem}
.kx-svc{display:flex;flex-direction:column;gap:.5rem}.kx-svc .kx-usp{flex:1}.kx-svc h2 a{text-decoration:none}
.kx-price{display:flex;align-items:baseline;gap:.5rem;margin:.5rem 0 .75rem}.kx-price strong{font-family:"Roboto Condensed",sans-serif;font-size:2.4rem;line-height:1}.kx-price span{opacity:.65;font-size:.9rem}
.kx-packs{margin-top:4rem}.kx-compare th[scope=col]{font-size:1rem;opacity:1;text-transform:none;letter-spacing:0}.kx-compare th[scope=col] a{text-decoration:none}.kx-compare td,.kx-compare th{min-width:150px}.kx-compare tbody th{font-weight:500;opacity:.8;position:sticky;left:0;background:var(--kx-surface)}.kx-compare b{font-size:1.15rem}.kx-dash{opacity:.35}.kx-price-row td strong{font-family:"Roboto Condensed",sans-serif;font-size:1.7rem}
.kx-svc-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:start}
.kx-order{position:sticky;top:96px;display:flex;flex-direction:column;gap:.75rem}
.kx-total{display:flex;justify-content:space-between;align-items:baseline;padding:.9rem 0;border-top:1px solid var(--kx-line);border-bottom:1px solid var(--kx-line)}.kx-total strong{font-family:"Roboto Condensed",sans-serif;font-size:2rem}
.kx-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin:1.5rem 0 0}.kx-facts>div{background:var(--kx-surface);border-radius:18px;padding:1rem}.kx-facts dt{font-size:.8rem;opacity:.65}.kx-facts dd{margin:.15rem 0 0;font-weight:600}
.kx-includes{list-style:none;padding:0;margin:.5rem 0;display:flex;flex-wrap:wrap;gap:.5rem}.kx-includes li{background:var(--kx-surface);border-radius:999px;padding:.5rem 1rem}
.kx-how{margin-top:4.5rem}.kx-steps{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.kx-steps li{background:var(--kx-surface);border-radius:24px;padding:1.5rem}.kx-steps span{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--kx-ink);color:#fff;font-weight:700;margin-bottom:.75rem}.kx-steps p{margin:.4rem 0 0;opacity:.75}
.kx-steps li:nth-child(1) span{background:var(--kx-pink)}.kx-steps li:nth-child(2) span{background:var(--kx-blue)}.kx-steps li:nth-child(3) span{background:var(--kx-amber);color:var(--kx-ink)}.kx-steps li:nth-child(4) span{background:var(--kx-green);color:var(--kx-ink)}
.kx-faq{max-width:46rem;margin:4rem auto 0}.kx-faq-item{background:var(--kx-surface);border-radius:20px;margin-top:.6rem;padding:0 1.3rem}.kx-faq-item summary{cursor:pointer;list-style:none;padding:1.1rem 0;font-weight:600;display:flex;justify-content:space-between;gap:1rem}.kx-faq-item summary::-webkit-details-marker{display:none}.kx-faq-item summary::after{content:"+";font-size:1.4rem;line-height:1;transition:transform .3s var(--kx-ease)}.kx-faq-item[open] summary::after{transform:rotate(45deg)}.kx-faq-item p{margin:0 0 1.1rem;opacity:.8}
.kx-more-links{margin-top:3rem}.kx-appicon{border-radius:22px;margin-bottom:1rem}
/* install button visibility handled by pwa.js */
@media (max-width:991px){.kx-stats{grid-template-columns:repeat(2,1fr)}.kx-steps{grid-template-columns:repeat(2,1fr)}.kx-svc-hero,.kx-wallet-grid,.kx-two{grid-template-columns:1fr}.kx-order{position:static}}
@media (max-width:767px){.kx-auth{grid-template-columns:1fr}.kx-auth-aside{order:2}.kx-steps{grid-template-columns:1fr}.kx-pay{grid-template-columns:1fr}.kx-qr{justify-self:center}.kx-main .section{padding-top:2rem}.kx-acct-nav{width:100%;overflow-x:auto;flex-wrap:nowrap}.kx-acct-nav a,.kx-acct-nav .kx-link{white-space:nowrap}
  .kx-table{min-width:0}.kx-table thead{display:none}.kx-table tr{display:block;padding:.6rem 0;border-bottom:1px solid var(--kx-line)}.kx-table td{display:flex;justify-content:space-between;gap:1rem;border:0;padding:.4rem 1rem}.kx-table td::before{content:attr(data-l);opacity:.6}
  .kx-compare{min-width:640px}.kx-compare thead{display:table-header-group}.kx-compare tr{display:table-row}.kx-compare td{display:table-cell}.kx-compare td::before{content:none}}
@media (prefers-reduced-motion:reduce){.kx-main *{transition:none!important}}
.kx-safe{margin:0;text-align:center}
