:root{--color-orange: #ff7201;--color-blue: #17a2b8;--color-green: #28a745;--color-red: #dc3545;--color-gray: #6c757d;--color-dark-red-for-mix: #a02c00;--color-primary: var(--color-orange);--color-secondary: color-mix( in srgb, var(--color-primary) 75%, var(--color-dark-red-for-mix) );--color-accent: var(--color-blue);--color-accent-dark: color-mix(in oklch, var(--color-accent) 80%, black);--color-info: var(--color-blue);--color-success: var(--color-green);--color-success-dark: color-mix(in oklch, var(--color-success) 80%, black);--color-danger: var(--color-red);--color-danger-dark: color-mix(in oklch, var(--color-danger) 80%, black);--color-text-muted: var(--color-gray);--color-text-dark: #343a40;--color-text-body: #333;--color-text-light: #555;--color-light: #f8f9fa;--color-lighter: #fff9f0;--color-background: #ffffff;--color-border: #eee;--color-border-light: #ffeccc;--color-border-input: #ced4da;--color-reminder-text: #856404;--font-family-base: "Open Sans", sans-serif;--font-family-headings: "Urbanist", sans-serif;--font-size-base: 1rem;--font-size-small: .9em;--spacing-small: 8px;--spacing-medium: 10px;--spacing-large: 15px;--spacing-x-large: 20px;--spacing-huge: 30px}body{font-family:var(--font-family-base);line-height:1.6;margin:0;padding:var(--spacing-x-large);background-color:var(--color-light);color:var(--color-text-body)}.container{max-width:750px;margin:var(--spacing-x-large) auto;background:#fff;padding:var(--spacing-huge) calc(var(--spacing-x-large) * 2);border-radius:12px;box-shadow:0 4px 15px #0000001a;border-top:5px solid var(--color-primary)}.container:has(.graphics-generator-container){max-width:1600px}h1,h2,h3{color:var(--color-text-dark);margin-bottom:.8em;font-family:var(--font-family-headings);font-weight:400}h1{text-align:center;margin-bottom:1.5em;color:var(--color-primary);font-weight:700}h1 i{margin-right:var(--spacing-medium)}h2 i,h3 i{margin-right:var(--spacing-small);color:var(--color-primary)}.initial-prompt{text-align:center;margin:calc(var(--spacing-x-large) * 2) 0 calc(var(--spacing-x-large) + 10px) 0;padding-bottom:var(--spacing-huge);border-bottom:1px solid var(--color-border)}.initial-prompt h2{margin-bottom:var(--spacing-huge);color:var(--color-text-dark)}.choice-container{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-x-large);max-width:100%}.choice-option{text-align:center;display:flex;flex-direction:column}@media (max-width: 900px){.choice-container{grid-template-columns:1fr;gap:var(--spacing-large)}}.initial-choice-btn{background-color:var(--color-primary);color:#fff;padding:var(--spacing-large) calc(var(--spacing-x-large) + 5px);font-size:1.1em;border:none;border-radius:5px;cursor:pointer;transition:background-color .2s ease,transform .1s ease;width:100%;margin-bottom:var(--spacing-medium)}.initial-choice-btn:hover{background-color:var(--color-secondary)}.initial-choice-btn:active{transform:scale(.98)}.initial-choice-btn i{margin-right:var(--spacing-medium)}.choice-description{font-size:var(--font-size-small);color:var(--color-text-light);line-height:1.5;margin-top:0}#interview-form,#quote-check-form{display:none}.email-form{margin-bottom:var(--spacing-x-large)}.progress-indicator{text-align:center;margin-bottom:calc(var(--spacing-x-large) + 5px);font-weight:700;color:var(--color-text-muted);background-color:#e9ecef;padding:var(--spacing-small);border-radius:4px}label{display:block;margin-bottom:6px;font-weight:600;color:#495057}input[type=text],select,textarea{width:100%;padding:12px;margin-bottom:calc(var(--spacing-medium) + 10px);border:1px solid var(--color-border-input);border-radius:5px;box-sizing:border-box;font-size:var(--font-size-base);transition:border-color .2s ease,box-shadow .2s ease;font-family:var(--font-family-base)}input[type=text]:focus,select:focus,textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 .2rem #e87a0040;outline:none}textarea{resize:vertical;min-height:80px}input[type=checkbox]{margin-right:var(--spacing-small);vertical-align:middle}label[for=addContext]{display:inline-block;margin-bottom:calc(var(--spacing-medium) + 10px);font-weight:400}.form-step{display:none;padding:var(--spacing-large) 0;border-bottom:1px dashed var(--color-border);margin-bottom:var(--spacing-x-large)}.form-step:last-of-type{border-bottom:none;margin-bottom:0}.form-step.active-step{display:block}.form-step h3{margin-top:0;border-bottom:2px solid var(--color-primary);padding-bottom:5px;display:inline-block;margin-bottom:1.2em}#quoteEntriesContainer{margin-bottom:var(--spacing-x_large)}.quote-entry{background-color:var(--color-light);border:1px solid #dee2e6;border-radius:5px;padding:var(--spacing-x-large) var(--spacing-large) calc(var(--spacing-large) - 5px) var(--spacing-large);margin-bottom:var(--spacing-large);position:relative}.quote-entry label{font-size:var(--font-size-small);font-weight:400;color:var(--color-text-muted)}.quote-entry textarea{margin-bottom:var(--spacing-medium);min-height:40px}.remove-quote-btn{position:absolute;top:var(--spacing-small);right:var(--spacing-small);background:var(--color-danger);color:#fff;border:none;border-radius:50%;width:25px;height:25px;font-size:.8em;line-height:25px;text-align:center;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.remove-quote-btn:hover{background:var(--color-danger-dark)}.remove-quote-btn i{margin:0}.navigation-buttons{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-huge)}.navigation-buttons:not(:has(.prev-btn)){justify-content:flex-end}.navigation-buttons :is(.next-btn,.generate-btn){margin-left:auto}button{display:inline-flex;align-items:center;justify-content:center;background-color:var(--color-text-muted);color:#fff;padding:var(--spacing-medium) calc(var(--spacing-medium) + 10px);border:none;border-radius:5px;cursor:pointer;font-size:var(--font-size-base);transition:background-color .2s ease,transform .1s ease;vertical-align:middle}button:hover{opacity:.9}button:active{transform:scale(.98)}button i{margin-right:var(--spacing-small)}button.next-btn i,button.generate-btn i{order:1;margin-left:var(--spacing-small);margin-right:0}button.prev-btn{background-color:var(--color-text-muted)}button.next-btn{background-color:#007bff}button.generate-btn{background-color:var(--color-primary)}button.add-btn{background-color:var(--color-accent);margin-top:var(--spacing-medium)}button.add-btn:hover{background-color:var(--color-accent-dark)}button#copyButton{background-color:var(--color-success);margin-right:var(--spacing-medium);margin-bottom:5px}button#copyButton:hover{background-color:var(--color-success-dark)}#outputArea{margin-top:var(--spacing-huge);padding:calc(var(--spacing-x-large) + 5px);background-color:var(--color-lighter);border:1px solid var(--color-border-light);border-left:5px solid var(--color-primary);border-radius:5px;display:none}#outputArea h3{margin-top:0;color:var(--color-text-light)}#generatedSubject{font-weight:400}pre#generatedBody{background-color:#fff;padding:var(--spacing-large);border:1px solid var(--color-border-input);border-radius:4px;white-space:pre-wrap;word-wrap:break-word;font-family:IBM Plex Mono,monospace;font-size:.95rem;margin-top:5px;margin-bottom:var(--spacing-large);max-height:400px;overflow-y:auto}.reminder{background-color:#fff3cd;color:var(--color-reminder-text);border:1px solid #ffeeba;padding:12px 18px;margin-bottom:var(--spacing-x-large);border-radius:4px;font-weight:700;display:flex;align-items:center}.reminder i{margin-right:var(--spacing-medium);font-size:1.2em}.final-reminder{margin-top:var(--spacing-x-large);margin-bottom:var(--spacing-medium);font-style:italic;color:var(--color-danger);font-weight:700;display:flex;align-items:center}.final-reminder i{margin-right:var(--spacing-small);font-size:1.1em}.copy-status{display:inline-block;margin-left:var(--spacing-medium);font-size:var(--font-size-small);font-weight:700}.copy-status.success{color:var(--color-success)}.copy-status.error{color:var(--color-danger)}.info-text{font-size:var(--font-size-small);color:var(--color-text-muted);margin-top:5px}.info-text i{margin-right:5px}.start-over-btn{float:right;margin-left:var(--spacing-medium);margin-top:-5px;margin-bottom:5px;background-color:var(--color-text-muted);color:#fff;padding:5px 10px;font-size:.85em;border:none;border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;transition:background-color .2s ease}.start-over-btn:hover{background-color:#5a6268;opacity:1}.start-over-btn i{margin-right:5px}.tags-input-container{margin-bottom:calc(var(--spacing-medium) + 10px)}.tags-display{display:flex;flex-wrap:wrap;gap:var(--spacing-small);margin-bottom:var(--spacing-medium);min-height:30px;padding:8px;background-color:var(--color-light);border:1px solid var(--color-border-input);border-radius:5px}.tag{display:inline-flex;align-items:center;background-color:var(--color-gray);color:#fff;padding:4px 8px;border-radius:10px;font-size:.9em;font-weight:500;gap:6px;transition:background-color .2s ease}.tag:hover{background-color:var(--color-secondary)}.tag-remove-btn{background:none;border:none;color:#fff;font-size:1.2em;line-height:1;cursor:pointer;padding:0;margin:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.tag-remove-btn:hover{background-color:#fff3}.tag-input-wrapper{display:flex;gap:var(--spacing-medium)}.tag-input{flex:1;padding:12px;border:1px solid var(--color-border-input);border-radius:5px;font-size:var(--font-size-base);font-family:var(--font-family-base);transition:border-color .2s ease,box-shadow .2s ease;margin-bottom:0;height:46px;box-sizing:border-box}.tag-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 .2rem #e87a0040;outline:none}.add-tag-btn{background-color:var(--color-accent);color:#fff;border:none;border-radius:5px;padding:8px 16px;cursor:pointer;font-size:var(--font-size-base);font-family:var(--font-family-base);transition:background-color .2s ease,transform .1s ease;white-space:nowrap;height:46px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;font-weight:500;min-width:60px}.add-tag-btn:hover:not(:disabled){background-color:var(--color-accent-dark)}.add-tag-btn:active:not(:disabled){transform:scale(.98)}.add-tag-btn:disabled{background-color:var(--color-text-muted);cursor:not-allowed;opacity:.6}.progress-indicator{clear:both}.logo{height:1.8em;vertical-align:middle;margin-right:var(--spacing-medium)}.footer-text{text-align:center;font-size:.8em;color:var(--color-text-muted);margin-top:var(--spacing-huge);font-style:italic}.saved-status-indicator{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-medium) var(--spacing-large);background-color:var(--color-light);border:1px solid var(--color-border);border-radius:5px;margin-bottom:var(--spacing-large);font-size:var(--font-size-small)}.status-text{display:flex;align-items:center;gap:var(--spacing-small)}.status-text.ready{color:var(--color-text-muted)}.status-text.saving{color:var(--color-info)}.status-text.saved{color:var(--color-success)}.status-text.error{color:var(--color-danger)}.clear-saved-btn{background-color:var(--color-text-muted);color:#fff;border:none;border-radius:4px;padding:4px 8px;font-size:.8em;cursor:pointer;display:flex;align-items:center;gap:4px;transition:background-color .2s ease}.clear-saved-btn:hover{background-color:#5a6268}.clear-saved-btn i{font-size:.9em;margin:0}.clear-confirm-dialog{position:absolute;top:100%;right:0;background:#fff;border:1px solid var(--color-border);border-radius:5px;padding:var(--spacing-large);box-shadow:0 4px 15px #00000026;z-index:1000;min-width:250px;margin-top:var(--spacing-small)}.clear-confirm-dialog p{margin:0 0 var(--spacing-medium) 0;font-size:.9em;color:var(--color-text-dark)}.confirm-buttons{display:flex;gap:var(--spacing-medium);justify-content:flex-end}.confirm-yes{background-color:var(--color-danger);color:#fff;border:none;border-radius:4px;padding:6px 12px;font-size:.85em;cursor:pointer;transition:background-color .2s ease}.confirm-yes:hover{background-color:var(--color-danger-dark)}.confirm-no{background-color:var(--color-text-muted);color:#fff;border:none;border-radius:4px;padding:6px 12px;font-size:.85em;cursor:pointer;transition:background-color .2s ease}.confirm-no:hover{background-color:#5a6268}.saved-status-indicator{position:relative}.start-new-email-btn{position:absolute;top:var(--spacing-large);right:var(--spacing-large);background-color:var(--color-accent);color:#fff;border:none;border-radius:5px;padding:var(--spacing-medium) var(--spacing-large);font-size:.9em;cursor:pointer;display:flex;align-items:center;gap:var(--spacing-small);transition:background-color .2s ease}.start-new-email-btn:hover{background-color:var(--color-accent-dark)}.start-new-email-btn i{font-size:.9em}.email-preview{border:2px solid var(--color-primary);border-radius:8px;padding:var(--spacing-large);margin-top:var(--spacing-x-large);background-color:var(--color-background);box-shadow:0 2px 8px #0000001a}.email-preview h3{margin-top:0;margin-bottom:var(--spacing-medium);color:var(--color-primary);font-size:1.2em;font-weight:600;display:flex;align-items:center;gap:var(--spacing-small)}.email-preview h3:before{content:"📧";font-size:1.1em}.preview-section{margin-bottom:var(--spacing-large)}.preview-section h4{margin-top:0;margin-bottom:var(--spacing-small);color:var(--color-primary);font-size:1em;font-weight:600;text-transform:none;border-bottom:1px solid var(--color-border-light);padding-bottom:var(--spacing-small)}.preview-content{padding:var(--spacing-medium);background-color:var(--color-light);border-radius:6px;border-left:4px solid var(--color-primary);line-height:1.6}.preview-content p{margin:0 0 var(--spacing-small) 0}.preview-note{display:block;margin-top:var(--spacing-medium);padding:var(--spacing-small);background-color:var(--color-background);border-left:3px solid var(--color-accent);border-radius:3px;color:var(--color-text-muted);font-size:.85em;line-height:1.4}.preview-note:before{content:"ℹ️ ";margin-right:var(--spacing-small)}.email-signature{margin-top:var(--spacing-medium);padding-top:var(--spacing-small);border-top:1px solid var(--color-border-light);font-style:italic;color:var(--color-text-muted)}.email-signature div{margin:2px 0}.preview-section.is-empty .preview-content{color:var(--color-text-muted);font-style:italic}.quote-preview{margin-bottom:var(--spacing-medium);padding-bottom:var(--spacing-medium);border-bottom:1px dashed var(--color-border)}.quote-preview:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.preview-toggle{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-large);padding:var(--spacing-medium);background-color:var(--color-light);border-radius:6px;border:1px solid var(--color-border-light)}.preview-toggle label{margin-right:var(--spacing-medium);font-weight:600;color:var(--color-text);font-size:.95em}.preview-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary)}.preview-section.email-preview{margin-bottom:var(--spacing-large)}.preview-content.email-content{padding-left:var(--spacing-medium);border-left:3px solid var(--color-border-light);background-color:var(--color-background);padding:var(--spacing-medium);border-radius:3px;font-size:.9em;line-height:1.5}pre.email-text{margin:0;white-space:pre-wrap;word-wrap:break-word;font-family:inherit;font-size:inherit;line-height:inherit;color:var(--color-text)}.toggle-switch-input{opacity:0;width:0;height:0;position:absolute}.toggle-switch-label{--toggle-w: 50px;--toggle-h: 25px;--toggle-pad: 2.5px;--toggle-knob: calc(var(--toggle-h) - (var(--toggle-pad) * 2));position:relative;display:inline-flex;align-items:center;width:var(--toggle-w);height:var(--toggle-h);cursor:pointer;-webkit-tap-highlight-color:transparent;flex-shrink:0}.toggle-switch-slider{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#ccc;border-radius:calc(var(--toggle-h) / 2);box-sizing:border-box;overflow:hidden;z-index:0;transition:background-color .4s}.toggle-switch-slider:before{position:absolute;content:"";height:var(--toggle-knob);width:var(--toggle-knob);left:var(--toggle-pad);right:auto;top:var(--toggle-pad);background-color:#fff;border-radius:calc(var(--toggle-knob) / 2);box-sizing:border-box;z-index:1;transition:left .2s ease,right .2s ease}.toggle-switch-input:checked+.toggle-switch-slider{background-color:var(--color-primary)}.toggle-switch-input:checked+.toggle-switch-slider:before{left:auto;right:var(--toggle-pad)}.toggle-switch-input:focus+.toggle-switch-slider{box-shadow:0 0 1px var(--color-primary)}.toggle-switch-container{display:flex;align-items:center;gap:var(--spacing-medium);justify-content:flex-end;margin-top:var(--spacing-large);color:var(--color-text-muted)}.toggle-switch-container>span{font-size:.9em}.preview-toggle{display:flex;align-items:center;gap:var(--spacing-medium);justify-content:flex-end;margin:var(--spacing-large) 0;padding:var(--spacing-small) var(--spacing-medium);background-color:var(--color-lighter);border-radius:6px;border:1px solid var(--color-border-light)}.preview-toggle label{margin:0;font-weight:600;color:var(--color-text-dark);font-size:.95em;order:-1}.preview-toggle input[type=checkbox]{width:22px;height:22px;cursor:pointer;accent-color:var(--color-primary)}.email-preview{border:1px solid var(--color-border-light);border-left:4px solid var(--color-primary);border-radius:8px;padding:calc(var(--spacing-large) + 2px);margin-top:var(--spacing-x-large);background-color:var(--color-background);box-shadow:0 3px 10px #00000014}pre.email-text{color:var(--color-text-body)}.toggle-switch-container{justify-content:flex-end}.toggle-switch-container>span{order:-1;margin-right:var(--spacing-medium)}.preview-content.no-ribbon{border-left:none}.graphics-generator-container{margin-top:var(--spacing-large)}.graphics-generator-header{margin-bottom:var(--spacing-huge);position:relative;overflow:hidden}.graphics-generator-header .start-over-btn{float:right;margin:0 0 var(--spacing-large) 0}.graphics-generator-title-section{text-align:center;clear:both}.graphics-generator-title-section h2{margin-bottom:var(--spacing-medium);color:var(--color-text-dark);font-family:var(--font-family-headings)}.graphics-generator-title-section p{font-size:var(--font-size-base);color:var(--color-text-light);margin-top:0}.graphics-main-container{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-huge);align-items:start;clear:both}@media (max-width: 1200px){.graphics-main-container{grid-template-columns:1fr}}.graphics-left-panel{display:flex;flex-direction:column;gap:var(--spacing-x-large)}.graphics-right-panel{position:sticky;top:var(--spacing-x-large)}.graphics-right-panel h3{margin-bottom:var(--spacing-large);font-size:1.5rem;font-weight:600;color:var(--color-text-dark);font-family:var(--font-family-headings)}.image-upload{width:100%}.upload-btn,.change-image-btn{width:100%;padding:var(--spacing-large);font-size:var(--font-size-base);font-family:var(--font-family-base);font-weight:500;background:var(--color-primary);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s ease}.upload-btn:hover,.change-image-btn:hover{background:var(--color-secondary)}.image-preview-container{position:relative;width:100%}.image-preview{width:100%;height:auto;border-radius:8px;display:block}.change-image-btn{margin-top:var(--spacing-medium);background:var(--color-text-muted)}.change-image-btn:hover{background:#5a6268}.story-form{background:var(--color-background);padding:var(--spacing-x-large);border-radius:8px;box-shadow:0 2px 8px #0000001a;border:1px solid var(--color-border)}.story-form h2{margin-bottom:var(--spacing-large);font-size:1.5rem;font-weight:600;color:var(--color-text-dark);font-family:var(--font-family-headings)}.story-form .form-group{margin-bottom:var(--spacing-large)}.story-form .form-group label{display:block;margin-bottom:var(--spacing-small);font-weight:600;font-size:var(--font-size-base);color:var(--color-text-dark)}.story-form .form-group input,.story-form .form-group textarea,.story-form .form-group select{width:100%;padding:12px;font-size:var(--font-size-base);font-family:var(--font-family-base);border:1px solid var(--color-border-input);border-radius:5px;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.story-form .form-group input:focus,.story-form .form-group textarea:focus,.story-form .form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 .2rem #e87a0040}.story-form .form-group textarea{resize:vertical;min-height:80px}.download-btn{width:100%;padding:var(--spacing-large);font-size:1.1rem;font-family:var(--font-family-base);font-weight:600;background:var(--color-primary);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s ease}.download-btn:hover:not(:disabled){background:var(--color-secondary)}.download-btn:disabled{background:var(--color-text-muted);cursor:not-allowed;opacity:.6}.canvas-container{background:var(--color-background);padding:var(--spacing-x-large);border-radius:8px;box-shadow:0 2px 8px #0000001a;border:1px solid var(--color-border);display:flex;justify-content:center}.canvas-container canvas{border-radius:4px}.preview-placeholder{background:var(--color-background);padding:60px 40px;border-radius:8px;box-shadow:0 2px 8px #0000001a;border:1px solid var(--color-border);text-align:center;color:var(--color-text-muted);font-size:1.1rem}.preview-placeholder i{margin-right:var(--spacing-small);color:var(--color-text-muted)}.form-incomplete-message{background:var(--color-background);padding:var(--spacing-x-large);border-radius:8px;box-shadow:0 2px 8px #0000001a;border:1px solid var(--color-border);margin-top:var(--spacing-x-large)}.form-incomplete-message p{margin:0 0 var(--spacing-medium) 0;color:var(--color-text-dark);font-weight:500;display:flex;align-items:center;gap:var(--spacing-small)}.form-incomplete-message i{color:var(--color-primary)}.form-incomplete-message ul{margin:0;padding-left:calc(var(--spacing-medium) + 16px);color:var(--color-text-light)}.form-incomplete-message li{margin-bottom:var(--spacing-small)}
