/* CCFT v1.36.2 - QR Business Card Builder */

.ccftqr-icon::before { content:"\1F4F1"; }

.ccftqr-layout {
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));
    gap:18px;
}

.ccftqr-form {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.ccftqr-form label {
    display:flex;
    flex-direction:column;
    gap:6px;
}

.ccftqr-form label:nth-child(1),
.ccftqr-form label:nth-child(6),
.ccftqr-form label:nth-child(7),
.ccftqr-form label:nth-child(8) {
    grid-column:1 / -1;
}

.ccftqr-form-actions {
    grid-column:1 / -1;
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:6px;
}

.ccftqr-output-actions {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin:12px 0 10px;
}

.ccftqr-vcard-wrap {
    display:flex;
    flex-direction:column;
    gap:6px;
}

.ccftqr-vcard-wrap textarea {
    width:100%;
    box-sizing:border-box;
}

.ccftqr-help-card {
    margin-bottom:16px;
    background:#f8fbfc;
    border-left:4px solid #7d1538;
}

.ccftqr-preview {
    min-height:280px;
}

.ccftqr-business-card {
    background:linear-gradient(180deg, #ffffff 0%, #f9fbfd 100%);
    border:1px solid #d5dce3;
    border-radius:18px;
    padding:18px;
    box-shadow:0 2px 10px rgba(0,0,0,.06);
}

.ccftqr-brand-row {
    display:flex;
    justify-content:flex-start;
    margin-bottom:14px;
}

.ccftqr-logo-wrap {
    min-height:46px;
    display:flex;
    align-items:center;
}

.ccftqr-logo-wrap img {
    max-height:46px;
    max-width:180px;
}

.ccftqr-logo-fallback {
    font-weight:800;
    letter-spacing:.08em;
    color:#7d1538;
    font-size:1.2rem;
}

.ccftqr-preview-grid {
    display:grid;
    grid-template-columns:1.2fr 220px;
    gap:18px;
    align-items:start;
}

.ccftqr-contact-block h4 {
    margin:0 0 6px;
    font-size:1.35rem;
    color:#7d1538;
}

.ccftqr-contact-block p {
    margin:0 0 6px;
}

.ccftqr-title {
    font-weight:600;
}

.ccftqr-qr-block {
    text-align:center;
}

.ccftqr-image {
    width:190px;
    max-width:100%;
    border:10px solid #fff;
    border-radius:16px;
    box-shadow:0 2px 10px rgba(0,0,0,.08);
    background:#fff;
}

.ccftqr-scan-note {
    margin-top:8px;
    font-size:.92rem;
    font-weight:600;
    color:#7d1538;
}

@media (max-width: 760px) {
    .ccftqr-form {
        grid-template-columns:1fr;
    }

    .ccftqr-preview-grid {
        grid-template-columns:1fr;
    }

    .ccftqr-qr-block {
        text-align:left;
    }
}

@media print {
    body * {
        visibility:hidden !important;
    }

    #ccftQrPreview,
    #ccftQrPreview * {
        visibility:visible !important;
    }

    #ccftQrPreview {
        position:absolute;
        left:0;
        top:0;
        width:100%;
    }
}
