{"id":1189,"date":"2025-07-07T19:46:35","date_gmt":"2025-07-07T19:46:35","guid":{"rendered":"https:\/\/bawabatak.com\/ai-prompt\/?p=1189"},"modified":"2025-07-07T20:02:51","modified_gmt":"2025-07-07T20:02:51","slug":"high-end-official-portrait-in-black-suit-with-luxurious-vibes","status":"publish","type":"post","link":"https:\/\/bawabatak.com\/ai-prompt\/high-end-official-portrait-in-black-suit-with-luxurious-vibes\/","title":{"rendered":"High-End Official Portrait in Black Suit with Luxurious Vibes"},"content":{"rendered":"<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1191 size-full\" src=\"https:\/\/i0.wp.com\/bawabatak.com\/ai-prompt\/wp-content\/uploads\/2025\/07\/High-End-Official-Portrait-in-Black-Suit-with-Luxurious-Vibes-bawabatak-chatgpt-prompt-img.png?resize=1019%2C679&#038;ssl=1\" alt=\"\" width=\"1019\" height=\"679\" srcset=\"https:\/\/i0.wp.com\/bawabatak.com\/ai-prompt\/wp-content\/uploads\/2025\/07\/High-End-Official-Portrait-in-Black-Suit-with-Luxurious-Vibes-bawabatak-chatgpt-prompt-img.png?w=1019&amp;ssl=1 1019w, https:\/\/i0.wp.com\/bawabatak.com\/ai-prompt\/wp-content\/uploads\/2025\/07\/High-End-Official-Portrait-in-Black-Suit-with-Luxurious-Vibes-bawabatak-chatgpt-prompt-img.png?resize=300%2C200&amp;ssl=1 300w, https:\/\/i0.wp.com\/bawabatak.com\/ai-prompt\/wp-content\/uploads\/2025\/07\/High-End-Official-Portrait-in-Black-Suit-with-Luxurious-Vibes-bawabatak-chatgpt-prompt-img.png?resize=768%2C512&amp;ssl=1 768w, https:\/\/i0.wp.com\/bawabatak.com\/ai-prompt\/wp-content\/uploads\/2025\/07\/High-End-Official-Portrait-in-Black-Suit-with-Luxurious-Vibes-bawabatak-chatgpt-prompt-img.png?resize=150%2C100&amp;ssl=1 150w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/p>\n\n\n<div class=\"ai-prompt-container\" style=\"\n    background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);\n    border-radius: 15px;\n    padding: 30px;\n    margin: 20px 0;\n    border: 1px solid #333;\n    box-shadow: 0 10px 30px rgba(0, 168, 255, 0.1);\n    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n    position: relative;\n\">\n    <div class=\"prompt-header\" style=\"\n        display: flex;\n        align-items: center;\n        margin-bottom: 20px;\n        border-bottom: 2px solid #00A8FF;\n        padding-bottom: 15px;\n    \">\n        <div class=\"prompt-icon\" style=\"\n            background: linear-gradient(45deg, #00A8FF, #0080CC);\n            width: 50px;\n            height: 50px;\n            border-radius: 12px;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            margin-right: 15px;\n            box-shadow: 0 5px 15px rgba(0, 168, 255, 0.3);\n        \">\n            <span style=\"color: white; font-size: 24px; font-weight: bold;\">\u2728<\/span>\n        <\/div>\n        <div>\n            <h3 style=\"\n                color: #fff;\n                margin: 0;\n                font-size: 24px;\n                font-weight: 600;\n            \">Official Portrait<\/h3>\n            <p style=\"\n                color: #00A8FF;\n                margin: 5px 0 0 0;\n                font-size: 14px;\n                font-weight: 500;\n            \">AI Image Generation Prompt<\/p>\n        <\/div>\n    <\/div>\n\n    <div class=\"instructions-section\" style=\"\n        background: rgba(0, 168, 255, 0.05);\n        border-radius: 10px;\n        padding: 20px;\n        margin-bottom: 25px;\n        border-left: 4px solid #00A8FF;\n    \">\n        <h4 style=\"color: #00A8FF; margin: 0 0 15px 0; font-size: 18px; font-weight: 600;\">\ud83d\udccb How to Use:<\/h4>\n        <ol style=\"color: #e0e0e0; line-height: 1.6; margin: 0; padding-left: 20px;\">\n            <li style=\"margin-bottom: 8px;\">Open ChatGPT<\/li>\n            <li style=\"margin-bottom: 8px;\">Upload your image <\/li>\n            <li style=\"margin-bottom: 8px;\">Copy and paste the prompt below<\/li>\n        <\/ol>\n    <\/div>\n\n    <div class=\"prompt-content\" style=\"\n        background: rgba(0, 168, 255, 0.05);\n        border-left: 4px solid #00A8FF;\n        padding: 20px;\n        border-radius: 8px;\n        margin-bottom: 25px;\n    \">\n        <div class=\"prompt-text\" style=\"\n            color: #e0e0e0;\n            line-height: 1.6;\n            font-size: 16px;\n            white-space: pre-wrap;\n            word-wrap: break-word;\n        \" id=\"promptText\">Create an <span class=\"editable-word\" data-key=\"detail_style\">official portrait picture<\/span> of <span class=\"editable-word\" data-key=\"subject\">me<\/span> in <span class=\"editable-word\" data-key=\"clothing\">a black suit<\/span> with <span class=\"editable-word\" data-key=\"facial_features\">sharp features and makeup all in touch<\/span>, <span class=\"editable-word\" data-key=\"render_quality_1\">360 HD<\/span>, same hair in (photo reference) and it&#8217;s giving <span class=\"editable-word\" data-key=\"vibe\">luxurious vibes<\/span> with <span class=\"editable-word\" data-key=\"render_quality_2\">high detailed<\/span> <span class=\"editable-word\" data-key=\"resolution\">4k resolution<\/span>.<\/div>\n    <\/div>\n\n    <div class=\"prompt-actions\" style=\"\n        display: flex;\n        gap: 15px;\n        align-items: center;\n        flex-wrap: wrap;\n        position: relative;\n    \">\n        <button onclick=\"copyPrompt()\" id=\"copyButton\" style=\"\n            background: linear-gradient(45deg, #00A8FF, #0080CC);\n            color: white;\n            border: none;\n            padding: 12px 25px;\n            border-radius: 25px;\n            font-size: 16px;\n            font-weight: 600;\n            cursor: pointer;\n            transition: all 0.3s ease;\n            box-shadow: 0 5px 15px rgba(0, 168, 255, 0.3);\n            display: flex;\n            align-items: center;\n            gap: 8px;\n            position: relative;\n            overflow: hidden;\n        \" onmouseover=\"this.style.transform='translateY(-2px)'; this.style.boxShadow='0 8px 25px rgba(0, 168, 255, 0.4)'\"\n            onmouseout=\"this.style.transform='translateY(0)'; this.style.boxShadow='0 5px 15px rgba(0, 168, 255, 0.3)'\">\n            <span id=\"copyIcon\">\ud83d\udccb<\/span>\n            <span id=\"copyText\">Copy Prompt<\/span>\n        <\/button>\n\n        <a href=\"https:\/\/chat.openai.com\/\" target=\"_blank\" style=\"\n            background: linear-gradient(45deg, #10A37F, #0D8A6B);\n            color: white;\n            text-decoration: none;\n            padding: 12px 25px;\n            border-radius: 25px;\n            font-size: 16px;\n            font-weight: 600;\n            cursor: pointer;\n            transition: all 0.3s ease;\n            box-shadow: 0 5px 15px rgba(16, 163, 127, 0.3);\n            display: inline-flex;\n            align-items: center;\n            gap: 8px;\n        \" onmouseover=\"this.style.transform=&#039;translateY(-2px)&#039;; this.style.boxShadow=&#039;0 8px 25px rgba(16, 163, 127, 0.4)&#039;\" onmouseout=\"this.style.transform=&#039;translateY(0)&#039;; this.style.boxShadow=&#039;0 5px 15px rgba(16, 163, 127, 0.3)&#039;\" rel=\"noopener\">\n            <span>\ud83d\ude80<\/span>\n            Try in ChatGPT\n        <\/a>\n\n        <button onclick=\"toggleCustomizer()\" id=\"customizeButton\" style=\"\n            background: rgba(255, 193, 7, 0.1);\n            color: #FFC107;\n            border: 2px solid #FFC107;\n            padding: 10px 20px;\n            border-radius: 25px;\n            font-size: 16px;\n            font-weight: 600;\n            cursor: pointer;\n            transition: all 0.3s ease;\n            display: flex;\n            align-items: center;\n            gap: 8px;\n        \" onmouseover=\"this.style.background='rgba(255, 193, 7, 0.2)'\"\n            onmouseout=\"this.style.background='rgba(255, 193, 7, 0.1)'\">\n            <span>\u2699\ufe0f<\/span>\n            <span id=\"customizeText\">Customize<\/span>\n        <\/button>\n    <\/div>\n\n    <div id=\"customizerPanel\" style=\"\n        display: none;\n        background: rgba(0, 168, 255, 0.05);\n        border: 1px solid #00A8FF;\n        border-radius: 12px;\n        padding: 25px;\n        margin-top: 25px;\n        backdrop-filter: blur(10px);\n    \">\n        <div style=\"display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;\">\n            <h4 style=\"color: #00A8FF; margin: 0; font-size: 18px; font-weight: 600; display: flex; align-items: center; gap: 10px;\">\n                <span>\ud83c\udfaf<\/span> Customize Your Prompt\n            <\/h4>\n            <button onclick=\"resetToDefaults()\" id=\"resetButton\" style=\"\n                background: rgba(220, 53, 69, 0.1);\n                color: #dc3545;\n                border: 2px solid #dc3545;\n                padding: 8px 16px;\n                border-radius: 20px;\n                font-size: 14px;\n                font-weight: 600;\n                cursor: pointer;\n                transition: all 0.3s ease;\n                display: flex;\n                align-items: center;\n                gap: 6px;\n            \" onmouseover=\"this.style.background='rgba(220, 53, 69, 0.2)'\"\n                onmouseout=\"this.style.background='rgba(220, 53, 69, 0.1)'\">\n                <span>\ud83d\udd04<\/span>\n                Reset\n            <\/button>\n        <\/div>\n\n        <div class=\"customizer-grid\" style=\"\n            display: grid;\n            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n            gap: 20px;\n            margin-bottom: 25px;\n        \">\n            <div class=\"customizer-item\">\n                <label style=\"color: #00A8FF; font-weight: 600; margin-bottom: 8px; display: block;\">\ud83c\udfa8 Detail &#038; Style:<\/label>\n                <div style=\"display: flex; gap: 10px; margin-bottom: 10px; flex-wrap: wrap;\">\n                    <button class=\"preset-btn\" onclick=\"applyPreset('detail_style', 'official portrait picture')\" data-active=\"true\">Official Portrait Picture<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('detail_style', 'candid photograph')\">Candid Photograph<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('detail_style', 'artistic rendering')\">Artistic Rendering<\/button>\n                <\/div>\n                <input type=\"text\" id=\"detail_style-custom\" placeholder=\"Or enter custom detail &#038; style...\" style=\"\n                    width: 100%;\n                    background: rgba(255, 255, 255, 0.1);\n                    border: 1px solid #333;\n                    border-radius: 8px;\n                    padding: 10px;\n                    color: #e0e0e0;\n                    font-size: 14px;\n                \">\n            <\/div>\n\n            <div class=\"customizer-item\">\n                <label style=\"color: #00A8FF; font-weight: 600; margin-bottom: 8px; display: block;\">\ud83d\udc64 Subject:<\/label>\n                <div style=\"display: flex; gap: 10px; margin-bottom: 10px; flex-wrap: wrap;\">\n                    <button class=\"preset-btn\" onclick=\"applyPreset('subject', 'me')\" data-active=\"true\">Me<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('subject', 'a man')\">A Man<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('subject', 'a woman')\">A Woman<\/button>\n                <\/div>\n                <input type=\"text\" id=\"subject-custom\" placeholder=\"Or enter custom subject...\" style=\"\n                    width: 100%;\n                    background: rgba(255, 255, 255, 0.1);\n                    border: 1px solid #333;\n                    border-radius: 8px;\n                    padding: 10px;\n                    color: #e0e0e0;\n                    font-size: 14px;\n                \">\n            <\/div>\n\n            <div class=\"customizer-item\">\n                <label style=\"color: #00A8FF; font-weight: 600; margin-bottom: 8px; display: block;\">\ud83e\udde5 Clothing:<\/label>\n                <div style=\"display: flex; gap: 10px; margin-bottom: 10px; flex-wrap: wrap;\">\n                    <button class=\"preset-btn\" onclick=\"applyPreset('clothing', 'a black suit')\" data-active=\"true\">A Black Suit<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('clothing', 'a formal dress')\">A Formal Dress<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('clothing', 'a tuxedo')\">A Tuxedo<\/button>\n                <\/div>\n                <input type=\"text\" id=\"clothing-custom\" placeholder=\"Or enter custom clothing...\" style=\"\n                    width: 100%;\n                    background: rgba(255, 255, 255, 0.1);\n                    border: 1px solid #333;\n                    border-radius: 8px;\n                    padding: 10px;\n                    color: #e0e0e0;\n                    font-size: 14px;\n                \">\n            <\/div>\n\n            <div class=\"customizer-item\">\n                <label style=\"color: #00A8FF; font-weight: 600; margin-bottom: 8px; display: block;\">\ud83d\udc41\ufe0f Facial Features &#038; Makeup:<\/label>\n                <div style=\"display: flex; gap: 10px; margin-bottom: 10px; flex-wrap: wrap;\">\n                    <button class=\"preset-btn\" onclick=\"applyPreset('facial_features', 'sharp features and makeup all in touch')\" data-active=\"true\">Sharp Features &#038; Makeup All in Touch<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('facial_features', 'soft features and subtle makeup')\">Soft Features &#038; Subtle Makeup<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('facial_features', 'defined jawline and natural makeup')\">Defined Jawline &#038; Natural Makeup<\/button>\n                <\/div>\n                <input type=\"text\" id=\"facial_features-custom\" placeholder=\"Or enter custom facial features...\" style=\"\n                    width: 100%;\n                    background: rgba(255, 255, 255, 0.1);\n                    border: 1px solid #333;\n                    border-radius: 8px;\n                    padding: 10px;\n                    color: #e0e0e0;\n                    font-size: 14px;\n                \">\n            <\/div>\n\n            <div class=\"customizer-item\">\n                <label style=\"color: #00A8FF; font-weight: 600; margin-bottom: 8px; display: block;\">\u2728 Vibe:<\/label>\n                <div style=\"display: flex; gap: 10px; margin-bottom: 10px; flex-wrap: wrap;\">\n                    <button class=\"preset-btn\" onclick=\"applyPreset('vibe', 'luxurious vibes')\" data-active=\"true\">Luxurious Vibes<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('vibe', 'professional vibes')\">Professional Vibes<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('vibe', 'elegant vibes')\">Elegant Vibes<\/button>\n                <\/div>\n                <input type=\"text\" id=\"vibe-custom\" placeholder=\"Or enter custom vibe...\" style=\"\n                    width: 100%;\n                    background: rgba(255, 255, 255, 0.1);\n                    border: 1px solid #333;\n                    border-radius: 8px;\n                    padding: 10px;\n                    color: #e0e0e0;\n                    font-size: 14px;\n                \">\n            <\/div>\n\n            <div class=\"customizer-item\">\n                <label style=\"color: #00A8FF; font-weight: 600; margin-bottom: 8px; display: block;\">\ud83d\udcf7 Render Quality (360 HD):<\/label>\n                <div style=\"display: flex; gap: 10px; margin-bottom: 10px; flex-wrap: wrap;\">\n                    <button class=\"preset-btn\" onclick=\"applyPreset('render_quality_1', '360 HD')\" data-active=\"true\">360 HD<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('render_quality_1', 'immersive quality')\">Immersive Quality<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('render_quality_1', 'panoramic view')\">Panoramic View<\/button>\n                <\/div>\n                <input type=\"text\" id=\"render_quality_1-custom\" placeholder=\"Or enter custom quality...\" style=\"\n                    width: 100%;\n                    background: rgba(255, 255, 255, 0.1);\n                    border: 1px solid #333;\n                    border-radius: 8px;\n                    padding: 10px;\n                    color: #e0e0e0;\n                    font-size: 14px;\n                \">\n            <\/div>\n\n            <div class=\"customizer-item\">\n                <label style=\"color: #00A8FF; font-weight: 600; margin-bottom: 8px; display: block;\">\ud83d\udd0d Render Quality (High Detail):<\/label>\n                <div style=\"display: flex; gap: 10px; margin-bottom: 10px; flex-wrap: wrap;\">\n                    <button class=\"preset-btn\" onclick=\"applyPreset('render_quality_2', 'high detailed')\" data-active=\"true\">High Detailed<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('render_quality_2', 'ultra-realistic')\">Ultra-realistic<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('render_quality_2', 'photorealistic')\">Photorealistic<\/button>\n                <\/div>\n                <input type=\"text\" id=\"render_quality_2-custom\" placeholder=\"Or enter custom detail...\" style=\"\n                    width: 100%;\n                    background: rgba(255, 255, 255, 0.1);\n                    border: 1px solid #333;\n                    border-radius: 8px;\n                    padding: 10px;\n                    color: #e0e0e0;\n                    font-size: 14px;\n                \">\n            <\/div>\n            \n            <div class=\"customizer-item\">\n                <label style=\"color: #00A8FF; font-weight: 600; margin-bottom: 8px; display: block;\">\ud83d\udda5\ufe0f Resolution:<\/label>\n                <div style=\"display: flex; gap: 10px; margin-bottom: 10px; flex-wrap: wrap;\">\n                    <button class=\"preset-btn\" onclick=\"applyPreset('resolution', '4k resolution')\" data-active=\"true\">4K Resolution<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('resolution', '8K resolution')\">8K Resolution<\/button>\n                    <button class=\"preset-btn\" onclick=\"applyPreset('resolution', 'Full HD resolution')\">Full HD Resolution<\/button>\n                <\/div>\n                <input type=\"text\" id=\"resolution-custom\" placeholder=\"Or enter custom resolution...\" style=\"\n                    width: 100%;\n                    background: rgba(255, 255, 255, 0.1);\n                    border: 1px solid #333;\n                    border-radius: 8px;\n                    padding: 10px;\n                    color: #e0e0e0;\n                    font-size: 14px;\n                \">\n            <\/div>\n\n        <\/div>\n\n        <div style=\"display: flex; gap: 15px; justify-content: center; flex-wrap: wrap;\">\n            <button onclick=\"applyCustomChanges()\" id=\"applyButton\" style=\"\n                background: linear-gradient(45deg, #FFC107, #FF9800);\n                color: #1a1a1a;\n                border: none;\n                padding: 12px 30px;\n                border-radius: 25px;\n                font-size: 16px;\n                font-weight: 700;\n                cursor: pointer;\n                transition: all 0.3s ease;\n                box-shadow: 0 5px 15px rgba(255, 193, 7, 0.3);\n                display: inline-flex;\n                align-items: center;\n                gap: 8px;\n            \" onmouseover=\"this.style.transform='translateY(-2px)'; this.style.boxShadow='0 8px 25px rgba(255, 193, 7, 0.4)'\"\n                onmouseout=\"this.style.transform='translateY(0)'; this.style.boxShadow='0 5px 15px rgba(255, 193, 7, 0.3)'\">\n                <span>\ud83d\ude80<\/span>\n                Apply Changes\n            <\/button>\n        <\/div>\n    <\/div>\n\n    <div class=\"tips-section\" style=\"\n        background: rgba(255, 193, 7, 0.1);\n        border-left: 4px solid #FFC107;\n        border-radius: 8px;\n        padding: 20px;\n        margin-top: 25px;\n    \">\n        <h4 style=\"color: #FFC107; margin: 0 0 15px 0; font-size: 16px; font-weight: 600;\">\ud83d\udca1 Pro Tips:<\/h4>\n        <ul style=\"color: #e0e0e0; line-height: 1.6; margin: 0; padding-left: 20px;\">\n            <li style=\"margin-bottom: 8px;\">The <span style=\"color: #00A8FF; font-weight: 600;\">highlighted words<\/span> in the prompt above can be customized<\/li>\n            <li style=\"margin-bottom: 8px;\">Use the <span style=\"color: #FFC107; font-weight: 600;\">Customize button<\/span> to modify different elements<\/li>\n            <li style=\"margin-bottom: 8px;\">Click <span style=\"color: #dc3545; font-weight: 600;\">Reset<\/span> to restore original prompt<\/li>\n        <\/ul>\n    <\/div>\n<\/div>\n\n<style>\n@keyframes bounceScale {\n    0% { transform: scale(1); }\n    25% { transform: scale(0.95); }\n    50% { transform: scale(1.1); }\n    75% { transform: scale(0.98); }\n    100% { transform: scale(1); }\n}\n\n@keyframes slideDown {\n    0% { opacity: 0; transform: translateY(-20px); max-height: 0; }\n    100% { opacity: 1; transform: translateY(0); max-height: 800px; }\n}\n\n@keyframes slideUp {\n    0% { opacity: 1; transform: translateY(0); max-height: 800px; }\n    100% { opacity: 0; transform: translateY(-20px); max-height: 0; }\n}\n\n@keyframes resetPulse {\n    0%, 100% { transform: scale(1); }\n    50% { transform: scale(1.05); }\n}\n\n\/* Base style for editable words - transparent by default, no special hover *\/\n.editable-word {\n    background: transparent;\n    color: inherit; \/* Inherit color from parent (.prompt-text) so it's readable *\/\n    padding: 2px 6px;\n    border-radius: 4px;\n    font-weight: 600; \/* Keep bold for distinction *\/\n    cursor: pointer;\n    transition: none; \/* Ensure no transitions on hover or initial state *\/\n    display: inline-block;\n}\n\n\/* Ensure no changes on hover *\/\n.editable-word:hover {\n    background: transparent;\n    color: inherit;\n    transform: none; \/* No scale or other transforms *\/\n}\n\n\/* Class for dynamically applied highlight when a word is modified *\/\n.modified-highlight {\n    background: rgba(0, 168, 255, 0.2); \/* Subtle transparent blue *\/\n    color: white; \/* Make text white for better contrast with highlight *\/\n}\n\n\n.preset-btn {\n    background: rgba(255, 255, 255, 0.1);\n    color: #e0e0e0;\n    border: 1px solid #333;\n    padding: 6px 12px;\n    border-radius: 15px;\n    font-size: 12px;\n    font-weight: 500;\n    cursor: pointer;\n    transition: all 0.3s ease;\n}\n\n.preset-btn:hover {\n    background: rgba(0, 168, 255, 0.2);\n    border-color: #00A8FF;\n    color: #00A8FF;\n}\n\n.preset-btn[data-active=\"true\"] {\n    background: linear-gradient(45deg, #00A8FF, #0080CC);\n    color: white;\n    border-color: #00A8FF;\n}\n\n.customizer-show {\n    display: block !important;\n    animation: slideDown 0.5s ease-out !important;\n}\n\n.customizer-hide {\n    animation: slideUp 0.3s ease-in !important;\n}\n\n.ai-prompt-container button:active {\n    transform: scale(0.98) !important;\n}\n\n.copy-button-success {\n    background: linear-gradient(45deg, #4CAF50, #45a049) !important;\n    animation: bounceScale 0.6s ease-in-out !important;\n    box-shadow: 0 8px 25px rgba(76, 175, 80, 0.4) !important;\n}\n\n.reset-button-success {\n    background: linear-gradient(45deg, #4CAF50, #45a049) !important;\n    color: white !important;\n    border-color: #4CAF50 !important;\n    animation: resetPulse 0.6s ease-in-out !important;\n}\n\n@media (max-width: 768px) {\n    .ai-prompt-container {\n        padding: 20px !important;\n        margin: 15px 0 !important;\n    }\n\n    .prompt-actions {\n        flex-direction: column !important;\n        align-items: stretch !important;\n    }\n\n    .prompt-actions button,\n    .prompt-actions a {\n        width: 100% !important;\n        justify-content: center !important;\n    }\n\n    .customizer-grid {\n        grid-template-columns: 1fr !important;\n    }\n\n    .preset-btn {\n        font-size: 11px !important;\n        padding: 5px 10px !important;\n    }\n\n    #customizerPanel > div:first-child {\n        flex-direction: column !important;\n        align-items: flex-start !important;\n        gap: 15px !important;\n    }\n\n    #resetButton {\n        align-self: flex-end !important;\n    }\n}\n<\/style>\n\n<script>\n\/\/ Default values\nconst defaultValues = {\n    detail_style: 'official portrait picture',\n    subject: 'me',\n    clothing: 'a black suit',\n    facial_features: 'sharp features and makeup all in touch',\n    render_quality_1: '360 HD', \/\/ For \"360 HD\"\n    vibe: 'luxurious vibes',\n    render_quality_2: 'high detailed', \/\/ For \"high detailed\"\n    resolution: '4k resolution'\n};\n\n\/\/ Current values (will be modified by user actions)\nlet currentValues = {...defaultValues};\n\nfunction copyPrompt() {\n    const promptText = document.getElementById('promptText').innerText;\n    const copyButton = document.getElementById('copyButton');\n    const copyIcon = document.getElementById('copyIcon');\n    const copyText = document.getElementById('copyText');\n\n    copyButton.classList.add('copy-button-success');\n    copyIcon.textContent = '\u2705';\n    copyText.textContent = 'Copied!';\n\n    if (navigator.clipboard && window.isSecureContext) {\n        navigator.clipboard.writeText(promptText).then(function() {\n            \/\/ Success\n        }).catch(function(err) {\n            fallbackCopyTextToClipboard(promptText);\n        });\n    } else {\n        fallbackCopyTextToClipboard(promptText);\n    }\n\n    setTimeout(() => {\n        copyButton.classList.remove('copy-button-success');\n        copyIcon.textContent = '\ud83d\udccb';\n        copyText.textContent = 'Copy Prompt';\n    }, 2000);\n}\n\nfunction fallbackCopyTextToClipboard(text) {\n    const textArea = document.createElement(\"textarea\");\n    textArea.value = text;\n    textArea.style.top = \"0\";\n    textArea.style.left = \"0\";\n    textArea.style.position = \"fixed\";\n\n    document.body.appendChild(textArea);\n    textArea.focus();\n    textArea.select();\n\n    try {\n        document.execCommand('copy');\n    } catch (err) {\n        console.error('Fallback: Oops, unable to copy', err);\n    }\n\n    document.body.removeChild(textArea);\n}\n\nfunction toggleCustomizer() {\n    const panel = document.getElementById('customizerPanel');\n    const button = document.getElementById('customizeButton');\n    const buttonText = document.getElementById('customizeText');\n\n    if (panel.style.display === 'none' || panel.style.display === '') {\n        panel.classList.add('customizer-show');\n        panel.style.display = 'block';\n        buttonText.textContent = 'Close';\n        button.style.background = 'rgba(255, 193, 7, 0.2)';\n    } else {\n        panel.classList.remove('customizer-show');\n        panel.classList.add('customizer-hide');\n        buttonText.textContent = 'Customize';\n        button.style.background = 'rgba(255, 193, 7, 0.1)';\n\n        setTimeout(() => {\n            panel.style.display = 'none';\n            panel.classList.remove('customizer-hide');\n        }, 300);\n    }\n}\n\nfunction findButtonsForCustomizer(key) {\n    const customInput = document.getElementById(`${key}-custom`);\n    if (!customInput) return [];\n\n    let currentElement = customInput.parentElement;\n    const buttons = currentElement.querySelectorAll('.preset-btn');\n    return Array.from(buttons);\n}\n\nfunction applyPreset(key, value) {\n    currentValues[key] = value;\n\n    \/\/ Update active button\n    const buttons = findButtonsForCustomizer(key);\n    buttons.forEach(btn => {\n        btn.removeAttribute('data-active');\n        if (btn.onclick.toString().includes(`'${value}'`)) {\n            btn.setAttribute('data-active', 'true');\n        }\n    });\n\n    \/\/ Clear custom input\n    document.getElementById(`${key}-custom`).value = '';\n\n    updatePrompt(); \/\/ Re-render prompt to apply highlight if value is different from default\n}\n\nfunction applyCustomChanges() {\n    \/\/ Get custom values from inputs\n    ['detail_style', 'subject', 'clothing', 'facial_features', 'render_quality_1', 'vibe', 'render_quality_2', 'resolution'].forEach(key => {\n        const customInput = document.getElementById(`${key}-custom`);\n        if (customInput.value.trim()) {\n            currentValues[key] = customInput.value.trim();\n\n            \/\/ Remove active state from preset buttons as custom input overrides\n            const buttons = findButtonsForCustomizer(key);\n            buttons.forEach(btn => btn.removeAttribute('data-active'));\n        }\n    });\n\n    updatePrompt(); \/\/ Re-render prompt to apply highlights based on new custom values\n\n    \/\/ Show success feedback\n    const applyButton = document.getElementById('applyButton');\n    const originalText = applyButton.innerHTML;\n    applyButton.innerHTML = '<span>\u2705<\/span> Applied!';\n    applyButton.style.background = 'linear-gradient(45deg, #4CAF50, #45a049)';\n\n    setTimeout(() => {\n        applyButton.innerHTML = originalText;\n        applyButton.style.background = 'linear-gradient(45deg, #FFC107, #FF9800)';\n    }, 2000);\n}\n\nfunction resetToDefaults() {\n    \/\/ Reset values to defaults\n    currentValues = JSON.parse(JSON.stringify(defaultValues)); \/\/ Deep copy\n\n    \/\/ Clear all custom inputs\n    ['detail_style', 'subject', 'clothing', 'facial_features', 'render_quality_1', 'vibe', 'render_quality_2', 'resolution'].forEach(key => {\n        const input = document.getElementById(`${key}-custom`);\n        if (input) input.value = '';\n    });\n\n    \/\/ Reset ALL preset buttons first\n    document.querySelectorAll('.preset-btn').forEach(btn => {\n        btn.removeAttribute('data-active');\n    });\n\n    \/\/ Activate default buttons for each category based on defaultValues\n    const defaultButtonMappings = [\n        { key: 'detail_style', value: 'official portrait picture', buttonText: 'Official Portrait Picture' },\n        { key: 'subject', value: 'me', buttonText: 'Me' },\n        { key: 'clothing', value: 'a black suit', buttonText: 'A Black Suit' },\n        { key: 'facial_features', value: 'sharp features and makeup all in touch', buttonText: 'Sharp Features & Makeup All in Touch' },\n        { key: 'render_quality_1', value: '360 HD', buttonText: '360 HD' },\n        { key: 'vibe', value: 'luxurious vibes', buttonText: 'Luxurious Vibes' },\n        { key: 'render_quality_2', value: 'high detailed', buttonText: 'High Detailed' },\n        { key: 'resolution', value: '4k resolution', buttonText: '4K Resolution' }\n    ];\n\n    defaultButtonMappings.forEach(({ key, value, buttonText }) => {\n        const buttons = findButtonsForCustomizer(key);\n        buttons.forEach(btn => {\n            if (btn.textContent.trim() === buttonText) {\n                btn.setAttribute('data-active', 'true');\n            }\n        });\n    });\n\n    \/\/ Force update the prompt to remove all highlights\n    updatePrompt();\n\n    \/\/ Show success feedback on reset button\n    const resetButton = document.getElementById('resetButton');\n    const originalText = resetButton.innerHTML;\n    resetButton.classList.add('reset-button-success');\n    resetButton.innerHTML = '<span>\u2705<\/span> Reset!';\n\n    setTimeout(() => {\n        resetButton.classList.remove('reset-button-success');\n        resetButton.innerHTML = originalText;\n    }, 2000);\n}\n\n\/\/ Function to dynamically update the prompt string with conditional highlighting\nfunction updatePrompt() {\n    const promptElement = document.getElementById('promptText');\n\n    \/\/ Helper to generate a span with conditional highlighting\n    const createEditableSpan = (key) => {\n        const isModified = currentValues[key] !== defaultValues[key];\n        const highlightClass = isModified ? ' modified-highlight' : '';\n        return `<span class=\"editable-word${highlightClass}\" data-key=\"${key}\">${currentValues[key]}<\/span>`;\n    };\n\n    \/\/ Construct the prompt string based on current values and original phrasing\n    const template = `Create an ${createEditableSpan('detail_style')} of ${createEditableSpan('subject')} in ${createEditableSpan('clothing')} with ${createEditableSpan('facial_features')}, ${createEditableSpan('render_quality_1')}, same hair in (photo reference) and it's giving ${createEditableSpan('vibe')} with ${createEditableSpan('render_quality_2')} ${createEditableSpan('resolution')}.`;\n\n    promptElement.innerHTML = template;\n}\n\n\/\/ Initialize the prompt and customizer buttons on load\ndocument.addEventListener('DOMContentLoaded', () => {\n    updatePrompt(); \/\/ Render the initial prompt\n    \/\/ Set initial active state for default preset buttons\n    ['detail_style', 'subject', 'clothing', 'facial_features', 'render_quality_1', 'vibe', 'render_quality_2', 'resolution'].forEach(key => {\n        const buttons = findButtonsForCustomizer(key);\n        buttons.forEach(btn => {\n            if (btn.onclick.toString().includes(`'${defaultValues[key]}'`)) {\n                btn.setAttribute('data-active', 'true');\n            }\n        });\n    });\n});\n<\/script>\n\n\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1192 size-full\" src=\"https:\/\/i0.wp.com\/bawabatak.com\/ai-prompt\/wp-content\/uploads\/2025\/07\/High-End-Official-Portrait-in-Black-Suit-with-Luxurious-Vibes-bawabatak-chatgpt-prompt.jpg?resize=1024%2C1536&#038;ssl=1\" alt=\"\" width=\"1024\" height=\"1536\" srcset=\"https:\/\/i0.wp.com\/bawabatak.com\/ai-prompt\/wp-content\/uploads\/2025\/07\/High-End-Official-Portrait-in-Black-Suit-with-Luxurious-Vibes-bawabatak-chatgpt-prompt.jpg?w=1024&amp;ssl=1 1024w, https:\/\/i0.wp.com\/bawabatak.com\/ai-prompt\/wp-content\/uploads\/2025\/07\/High-End-Official-Portrait-in-Black-Suit-with-Luxurious-Vibes-bawabatak-chatgpt-prompt.jpg?resize=200%2C300&amp;ssl=1 200w, https:\/\/i0.wp.com\/bawabatak.com\/ai-prompt\/wp-content\/uploads\/2025\/07\/High-End-Official-Portrait-in-Black-Suit-with-Luxurious-Vibes-bawabatak-chatgpt-prompt.jpg?resize=683%2C1024&amp;ssl=1 683w, https:\/\/i0.wp.com\/bawabatak.com\/ai-prompt\/wp-content\/uploads\/2025\/07\/High-End-Official-Portrait-in-Black-Suit-with-Luxurious-Vibes-bawabatak-chatgpt-prompt.jpg?resize=768%2C1152&amp;ssl=1 768w, https:\/\/i0.wp.com\/bawabatak.com\/ai-prompt\/wp-content\/uploads\/2025\/07\/High-End-Official-Portrait-in-Black-Suit-with-Luxurious-Vibes-bawabatak-chatgpt-prompt.jpg?resize=150%2C225&amp;ssl=1 150w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/p>","protected":false},"excerpt":{"rendered":"<p>\u2728 Official Portrait AI Image Generation Prompt \ud83d\udccb How to Use: Open ChatGPT Upload your image Copy and paste the prompt below Create an official portrait picture of me in a black suit with sharp features and makeup all in touch, 360 HD, same hair in (photo reference) and it&#8217;s giving luxurious vibes with high &hellip;<\/p>\n","protected":false},"author":1,"featured_media":1190,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[35,38],"tags":[40,46,51,47,54,53,43,44,50,48,42,45,57,52,58,41,56,49],"class_list":["post-1189","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai-image","category-portrait","tag-4k-ai-image","tag-ai-fashion-photo","tag-ai-portrait","tag-ai-profile-picture","tag-black-suit-portrait","tag-cinematic-lighting","tag-digital-photo-enhancement","tag-editorial-photography","tag-executive-headshot","tag-fashion-editorial","tag-glamorous-portrait","tag-hd-face-detail","tag-high-end-branding","tag-luxury-style","tag-makeup-retouch-ai","tag-professional-avatar","tag-studio-lighting","tag-ultra-realistic-face"],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/bawabatak.com\/ai-prompt\/wp-content\/uploads\/2025\/07\/High-End-Official-Portrait-in-Black-Suit-with-Luxurious-Vibes-bawabatak-chatgpt-prompt.png?fit=1080%2C1350&ssl=1","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bawabatak.com\/ai-prompt\/wp-json\/wp\/v2\/posts\/1189","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bawabatak.com\/ai-prompt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bawabatak.com\/ai-prompt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bawabatak.com\/ai-prompt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bawabatak.com\/ai-prompt\/wp-json\/wp\/v2\/comments?post=1189"}],"version-history":[{"count":4,"href":"https:\/\/bawabatak.com\/ai-prompt\/wp-json\/wp\/v2\/posts\/1189\/revisions"}],"predecessor-version":[{"id":1198,"href":"https:\/\/bawabatak.com\/ai-prompt\/wp-json\/wp\/v2\/posts\/1189\/revisions\/1198"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bawabatak.com\/ai-prompt\/wp-json\/wp\/v2\/media\/1190"}],"wp:attachment":[{"href":"https:\/\/bawabatak.com\/ai-prompt\/wp-json\/wp\/v2\/media?parent=1189"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bawabatak.com\/ai-prompt\/wp-json\/wp\/v2\/categories?post=1189"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bawabatak.com\/ai-prompt\/wp-json\/wp\/v2\/tags?post=1189"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}