/* ── QR Code — Sprint 18 ── */

.qr-code {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.qr-code-canvas {
    background: #ffffff;
    padding: 6px;
    border-radius: 8px;
    border: 1px solid var(--border, #342d89);
    line-height: 0;
    display: inline-flex;
}

.qr-code-img {
    display: block;
    width: 160px;
    height: 160px;
}

.qr-code-caption {
    font-size: 11px;
    color: var(--text-muted, #b1afd0);
}

.qr-fallback {
    font-size: 12px;
    color: var(--text-muted, #b1afd0);
    padding: 20px;
    text-align: center;
}

/* ── Share preview panel (in generation modal) ── */
.share-preview {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--border, #342d89);
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.share-preview-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.share-preview-title {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-muted, #b1afd0);
}

.share-preview-frame {
    border: 1px solid var(--border, #342d89);
    border-radius: 8px;
    overflow: hidden;
    background: var(--bg, #15172e);
}

.share-preview-chrome {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    font-size: 11px;
    color: var(--text-muted, #b1afd0);
    background: rgba(72, 38, 253, 0.12);
    border-bottom: 1px solid var(--border, #342d89);
}

.share-preview-chrome strong { color: var(--text, #fff); }

.share-preview-demo-name {
    margin-left: auto;
    font-weight: 600;
    color: var(--text, #fff);
    max-width: 45%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.share-preview-body {
    padding: 16px 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: center;
    text-align: center;
}

.share-preview-project {
    font-size: 14px;
    font-weight: 600;
    color: var(--text, #fff);
}

.share-preview-expiry {
    font-size: 12px;
    color: var(--text-muted, #b1afd0);
}

.share-preview-qr-wrap {
    display: flex;
    justify-content: center;
    padding-top: 4px;
}
