/* ========================================================================= BetterDesk Support Generator panel ========================================================================= */ .generator-module-gate { margin-bottom: 20px; } .gen-module-intro { margin: 0 0 12px; line-height: 1.5; } .gen-module-bullets { margin: 0 0 16px; padding-left: 1.25rem; line-height: 1.5; } .gen-module-status { margin-bottom: 16px; padding: 10px 12px; border-radius: 8px; background: var(--color-bg-elevated, rgba(255, 255, 255, 0.03)); font-size: 13px; } .gen-module-status.is-error { color: var(--color-danger, #ef4444); } .gen-module-actions { display: flex; flex-wrap: wrap; gap: 10px; } .generator-layout { display: grid; grid-template-columns: 320px 1fr; gap: 20px; align-items: start; } @media (max-width: 1100px) { .generator-layout { grid-template-columns: 1fr; } } .bundle-item-title { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; width: 100%; } .badge-product--legacy { font-size: 10px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; padding: 1px 6px; border-radius: 999px; border: 1px solid var(--color-border, rgba(255, 255, 255, 0.16)); opacity: 0.75; } .gen-legacy-hint { margin-bottom: 16px; padding: 10px 12px; border-radius: 8px; border: 1px solid var(--color-border, rgba(255, 255, 255, 0.12)); background: var(--color-bg-elevated, rgba(255, 255, 255, 0.03)); font-size: 13px; line-height: 1.45; } .gen-legacy-leftovers { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--color-border, rgba(255, 255, 255, 0.08)); } .gen-legacy-leftovers-list { display: flex; flex-direction: column; gap: 8px; margin-top: 10px; } .gen-legacy-row { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid var(--color-border, rgba(255, 255, 255, 0.08)); border-radius: 8px; } .gen-legacy-row-actions { display: flex; flex-wrap: wrap; gap: 8px; } .platforms-checklist { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 12px; margin: 8px 0 16px; } @media (max-width: 700px) { .platforms-checklist { grid-template-columns: 1fr; } } .platform-check { display: flex; align-items: flex-start; gap: 8px; font-size: 13px; line-height: 1.35; cursor: pointer; } .platform-check input { margin-top: 2px; } /* ---- Bundle list ---- */ .generator-bundles .card-header { display: flex; justify-content: space-between; align-items: center; gap: 8px; } .bundle-list { display: flex; flex-direction: column; gap: 6px; } .bundle-item { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; width: 100%; text-align: left; padding: 10px 12px; border: 1px solid var(--color-border, rgba(255, 255, 255, 0.08)); border-radius: 8px; background: transparent; color: inherit; cursor: pointer; } .bundle-item:hover, .bundle-item.active { border-color: var(--color-primary, #2563eb); background: var(--color-bg-elevated, rgba(37, 99, 235, 0.08)); } .bundle-item.revoked { opacity: 0.6; } .bundle-item-name { font-weight: 600; } .bundle-item-meta { font-size: 12px; opacity: 0.7; } .editor-actions { display: flex; flex-wrap: wrap; gap: 8px; } .download-link-row { display: flex; align-items: center; gap: 8px; } .download-link-row .input-prefix { opacity: 0.7; font-family: monospace; } .download-link-row .form-input { flex: 1; } .builds-header { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; } .builds-list { display: flex; flex-direction: column; gap: 8px; margin-top: 8px; } .build-row { padding: 10px 12px; border: 1px solid var(--color-border, rgba(255, 255, 255, 0.08)); border-radius: 8px; } .build-row-main { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; } .build-error { margin-top: 6px; font-size: 12px; color: var(--color-danger, #ef4444); } .validation-errors { margin-top: 12px; color: var(--color-danger, #ef4444); } .section-title { margin: 18px 0 8px; font-size: 14px; font-weight: 600; } .empty-state { text-align: center; padding: 40px 16px; opacity: 0.7; } .empty-state .material-icons { font-size: 40px; display: block; margin-bottom: 8px; } .hidden { display: none !important; }