/* Современный светлый карточный стиль */
:root{
  --surface:#ffffff;
  --surface-2:#f5f8ff;
  --fg:#0d1b2a;
  --fg-2:#314361;
  --muted:#7b89a6;
  --border:#dfe8ff;
  --primary:#2c70e0;
  --primary-2:#1b56b8;
  --ok:#1a8c37;
  --ok-bg:#e9fff0;
  --err:#b7001f;
  --err-bg:#ffeaea;
  --shadow:0 10px 30px rgba(35,75,137,.15);
}

.knk-main{max-width:1220px;margin:16px auto;padding:0 12px}
.knk-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);padding:18px}
.knk-header h2{margin:4px 0 2px;font-size:26px;color:var(--fg)}
.knk-sub{margin:0;color:var(--muted)}
.knk-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:14px}
@media (max-width:1000px){.knk-grid{grid-template-columns:1fr}}
.knk-col{}
.knk-block{background:var(--surface-2);border:1px solid var(--border);border-radius:16px;padding:14px}
.knk-block__title{font-weight:800;color:var(--fg-2);margin-bottom:8px}

.knk-designs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media (max-width:520px){.knk-designs{grid-template-columns:repeat(3,minmax(0,1fr))}}
.knk-design{border:1px solid var(--border);background:#fff;border-radius:14px;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;padding:4px;transition:.15s}
.knk-design img{width:100%;height:64px;object-fit:cover;border-radius:10px}
.knk-design span{padding:6px 6px 8px;font-size:13px;color:var(--fg-2);text-align:center}
.knk-design:is(:hover,.is-active){border-color:var(--primary);box-shadow:0 0 0 4px #2c70e022}

.knk-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.knk-or{color:#98a5c7}
.knk-input{height:40px;border:1px solid var(--border);border-radius:12px;padding:0 12px;background:#fff;color:var(--fg);outline:none}
.knk-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2c70e022}

.knk-form{display:grid;gap:8px}

.knk-btn{height:44px;padding:0 18px;border-radius:12px;border:0;color:#fff;background:linear-gradient(180deg,var(--primary),var(--primary-2));font-weight:800;cursor:pointer;box-shadow:0 10px 24px #2c70e044}
.knk-actions{display:flex;align-items:center;gap:10px;margin-top:10px}
.knk-hint{color:#7b89a6;font-size:13px}

.knk-preview{background:#fff;border:1px solid var(--border);border-radius:16px;padding:10px;text-align:center}
.knk-preview--empty{display:flex;align-items:center;justify-content:center;color:#94a3c3;height:160px}
.knk-preview__imgwrap{position:relative;display:inline-block}
.knk-preview__imgwrap img{max-width:96%;max-height:180px;border-radius:12px;box-shadow:0 8px 16px rgba(0,0,0,.12)}
.knk-preview__title{margin-top:6px;font-weight:700;color:var(--fg)}
.knk-chip{position:absolute;top:8px;left:10px;background:#1b56b8e6;color:#fff;padding:6px 12px;border-radius:999px;font-weight:800;box-shadow:0 4px 12px rgba(0,0,0,.2)}

.knk-alert{border-radius:12px;padding:10px 12px;margin:10px 0;font-size:15px}
.knk-alert--ok{color:var(--ok);background:var(--ok-bg)}
.knk-alert--error{color:var(--err);background:var(--err-bg)}
/* Блок применения сертификата в корзине */
.gc-card{margin-top:12px;padding:12px;border:1px dashed var(--border);border-radius:12px;background:var(--surface)}
.gc-title{font-weight:800;margin-bottom:8px;color:var(--fg-2)}
.gc-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.gc-input{flex:1 0 240px;height:40px;border:1px solid var(--border);border-radius:12px;padding:0 12px;background:#fff;color:#0d1b2a;outline:none}
.gc-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2c70e022}
.gc-btn{height:40px;padding:0 14px;border-radius:12px;border:0;background:linear-gradient(180deg,var(--primary),var(--primary-2));color:#fff;font-weight:800;cursor:pointer;box-shadow:0 10px 24px #2c70e044}
.gc-btn--muted{background:#eef5ff;color:#294766;box-shadow:none}
.gc-msg{margin-top:8px;color:#294766}
.gc-msg--ok{color:#0a8a2a}
.gc-msg--error{color:#b7001f}