.cat-row{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1rem}.cat-chip{font:inherit;font-size:.9rem;padding:.45rem .85rem;border-radius:999px;border:2px solid var(--border);background:var(--surface);color:var(--text-2);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.cat-chip:hover{border-color:var(--accent);color:var(--text)}.cat-chip.is-active{background:var(--btn-bg);border-color:var(--btn-bg);color:var(--accent-ink)}.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.6rem;margin-bottom:1.1rem}.theme-card{font:inherit;text-align:left;display:flex;flex-direction:column;gap:.25rem;padding:.7rem .8rem;min-height:104px;border-radius:var(--radius-sm);border:2px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;transition:border-color .15s}.theme-card:hover{border-color:var(--accent)}.theme-card.is-active{border-color:var(--accent);background:var(--surface-2)}.tcard-t{font-weight:600;font-size:.95rem;line-height:1.25;min-height:2.5em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tcard-d{font-size:.82rem;color:var(--muted);line-height:1.35;min-height:2.7em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cat-chip.is-skel,.theme-card.is-skel{pointer-events:none;opacity:.45}.cat-chip.is-skel{display:inline-block}.cat-chip.is-skel::before{content:"\200B"}.tcard-new{display:inline-block;vertical-align:middle;font-size:.68rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;padding:.1rem .35rem;border-radius:4px;background:var(--btn-bg);color:var(--accent-ink)}.opt-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.7rem;margin-bottom:1.1rem}.opt-row .field{margin:0}#prompt-out{min-height:170px;font-size:1rem;line-height:1.55}#legal-note{margin:0 0 1rem}.custom-style{margin-bottom:1.2rem;border:2px solid var(--border);border-radius:var(--radius-sm);padding:0 .85rem;background:var(--surface)}.custom-style summary{cursor:pointer;font-weight:600;padding:.7rem 0}.custom-style textarea{min-height:80px}.custom-style .row{padding-bottom:.85rem}