{"id":40839,"date":"2026-06-12T22:00:25","date_gmt":"2026-06-13T03:00:25","guid":{"rendered":"https:\/\/doctorcepeda.com.co\/?page_id=40839"},"modified":"2026-06-12T22:04:03","modified_gmt":"2026-06-13T03:04:03","slug":"40839-2","status":"publish","type":"page","link":"https:\/\/doctorcepeda.com.co\/index.php\/40839-2\/","title":{"rendered":""},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"es\">\n<head>\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover\">\n<meta name=\"mobile-web-app-capable\" content=\"yes\">\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\">\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\">\n<meta name=\"theme-color\" content=\"#0B1F2D\">\n<meta name=\"format-detection\" content=\"telephone=no\">\n<title>PromptClin<\/title>\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Syne:wght@400;600;700;800&family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;1,400&family=JetBrains+Mono:wght@400;500&display=swap');\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   DESIGN TOKENS\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n:root{\n  --navy:     #0B1F2D;\n  --navy2:    #112736;\n  --teal:     #0D7377;\n  --teal-lt:  #12A090;\n  --teal-glow:rgba(13,115,119,.18);\n  --amber:    #F0A500;\n  --amber-lt: #FFB930;\n  --red:      #D94F3D;\n  --off:      #F0F5F7;\n  --off2:     #E4EDF1;\n  --gray:     #607585;\n  --gray-lt:  #D8E8EE;\n  --text:     #0E2435;\n  --card:     #FFFFFF;\n  --border:   #C5D9E2;\n  --shadow:   rgba(11,31,45,.09);\n  --shadow-lg:rgba(11,31,45,.18);\n\n  \/* layout *\/\n  --header-h: 58px;\n  --tab-h:    62px;\n  --safe-top: env(safe-area-inset-top, 0px);\n  --safe-bot: env(safe-area-inset-bottom, 0px);\n  --r:        14px;       \/* base border-radius *\/\n}\n.dark{\n  --navy:#050E16; --navy2:#08141E;\n  --teal:#0D9488; --teal-lt:#12A090; --teal-glow:rgba(13,148,136,.2);\n  --amber:#F0A500; --amber-lt:#FFB930;\n  --off:#071016; --off2:#0C1A24;\n  --gray:#7A98A8; --gray-lt:#0D1E2B;\n  --text:#D4ECF5; --card:#0D1E2C; --border:#173044;\n  --shadow:rgba(0,0,0,.35); --shadow-lg:rgba(0,0,0,.55);\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   RESET\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;}\nhtml{height:100%;overflow:hidden;}\nbody{\n  height:100%;overflow:hidden;\n  font-family:'DM Sans',sans-serif;\n  background:var(--off);\n  color:var(--text);\n  -webkit-font-smoothing:antialiased;\n  transition:background .25s,color .25s;\n}\nbutton{font-family:'DM Sans',sans-serif;cursor:pointer;}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   HEADER\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.header{\n  position:fixed;\n  top:0;left:0;right:0;\n  height:calc(var(--header-h) + var(--safe-top));\n  padding-top:var(--safe-top);\n  background:var(--navy);\n  display:flex;align-items:center;justify-content:space-between;\n  padding-left:18px;padding-right:14px;\n  z-index:400;\n  border-bottom:1px solid rgba(255,255,255,.07);\n}\n.logo{display:flex;align-items:center;gap:10px;}\n.logo-mark{\n  width:32px;height:32px;\n  background:linear-gradient(135deg,var(--teal),var(--teal-lt));\n  border-radius:9px;\n  display:flex;align-items:center;justify-content:center;\n  font-size:16px;\n  box-shadow:0 0 14px var(--teal-glow);\n}\n.logo-name{\n  font-family:'Syne',sans-serif;\n  font-size:1.15rem;font-weight:800;\n  color:#fff;letter-spacing:-.3px;\n}\n.logo-name em{color:var(--amber);font-style:normal;}\n.logo-tag{\n  background:rgba(13,115,119,.35);\n  color:var(--teal-lt);\n  font-size:.5rem;font-weight:700;\n  letter-spacing:1.5px;text-transform:uppercase;\n  padding:2px 7px;border-radius:20px;\n  border:1px solid rgba(18,160,144,.3);\n}\n.header-actions{display:flex;align-items:center;gap:8px;}\n.btn-icon{\n  width:36px;height:36px;\n  background:rgba(255,255,255,.08);\n  border:1px solid rgba(255,255,255,.12);\n  border-radius:9px;\n  display:flex;align-items:center;justify-content:center;\n  font-size:15px;color:#fff;\n  transition:background .2s;\n}\n.btn-icon:active{background:rgba(255,255,255,.16);}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   APP SHELL\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.shell{\n  position:fixed;\n  top:calc(var(--header-h) + var(--safe-top));\n  left:0;right:0;\n  bottom:calc(var(--tab-h) + var(--safe-bot));\n  overflow:hidden;\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   SCREENS (slide system)\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.screen{\n  position:absolute;inset:0;\n  overflow-y:auto;overflow-x:hidden;\n  -webkit-overflow-scrolling:touch;\n  background:var(--off);\n  transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s;\n  will-change:transform,opacity;\n  overscroll-behavior:contain;\n}\n.screen.off-right{transform:translateX(100%);opacity:0;pointer-events:none;}\n.screen.off-left{transform:translateX(-22%);opacity:0;pointer-events:none;}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   BOTTOM TAB BAR\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.tabbar{\n  position:fixed;\n  bottom:0;left:0;right:0;\n  height:calc(var(--tab-h) + var(--safe-bot));\n  padding-bottom:var(--safe-bot);\n  background:var(--navy);\n  display:flex;align-items:stretch;\n  z-index:400;\n  border-top:1px solid rgba(255,255,255,.07);\n}\n.tab{\n  flex:1;display:flex;flex-direction:column;\n  align-items:center;justify-content:center;\n  gap:3px;border:none;background:none;\n  color:rgba(255,255,255,.35);\n  padding:6px 4px;\n  transition:color .18s;\n  position:relative;\n}\n.tab.on{color:var(--amber);}\n.tab-icon{font-size:20px;line-height:1;}\n.tab-lbl{font-size:.58rem;font-weight:600;letter-spacing:.4px;text-transform:uppercase;font-family:'Syne',sans-serif;}\n.tab::before{\n  content:'';position:absolute;top:0;left:20%;right:20%;\n  height:2px;background:var(--amber);\n  border-radius:0 0 3px 3px;\n  opacity:0;transition:opacity .18s;\n}\n.tab.on::before{opacity:1;}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   SCREEN: FORMULARIO\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n#scr-form{padding:0 0 24px;}\n\n\/* Module switcher *\/\n.mod-switch{\n  display:flex;gap:0;\n  background:var(--navy);\n  padding:10px 16px 12px;\n  border-bottom:1px solid rgba(255,255,255,.07);\n  position:sticky;top:0;z-index:10;\n}\n.mod-btn{\n  flex:1;padding:9px 4px;\n  font-family:'Syne',sans-serif;font-size:.78rem;font-weight:700;\n  border:none;background:rgba(255,255,255,.06);\n  color:rgba(255,255,255,.45);\n  letter-spacing:.3px;\n  transition:all .2s;\n}\n.mod-btn:first-child{border-radius:9px 0 0 9px;}\n.mod-btn:last-child{border-radius:0 9px 9px 0;}\n.mod-btn.on{background:var(--teal);color:#fff;box-shadow:0 2px 12px rgba(13,115,119,.4);}\n\n\/* Form sections *\/\n.form-body{padding:14px 14px 0;display:flex;flex-direction:column;gap:10px;}\n\n.section{\n  background:var(--card);\n  border:1px solid var(--border);\n  border-radius:var(--r);\n  overflow:hidden;\n  box-shadow:0 2px 8px var(--shadow);\n}\n.section-head{\n  display:flex;align-items:center;gap:10px;\n  padding:13px 14px;\n  background:var(--navy2);\n  cursor:pointer;\n  user-select:none;\n  -webkit-user-select:none;\n}\n.dark .section-head{background:#0A1B27;}\n.sec-icon{font-size:15px;}\n.sec-title{\n  font-family:'Syne',sans-serif;\n  font-size:.72rem;font-weight:700;\n  color:#fff;text-transform:uppercase;letter-spacing:.9px;\n  flex:1;\n}\n.sec-chevron{color:var(--amber);font-size:10px;transition:transform .22s;}\n.section-head.shut .sec-chevron{transform:rotate(-90deg);}\n.section-body{padding:14px;display:flex;flex-direction:column;gap:10px;}\n.section-body.gone{display:none;}\n\n\/* Fields *\/\nlabel.lbl{\n  display:block;\n  font-size:.68rem;font-weight:700;\n  color:var(--gray);\n  text-transform:uppercase;letter-spacing:.5px;\n  margin-bottom:5px;\n}\nselect,input[type=text],textarea{\n  width:100%;\n  padding:12px 14px;\n  border:1.5px solid var(--border);\n  border-radius:10px;\n  font-family:'DM Sans',sans-serif;\n  font-size:16px; \/* prevents iOS zoom *\/\n  color:var(--text);\n  background:var(--card);\n  outline:none;\n  -webkit-appearance:none;appearance:none;\n  transition:border-color .2s,box-shadow .2s;\n}\nselect{\n  background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2364748B' stroke-width='1.8' fill='none' stroke-linecap='round'\/%3E%3C\/svg%3E\");\n  background-repeat:no-repeat;\n  background-position:right 14px center;\n  padding-right:40px;\n}\nselect:focus,input:focus,textarea:focus{\n  border-color:var(--teal);\n  box-shadow:0 0 0 3px var(--teal-glow);\n}\ntextarea{resize:vertical;min-height:96px;line-height:1.55;}\n.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}\n\n\/* Checkboxes *\/\n.checks{display:grid;grid-template-columns:1fr 1fr;gap:6px;}\n.chk{\n  display:flex;align-items:center;gap:8px;\n  padding:11px 10px;\n  border:1.5px solid var(--border);\n  border-radius:9px;\n  cursor:pointer;\n  background:var(--card);\n  transition:all .15s;\n  user-select:none;-webkit-user-select:none;\n  min-height:48px;\n}\n.chk input{display:none;}\n.chk-box{\n  width:22px;height:22px;flex-shrink:0;\n  border:2px solid var(--border);\n  border-radius:6px;\n  display:flex;align-items:center;justify-content:center;\n  font-size:12px;color:#fff;\n  background:transparent;\n  transition:all .15s;\n}\n.chk.on .chk-box{background:var(--teal);border-color:var(--teal);}\n.chk.on{border-color:var(--teal);background:rgba(13,115,119,.07);}\n.chk-lbl{font-size:.72rem;font-weight:500;line-height:1.3;pointer-events:none;}\n\n\/* Toggle *\/\n.toggle-row{\n  display:flex;align-items:center;justify-content:space-between;\n  padding:12px 14px;\n  background:var(--card);\n  border:1.5px solid var(--border);\n  border-radius:10px;\n}\n.toggle-info{}\n.toggle-name{font-size:.88rem;font-weight:600;}\n.toggle-hint{font-size:.7rem;color:var(--gray);margin-top:2px;}\n.sw{position:relative;width:50px;height:28px;flex-shrink:0;}\n.sw input{opacity:0;width:0;height:0;position:absolute;}\n.sw-track{\n  position:absolute;inset:0;\n  background:var(--gray-lt);\n  border-radius:28px;\n  transition:background .2s;\n}\n.sw-track::before{\n  content:'';position:absolute;\n  width:22px;height:22px;\n  left:3px;top:3px;\n  background:#fff;border-radius:50%;\n  transition:transform .2s;\n  box-shadow:0 1px 4px rgba(0,0,0,.18);\n}\n.sw input:checked+.sw-track{background:var(--teal);}\n.sw input:checked+.sw-track::before{transform:translateX(22px);}\n\n\/* Anon alert *\/\n.anon{\n  display:none;\n  background:rgba(217,79,61,.1);\n  border:1.5px solid var(--red);\n  border-radius:8px;\n  padding:9px 12px;\n  font-size:.73rem;font-weight:600;\n  color:var(--red);\n}\n.anon.on{display:block;}\n\n\/* Action buttons *\/\n.btn-gen{\n  width:100%;padding:15px;\n  background:linear-gradient(135deg,var(--teal),var(--teal-lt));\n  color:#fff;border:none;border-radius:12px;\n  font-family:'Syne',sans-serif;font-size:.95rem;font-weight:700;\n  letter-spacing:.3px;\n  box-shadow:0 4px 16px rgba(13,115,119,.38);\n  transition:transform .15s,box-shadow .15s;\n  min-height:52px;\n}\n.btn-gen:active{transform:scale(.97);box-shadow:0 2px 8px rgba(13,115,119,.3);}\n.btn-clear{\n  width:100%;padding:12px;\n  background:transparent;\n  color:var(--gray);\n  border:1.5px solid var(--border);\n  border-radius:11px;\n  font-family:'DM Sans',sans-serif;font-size:.88rem;font-weight:600;\n  min-height:48px;\n  transition:all .15s;\n}\n.btn-clear:active{border-color:var(--red);color:var(--red);}\n\n\/* PICO *\/\n.pico-grid{display:flex;flex-direction:column;gap:8px;margin-top:8px;}\n.pico-field{background:var(--off);border:1px solid var(--border);border-radius:9px;padding:10px 12px;}\n.pico-l{font-family:'Syne',sans-serif;font-size:1.15rem;font-weight:800;color:var(--teal);}\n.pico-n{font-size:.65rem;color:var(--gray);margin-bottom:6px;font-weight:600;}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   SCREEN: PROMPTS\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n#scr-prompts{display:flex;flex-direction:column;}\n\n\/* Pill tab bar inside prompt screen *\/\n.prompt-tabs{\n  display:flex;gap:6px;\n  padding:10px 14px;\n  background:var(--card);\n  border-bottom:1px solid var(--border);\n  overflow-x:auto;\n  -webkit-overflow-scrolling:touch;\n  scrollbar-width:none;\n  flex-shrink:0;\n  position:sticky;top:0;z-index:5;\n}\n.prompt-tabs::-webkit-scrollbar{display:none;}\n.ptab{\n  padding:7px 16px;\n  border:1.5px solid var(--border);\n  border-radius:20px;\n  font-family:'Syne',sans-serif;font-size:.72rem;font-weight:700;\n  color:var(--gray);background:var(--card);\n  white-space:nowrap;flex-shrink:0;\n  transition:all .18s;\n  min-height:36px;\n  letter-spacing:.2px;\n}\n.ptab.on{background:var(--teal);color:#fff;border-color:var(--teal);box-shadow:0 2px 8px rgba(13,115,119,.3);}\n\n.prompts-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:14px;overscroll-behavior:contain;}\n\n\/* Prompt pane *\/\n.ppane{display:none;}\n.ppane.on{display:flex;flex-direction:column;gap:12px;}\n\n\/* Prompt card *\/\n.pcard{\n  background:var(--card);\n  border:1px solid var(--border);\n  border-radius:var(--r);\n  overflow:hidden;\n  box-shadow:0 2px 10px var(--shadow);\n}\n.pcard-head{\n  padding:13px 15px;\n  display:flex;align-items:center;justify-content:space-between;\n  gap:10px;\n}\n.pcard-conv{background:linear-gradient(135deg,#1E3448,#2E4A65);}\n.pcard-ctx{background:linear-gradient(135deg,var(--teal),#0A6065);}\n.pcard-cot{background:linear-gradient(135deg,#5C1027,#8E1038);}\n.pcard-inv{background:linear-gradient(135deg,#1A3A6E,#1F4D9E);}\n.pcard-title{\n  font-family:'Syne',sans-serif;font-size:.9rem;font-weight:700;\n  color:#fff;display:flex;align-items:center;gap:6px;\n}\n.pcard-sub{font-size:.62rem;color:rgba(255,255,255,.55);margin-top:2px;font-family:'DM Sans',sans-serif;}\n.btn-copy{\n  padding:8px 14px;\n  background:rgba(255,255,255,.15);\n  color:#fff;\n  border:1.5px solid rgba(255,255,255,.28);\n  border-radius:8px;\n  font-size:.75rem;font-weight:600;\n  min-height:38px;min-width:80px;\n  white-space:nowrap;\n  transition:background .15s;\n}\n.btn-copy:active{background:rgba(255,255,255,.28);}\n.pcard-body{padding:14px;}\n.prompt-txt{\n  font-family:'JetBrains Mono',monospace;\n  font-size:.73rem;line-height:1.75;\n  color:var(--text);\n  white-space:pre-wrap;word-break:break-word;\n}\n.char-ct{\n  text-align:right;\n  font-size:.62rem;color:var(--gray);\n  margin-top:8px;\n}\n\n\/* Empty state *\/\n.empty{\n  display:flex;flex-direction:column;\n  align-items:center;justify-content:center;\n  min-height:240px;gap:12px;\n  color:var(--gray);text-align:center;\n  padding:2rem 1rem;\n}\n.empty-ico{font-size:2.8rem;opacity:.25;}\n.empty-ttl{font-family:'Syne',sans-serif;font-size:.92rem;font-weight:700;}\n.empty-sub{font-size:.76rem;opacity:.65;line-height:1.5;}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   SCREEN: ENVIAR IA\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n#scr-ai{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0 0 24px;}\n\n.ai-header{\n  background:var(--navy);\n  padding:16px 16px 20px;\n  text-align:center;\n  border-bottom:1px solid rgba(255,255,255,.07);\n}\n.ai-header-title{\n  font-family:'Syne',sans-serif;\n  font-size:1.1rem;font-weight:800;\n  color:#fff;\n}\n.ai-header-title em{color:var(--amber);font-style:normal;}\n.ai-header-sub{font-size:.75rem;color:rgba(255,255,255,.45);margin-top:4px;}\n\n\/* Prompt selector strip *\/\n.ai-sel-strip{\n  display:flex;align-items:center;gap:10px;\n  padding:12px 16px;\n  background:var(--card);\n  border-bottom:1px solid var(--border);\n  flex-shrink:0;\n}\n.ai-sel-label{font-size:.72rem;font-weight:700;color:var(--gray);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;}\n.ai-sel{\n  flex:1;\n  padding:9px 12px;\n  border:1.5px solid var(--border);\n  border-radius:9px;\n  font-family:'Syne',sans-serif;font-size:.82rem;font-weight:600;\n  color:var(--text);background:var(--card);\n  outline:none;-webkit-appearance:none;\n  background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2364748B' stroke-width='1.8' fill='none' stroke-linecap='round'\/%3E%3C\/svg%3E\");\n  background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;\n}\n\n\/* AI cards *\/\n.ai-cards{padding:14px;display:flex;flex-direction:column;gap:12px;}\n\n.ai-card{\n  background:var(--card);\n  border:1px solid var(--border);\n  border-radius:var(--r);\n  overflow:hidden;\n  box-shadow:0 2px 10px var(--shadow);\n}\n.ai-card-head{\n  padding:14px 16px;\n  display:flex;align-items:center;gap:12px;\n}\n.ai-card-oe .ai-card-head{background:linear-gradient(135deg,#132B56,#1D4080);}\n.ai-card-kl .ai-card-head{background:linear-gradient(135deg,#083A2C,#0D6060);}\n.ai-card-vh .ai-card-head{background:linear-gradient(135deg,#3A0C52,#652196);}\n.ai-mark{\n  width:40px;height:40px;flex-shrink:0;\n  border-radius:10px;\n  background:rgba(255,255,255,.15);\n  display:flex;align-items:center;justify-content:center;\n  font-size:20px;\n}\n.ai-info{flex:1;}\n.ai-name{font-family:'Syne',sans-serif;font-size:.9rem;font-weight:800;color:#fff;}\n.ai-desc{font-size:.65rem;color:rgba(255,255,255,.5);margin-top:2px;}\n.ai-card-body{padding:12px 16px 16px;}\n.ai-preview{\n  font-family:'JetBrains Mono',monospace;\n  font-size:.65rem;line-height:1.5;\n  color:var(--gray);\n  background:var(--off);\n  border:1px solid var(--border);\n  border-radius:8px;\n  padding:8px 10px;\n  max-height:56px;overflow:hidden;\n  white-space:pre-wrap;word-break:break-word;\n  position:relative;\n  margin-bottom:10px;\n}\n.ai-preview::after{\n  content:'';position:absolute;\n  bottom:0;left:0;right:0;height:20px;\n  background:linear-gradient(transparent,var(--off));\n}\n.btn-launch{\n  width:100%;padding:13px;\n  border:none;border-radius:10px;\n  font-family:'Syne',sans-serif;font-size:.88rem;font-weight:700;\n  letter-spacing:.3px;\n  display:flex;align-items:center;justify-content:center;gap:8px;\n  min-height:48px;\n  transition:all .15s;\n}\n.ai-card-oe .btn-launch{background:#1D4080;color:#fff;}\n.ai-card-kl .btn-launch{background:var(--teal);color:#fff;}\n.ai-card-vh .btn-launch{background:#652196;color:#fff;}\n.btn-launch:active{opacity:.8;transform:scale(.98);}\n.btn-launch.done{opacity:.6;pointer-events:none;}\n.ai-paste-note{\n  text-align:center;font-size:.62rem;\n  color:var(--gray);margin-top:6px;\n  font-style:italic;\n}\n\n\/* Export strip *\/\n.export-strip{\n  margin:0 14px;\n  padding:14px 16px;\n  background:var(--card);\n  border:1px solid var(--border);\n  border-radius:var(--r);\n  display:flex;align-items:center;justify-content:space-between;\n  gap:12px;\n  box-shadow:0 2px 8px var(--shadow);\n}\n.export-strip-label{font-size:.78rem;font-weight:600;color:var(--gray);}\n.btn-export{\n  padding:10px 18px;\n  background:var(--amber);\n  color:var(--navy);\n  border:none;border-radius:9px;\n  font-family:'Syne',sans-serif;font-size:.82rem;font-weight:800;\n  min-height:42px;white-space:nowrap;\n  transition:all .15s;\n}\n.btn-export:active{opacity:.8;}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   DESKTOP OVERRIDE  (\u2265768px)\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n@media(min-width:768px){\n  :root{--header-h:60px;}\n  .tabbar{display:none!important;}\n  .shell{\n    bottom:0;\n    display:grid;\n    grid-template-columns:360px 1fr;\n    grid-template-rows:1fr;\n    overflow:hidden;\n  }\n  #scr-form{\n    position:static;\n    overflow-y:auto;\n    border-right:1px solid var(--border);\n    background:var(--card);\n    transform:none!important;opacity:1!important;pointer-events:auto!important;\n  }\n  #scr-prompts{\n    position:static;\n    display:flex;flex-direction:column;\n    overflow:hidden;\n    transform:none!important;opacity:1!important;pointer-events:auto!important;\n  }\n  #scr-ai{display:none;}\n  .prompt-tabs{position:static;}\n  .ai-cards{display:grid;grid-template-columns:repeat(3,1fr);}\n  .ai-preview{display:block;}\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   MICRO ANIMATIONS\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n@keyframes fadeUp{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}\n.ppane.on .pcard{animation:fadeUp .22s ease both;}\n.ppane.on .pcard:nth-child(2){animation-delay:.06s;}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   DARK MODE SELECT DROPDOWNS\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.dark select,.dark input[type=text],.dark textarea{\n  background:var(--card);\n  color:var(--text);\n}\n.dark .mod-btn:not(.on){color:rgba(255,255,255,.35);background:rgba(255,255,255,.05);}\n<\/style>\n<\/head>\n<body>\n\n<!-- \u2550\u2550 HEADER \u2550\u2550 -->\n<header class=\"header\">\n  <div class=\"logo\">\n    <div class=\"logo-mark\">\ud83e\udde0<\/div>\n    <div class=\"logo-name\">Prompt<em>Clin<\/em><\/div>\n    <div class=\"logo-tag\">LOCAL<\/div>\n  <\/div>\n  <div class=\"header-actions\">\n    <button class=\"btn-icon\" onclick=\"toggleDark()\" id=\"btn-dark\" title=\"Tema\">\ud83c\udf19<\/button>\n  <\/div>\n<\/header>\n\n<!-- \u2550\u2550 SHELL \u2550\u2550 -->\n<div class=\"shell\">\n\n  <!-- \u2500\u2500 PANTALLA 1: FORMULARIO \u2500\u2500 -->\n  <div class=\"screen\" id=\"scr-form\">\n\n    <!-- Module switcher -->\n    <div class=\"mod-switch\">\n      <button class=\"mod-btn on\" onclick=\"switchMod('clinico',this)\" id=\"mb-clinico\">\ud83e\ude7a Cl\u00ednico<\/button>\n      <button class=\"mod-btn\" onclick=\"switchMod('investigacion',this)\" id=\"mb-investigacion\">\ud83d\udd2c Investigaci\u00f3n<\/button>\n    <\/div>\n\n    <!-- \u2500\u2500 M\u00d3DULO CL\u00cdNICO \u2500\u2500 -->\n    <div class=\"form-body\" id=\"mod-clinico\">\n\n      <div class=\"section\">\n        <div class=\"section-head\" onclick=\"toggleSec(this)\">\n          <span class=\"sec-icon\">\ud83d\udc64<\/span>\n          <span class=\"sec-title\">Rol \/ Perspectiva<\/span>\n          <span class=\"sec-chevron\">\u25bc<\/span>\n        <\/div>\n        <div class=\"section-body\">\n          <div>\n            <label class=\"lbl\">Perfil profesional<\/label>\n            <select id=\"rol\" onchange=\"chkOtro()\">\n              <option value=\"\">\u2014 Seleccionar \u2014<\/option>\n              <option>M\u00e9dico cl\u00ednico especialista<\/option>\n              <option>M\u00e9dico de atenci\u00f3n primaria<\/option>\n              <option>M\u00e9dico residente<\/option>\n              <option>Investigador cl\u00ednico<\/option>\n              <option>Docente de medicina<\/option>\n              <option>Enfermero\/a especialista<\/option>\n              <option>Farmac\u00e9utico cl\u00ednico<\/option>\n              <option value=\"otro\">Otro (especificar)<\/option>\n            <\/select>\n          <\/div>\n          <div id=\"otro-wrap\" style=\"display:none\">\n            <label class=\"lbl\">Especificar rol<\/label>\n            <input type=\"text\" id=\"rol-otro\" placeholder=\"Ej: Fisioterapeuta\u2026\">\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"section\">\n        <div class=\"section-head\" onclick=\"toggleSec(this)\">\n          <span class=\"sec-icon\">\ud83d\udd12<\/span>\n          <span class=\"sec-title\">Contexto Anonimizado<\/span>\n          <span class=\"sec-chevron\">\u25bc<\/span>\n        <\/div>\n        <div class=\"section-body\">\n          <div class=\"row2\">\n            <div>\n              <label class=\"lbl\">Edad<\/label>\n              <select id=\"edad\">\n                <option value=\"\">\u2014<\/option>\n                <option>&lt; 1 a\u00f1o<\/option>\n                <option>1\u201312 a\u00f1os<\/option>\n                <option>13\u201317 a\u00f1os<\/option>\n                <option>18\u201340 a\u00f1os<\/option>\n                <option>41\u201360 a\u00f1os<\/option>\n                <option>&gt; 60 a\u00f1os<\/option>\n              <\/select>\n            <\/div>\n            <div>\n              <label class=\"lbl\">Sexo<\/label>\n              <select id=\"sexo\">\n                <option value=\"\">\u2014<\/option>\n                <option>Masculino<\/option>\n                <option>Femenino<\/option>\n                <option>No especificado<\/option>\n              <\/select>\n            <\/div>\n          <\/div>\n          <div>\n            <label class=\"lbl\">Nivel asistencial<\/label>\n            <select id=\"nivel\">\n              <option value=\"\">\u2014 Seleccionar \u2014<\/option>\n              <option>Atenci\u00f3n primaria<\/option>\n              <option>Urgencias<\/option>\n              <option>Hospitalizaci\u00f3n<\/option>\n              <option>UCI<\/option>\n              <option>Consulta especialidad<\/option>\n              <option>Telemedicina<\/option>\n            <\/select>\n          <\/div>\n          <div>\n            <label class=\"lbl\">Descripci\u00f3n cl\u00ednica <span style=\"color:var(--red);font-weight:400;font-size:.62rem\">\u26a0 sin datos id.<\/span><\/label>\n            <textarea id=\"contexto\" rows=\"4\" placeholder=\"Caso cl\u00ednico anonimizado\u2026\" oninput=\"checkAnon(this)\"><\/textarea>\n            <div class=\"anon\" id=\"anon-alert\">\u26a0\ufe0f Posibles datos identificativos detectados.<\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"section\">\n        <div class=\"section-head\" onclick=\"toggleSec(this)\">\n          <span class=\"sec-icon\">\ud83d\udccb<\/span>\n          <span class=\"sec-title\">Tareas Cl\u00ednicas<\/span>\n          <span class=\"sec-chevron\">\u25bc<\/span>\n        <\/div>\n        <div class=\"section-body\">\n          <div class=\"checks\">\n            <div class=\"chk\" onclick=\"toggleChk(this)\">\n              <input type=\"checkbox\" value=\"Definici\u00f3n del s\u00edntoma principal\">\n              <div class=\"chk-box\">\u2713<\/div><span class=\"chk-lbl\">S\u00edntoma principal<\/span>\n            <\/div>\n            <div class=\"chk\" onclick=\"toggleChk(this)\">\n              <input type=\"checkbox\" value=\"An\u00e1lisis de antecedentes relevantes\">\n              <div class=\"chk-box\">\u2713<\/div><span class=\"chk-lbl\">Antecedentes<\/span>\n            <\/div>\n            <div class=\"chk\" onclick=\"toggleChk(this)\">\n              <input type=\"checkbox\" value=\"Listado de posibles causas (diagn\u00f3stico diferencial)\">\n              <div class=\"chk-box\">\u2713<\/div><span class=\"chk-lbl\">Diagn\u00f3stico diferencial<\/span>\n            <\/div>\n            <div class=\"chk\" onclick=\"toggleChk(this)\">\n              <input type=\"checkbox\" value=\"Priorizaci\u00f3n de diagn\u00f3sticos seg\u00fan probabilidad cl\u00ednica\">\n              <div class=\"chk-box\">\u2713<\/div><span class=\"chk-lbl\">Priorizaci\u00f3n dx<\/span>\n            <\/div>\n            <div class=\"chk\" onclick=\"toggleChk(this)\">\n              <input type=\"checkbox\" value=\"Pruebas diagn\u00f3sticas recomendadas\">\n              <div class=\"chk-box\">\u2713<\/div><span class=\"chk-lbl\">Pruebas dx<\/span>\n            <\/div>\n            <div class=\"chk\" onclick=\"toggleChk(this)\">\n              <input type=\"checkbox\" value=\"Plan terap\u00e9utico inicial\">\n              <div class=\"chk-box\">\u2713<\/div><span class=\"chk-lbl\">Plan terap\u00e9utico<\/span>\n            <\/div>\n            <div class=\"chk\" onclick=\"toggleChk(this)\">\n              <input type=\"checkbox\" value=\"Criterios de derivaci\u00f3n o ingreso hospitalario\">\n              <div class=\"chk-box\">\u2713<\/div><span class=\"chk-lbl\">Criterios derivaci\u00f3n<\/span>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"section\">\n        <div class=\"section-head\" onclick=\"toggleSec(this)\">\n          <span class=\"sec-icon\">\ud83d\udd17<\/span>\n          <span class=\"sec-title\">Chain of Thought<\/span>\n          <span class=\"sec-chevron\">\u25bc<\/span>\n        <\/div>\n        <div class=\"section-body\">\n          <div class=\"toggle-row\">\n            <div class=\"toggle-info\">\n              <div class=\"toggle-name\">\ud83e\udde0 Razonamiento paso a paso<\/div>\n              <div class=\"toggle-hint\">Instruye a la IA a exponer su razonamiento<\/div>\n            <\/div>\n            <label class=\"sw\"><input type=\"checkbox\" id=\"cot-on\" checked><span class=\"sw-track\"><\/span><\/label>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"section\">\n        <div class=\"section-head\" onclick=\"toggleSec(this)\">\n          <span class=\"sec-icon\">\ud83d\udcd0<\/span>\n          <span class=\"sec-title\">Formato y Tono<\/span>\n          <span class=\"sec-chevron\">\u25bc<\/span>\n        <\/div>\n        <div class=\"section-body\">\n          <div>\n            <label class=\"lbl\">Formato de salida<\/label>\n            <select id=\"formato\">\n              <option value=\"\">\u2014 Seleccionar \u2014<\/option>\n              <option value=\"Lista numerada y estructurada\">Lista numerada<\/option>\n              <option value=\"Tabla comparativa con columnas\">Tabla comparativa<\/option>\n              <option value=\"Esquema jer\u00e1rquico con subniveles\">Esquema jer\u00e1rquico<\/option>\n              <option value=\"Resumen ejecutivo en p\u00e1rrafos cortos\">Resumen ejecutivo<\/option>\n              <option value=\"Formato SOAP (Subjetivo \/ Objetivo \/ An\u00e1lisis \/ Plan)\">SOAP<\/option>\n            <\/select>\n          <\/div>\n          <div>\n            <label class=\"lbl\">Tono \/ Audiencia<\/label>\n            <select id=\"tono\">\n              <option value=\"\">\u2014 No especificar \u2014<\/option>\n              <option value=\"Lenguaje t\u00e9cnico especializado para profesionales m\u00e9dicos\">T\u00e9cnico especializado<\/option>\n              <option value=\"Lenguaje t\u00e9cnico general para residentes o enfermer\u00eda\">T\u00e9cnico general<\/option>\n              <option value=\"Lenguaje divulgativo para pacientes y familias\">Divulgativo<\/option>\n              <option value=\"Lenguaje acad\u00e9mico-formal para publicaciones y docencia\">Acad\u00e9mico-formal<\/option>\n            <\/select>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <button class=\"btn-gen\" onclick=\"generatePrompts()\">\u26a1 Generar los 3 Prompts<\/button>\n      <button class=\"btn-clear\" onclick=\"clearForm()\" style=\"margin-top:2px;margin-bottom:4px;\">\ud83d\uddd1 Limpiar formulario<\/button>\n\n    <\/div><!-- \/mod-clinico -->\n\n    <!-- \u2500\u2500 M\u00d3DULO INVESTIGACI\u00d3N \u2500\u2500 -->\n    <div class=\"form-body\" id=\"mod-investigacion\" style=\"display:none\">\n\n      <div class=\"section\">\n        <div class=\"section-head\" onclick=\"toggleSec(this)\">\n          <span class=\"sec-icon\">\ud83d\udd0d<\/span>\n          <span class=\"sec-title\">Estrategia MeSH<\/span>\n          <span class=\"sec-chevron\">\u25bc<\/span>\n        <\/div>\n        <div class=\"section-body\">\n          <div>\n            <label class=\"lbl\">Pregunta cl\u00ednica<\/label>\n            <textarea id=\"mesh-q\" rows=\"3\" placeholder=\"Ej: \u00bfEs eficaz el ibuprofeno frente al paracetamol en el dolor postoperatorio?\"><\/textarea>\n          <\/div>\n          <div>\n            <label class=\"lbl\">Tipo de estudio<\/label>\n            <select id=\"mesh-study\">\n              <option value=\"\">\u2014 Cualquiera \u2014<\/option>\n              <option>Ensayo cl\u00ednico aleatorizado (RCT)<\/option>\n              <option>Revisi\u00f3n sistem\u00e1tica<\/option>\n              <option>Metaan\u00e1lisis<\/option>\n              <option>Estudio de cohortes<\/option>\n              <option>Caso-control<\/option>\n              <option>Gu\u00eda de pr\u00e1ctica cl\u00ednica<\/option>\n            <\/select>\n          <\/div>\n          <div class=\"row2\">\n            <div>\n              <label class=\"lbl\">Desde el a\u00f1o<\/label>\n              <select id=\"mesh-yr\">\n                <option value=\"\">Todos<\/option>\n                <option>2020<\/option><option>2018<\/option><option>2015<\/option><option>2010<\/option>\n              <\/select>\n            <\/div>\n            <div>\n              <label class=\"lbl\">Idioma<\/label>\n              <select id=\"mesh-lang\">\n                <option value=\"\">Todos<\/option>\n                <option>Espa\u00f1ol<\/option><option>Ingl\u00e9s<\/option><option>Ingl\u00e9s + Espa\u00f1ol<\/option>\n              <\/select>\n            <\/div>\n          <\/div>\n          <button class=\"btn-gen\" onclick=\"generateMesh()\">\ud83d\udd0e Generar estrategia MeSH<\/button>\n        <\/div>\n      <\/div>\n\n      <div class=\"section\">\n        <div class=\"section-head\" onclick=\"toggleSec(this)\">\n          <span class=\"sec-icon\">\ud83d\udcca<\/span>\n          <span class=\"sec-title\">Formulaci\u00f3n Metodol\u00f3gica<\/span>\n          <span class=\"sec-chevron\">\u25bc<\/span>\n        <\/div>\n        <div class=\"section-body\">\n          <div>\n            <label class=\"lbl\">Estructura<\/label>\n            <select id=\"pico-type\" onchange=\"buildPicoFields()\">\n              <option value=\"PICO\">PICO \u2014 Intervenci\u00f3n terap\u00e9utica<\/option>\n              <option value=\"PECO\">PECO \u2014 Exposici\u00f3n \/ factor de riesgo<\/option>\n              <option value=\"SPIDER\">SPIDER \u2014 Investigaci\u00f3n cualitativa<\/option>\n            <\/select>\n          <\/div>\n          <div id=\"pico-fields\" class=\"pico-grid\"><\/div>\n          <button class=\"btn-gen\" style=\"margin-top:6px\" onclick=\"generatePico()\">\ud83d\udccb Generar pregunta estructurada<\/button>\n        <\/div>\n      <\/div>\n\n      <button class=\"btn-clear\" style=\"margin-top:2px;margin-bottom:4px;\" onclick=\"clearInv()\">\ud83d\uddd1 Limpiar investigaci\u00f3n<\/button>\n\n    <\/div><!-- \/mod-investigacion -->\n\n  <\/div><!-- \/scr-form -->\n\n  <!-- \u2500\u2500 PANTALLA 2: PROMPTS \u2500\u2500 -->\n  <div class=\"screen off-right\" id=\"scr-prompts\">\n\n    <!-- Pill tabs -->\n    <div class=\"prompt-tabs\">\n      <button class=\"ptab on\" data-tab=\"conv\" onclick=\"switchPtab('conv',this)\">\ud83d\udcdd Convencional<\/button>\n      <button class=\"ptab\" data-tab=\"ctx\" onclick=\"switchPtab('ctx',this)\">\ud83c\udfaf Contextual<\/button>\n      <button class=\"ptab\" data-tab=\"cot\" onclick=\"switchPtab('cot',this)\">\ud83e\udde0 CoT<\/button>\n      <button class=\"ptab\" data-tab=\"inv\" onclick=\"switchPtab('inv',this)\">\ud83d\udd2c Investigaci\u00f3n<\/button>\n    <\/div>\n\n    <div class=\"prompts-scroll\">\n\n      <!-- Convencional -->\n      <div class=\"ppane on\" id=\"ppane-conv\">\n        <div class=\"empty\" id=\"empty-conv\">\n          <div class=\"empty-ico\">\ud83d\udcdd<\/div>\n          <div class=\"empty-ttl\">Prompt convencional<\/div>\n          <div class=\"empty-sub\">Completa el formulario y pulsa<br>\u00abGenerar los 3 Prompts\u00bb<\/div>\n        <\/div>\n        <div id=\"res-conv\" style=\"display:none\">\n          <div class=\"pcard\">\n            <div class=\"pcard-head pcard-conv\">\n              <div>\n                <div class=\"pcard-title\">\ud83d\udcdd Convencional<\/div>\n                <div class=\"pcard-sub\">Consulta directa y simple<\/div>\n              <\/div>\n              <button class=\"btn-copy\" onclick=\"copyText('txt-conv',this)\">\ud83d\udccb Copiar<\/button>\n            <\/div>\n            <div class=\"pcard-body\">\n              <div class=\"prompt-txt\" id=\"txt-conv\"><\/div>\n              <div class=\"char-ct\" id=\"cc-conv\"><\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <!-- Contextual -->\n      <div class=\"ppane\" id=\"ppane-ctx\">\n        <div class=\"empty\" id=\"empty-ctx\">\n          <div class=\"empty-ico\">\ud83c\udfaf<\/div>\n          <div class=\"empty-ttl\">Prompt contextual avanzado<\/div>\n          <div class=\"empty-sub\">Rol + Contexto + Tareas + Formato<\/div>\n        <\/div>\n        <div id=\"res-ctx\" style=\"display:none\">\n          <div class=\"pcard\">\n            <div class=\"pcard-head pcard-ctx\">\n              <div>\n                <div class=\"pcard-title\">\ud83c\udfaf Contextual<\/div>\n                <div class=\"pcard-sub\">Rol + Contexto + Tareas + Formato<\/div>\n              <\/div>\n              <button class=\"btn-copy\" onclick=\"copyText('txt-ctx',this)\">\ud83d\udccb Copiar<\/button>\n            <\/div>\n            <div class=\"pcard-body\">\n              <div class=\"prompt-txt\" id=\"txt-ctx\"><\/div>\n              <div class=\"char-ct\" id=\"cc-ctx\"><\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <!-- CoT -->\n      <div class=\"ppane\" id=\"ppane-cot\">\n        <div class=\"empty\" id=\"empty-cot\">\n          <div class=\"empty-ico\">\ud83e\udde0<\/div>\n          <div class=\"empty-ttl\">Prompt Chain of Thought<\/div>\n          <div class=\"empty-sub\">Razonamiento cl\u00ednico paso a paso<\/div>\n        <\/div>\n        <div id=\"res-cot\" style=\"display:none\">\n          <div class=\"pcard\">\n            <div class=\"pcard-head pcard-cot\">\n              <div>\n                <div class=\"pcard-title\">\ud83e\udde0 CoT<\/div>\n                <div class=\"pcard-sub\">Cadena de pensamiento cl\u00ednico<\/div>\n              <\/div>\n              <button class=\"btn-copy\" onclick=\"copyText('txt-cot',this)\">\ud83d\udccb Copiar<\/button>\n            <\/div>\n            <div class=\"pcard-body\">\n              <div class=\"prompt-txt\" id=\"txt-cot\"><\/div>\n              <div class=\"char-ct\" id=\"cc-cot\"><\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <!-- Investigaci\u00f3n -->\n      <div class=\"ppane\" id=\"ppane-inv\">\n        <div class=\"empty\" id=\"empty-inv\">\n          <div class=\"empty-ico\">\ud83d\udd2c<\/div>\n          <div class=\"empty-ttl\">M\u00f3dulo de investigaci\u00f3n<\/div>\n          <div class=\"empty-sub\">Genera estrategias MeSH o preguntas PICO<br>desde el formulario<\/div>\n        <\/div>\n        <div id=\"res-mesh\" style=\"display:none\">\n          <div class=\"pcard\">\n            <div class=\"pcard-head pcard-inv\">\n              <div>\n                <div class=\"pcard-title\">\ud83d\udd0d Estrategia MeSH<\/div>\n                <div class=\"pcard-sub\">String listo para PubMed<\/div>\n              <\/div>\n              <button class=\"btn-copy\" onclick=\"copyText('txt-mesh',this)\">\ud83d\udccb Copiar<\/button>\n            <\/div>\n            <div class=\"pcard-body\">\n              <div class=\"prompt-txt\" id=\"txt-mesh\"><\/div>\n              <div class=\"char-ct\" id=\"cc-mesh\"><\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n        <div id=\"res-pico\" style=\"display:none\">\n          <div class=\"pcard\">\n            <div class=\"pcard-head pcard-inv\">\n              <div>\n                <div class=\"pcard-title\" id=\"pico-h-title\">\ud83d\udcca Pregunta PICO<\/div>\n                <div class=\"pcard-sub\">Formulaci\u00f3n metodol\u00f3gica completa<\/div>\n              <\/div>\n              <button class=\"btn-copy\" onclick=\"copyText('txt-pico',this)\">\ud83d\udccb Copiar<\/button>\n            <\/div>\n            <div class=\"pcard-body\">\n              <div class=\"prompt-txt\" id=\"txt-pico\"><\/div>\n              <div class=\"char-ct\" id=\"cc-pico\"><\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n\n    <\/div><!-- \/prompts-scroll -->\n  <\/div><!-- \/scr-prompts -->\n\n  <!-- \u2500\u2500 PANTALLA 3: ENVIAR A IA \u2500\u2500 -->\n  <div class=\"screen off-right\" id=\"scr-ai\">\n\n    <div class=\"ai-header\">\n      <div class=\"ai-header-title\">\ud83d\ude80 Enviar a <em>IA Cl\u00ednica<\/em><\/div>\n      <div class=\"ai-header-sub\">El prompt se copia autom\u00e1ticamente \u00b7 Pega en la plataforma<\/div>\n    <\/div>\n\n    <!-- Selector de prompt -->\n    <div class=\"ai-sel-strip\">\n      <span class=\"ai-sel-label\">Prompt:<\/span>\n      <select class=\"ai-sel\" id=\"ai-sel\" onchange=\"refreshPreviews()\">\n        <option value=\"conv\">\ud83d\udcdd Convencional<\/option>\n        <option value=\"ctx\">\ud83c\udfaf Contextual<\/option>\n        <option value=\"cot\" selected>\ud83e\udde0 CoT \u2726<\/option>\n      <\/select>\n    <\/div>\n\n    <div class=\"ai-cards\">\n\n      <div class=\"ai-card ai-card-oe\">\n        <div class=\"ai-card-head\">\n          <div class=\"ai-mark\">\ud83d\udd35<\/div>\n          <div class=\"ai-info\">\n            <div class=\"ai-name\">Open Evidence<\/div>\n            <div class=\"ai-desc\">IA cl\u00ednica basada en evidencia<\/div>\n          <\/div>\n        <\/div>\n        <div class=\"ai-card-body\">\n          <div class=\"ai-preview\" id=\"prev-oe\">Genera un prompt para ver la vista previa\u2026<\/div>\n          <button class=\"btn-launch\" id=\"btn-oe\" onclick=\"launchAI('oe')\">\u25b6 Abrir Open Evidence<\/button>\n          <div class=\"ai-paste-note\">openevidence.com \u00b7 pega con <span id=\"paste-hint-oe\">Ctrl+V<\/span><\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"ai-card ai-card-kl\">\n        <div class=\"ai-card-head\">\n          <div class=\"ai-mark\">\ud83d\udfe2<\/div>\n          <div class=\"ai-info\">\n            <div class=\"ai-name\">Kleia AI<\/div>\n            <div class=\"ai-desc\">Asistente cl\u00ednico inteligente<\/div>\n          <\/div>\n        <\/div>\n        <div class=\"ai-card-body\">\n          <div class=\"ai-preview\" id=\"prev-kl\">Genera un prompt para ver la vista previa\u2026<\/div>\n          <button class=\"btn-launch\" id=\"btn-kl\" onclick=\"launchAI('kl')\">\u25b6 Abrir Kleia AI<\/button>\n          <div class=\"ai-paste-note\">kleia.ai \u00b7 pega con <span id=\"paste-hint-kl\">Ctrl+V<\/span><\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"ai-card ai-card-vh\">\n        <div class=\"ai-card-head\">\n          <div class=\"ai-mark\">\ud83d\udfe3<\/div>\n          <div class=\"ai-info\">\n            <div class=\"ai-name\">Vera Health<\/div>\n            <div class=\"ai-desc\">IA m\u00e9dica en espa\u00f1ol<\/div>\n          <\/div>\n        <\/div>\n        <div class=\"ai-card-body\">\n          <div class=\"ai-preview\" id=\"prev-vh\">Genera un prompt para ver la vista previa\u2026<\/div>\n          <button class=\"btn-launch\" id=\"btn-vh\" onclick=\"launchAI('vh')\">\u25b6 Abrir Vera Health<\/button>\n          <div class=\"ai-paste-note\">verahealth.ai \u00b7 pega con <span id=\"paste-hint-vh\">Ctrl+V<\/span><\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"export-strip\">\n        <span class=\"export-strip-label\">\ud83d\udcbe Exportar todos los prompts<\/span>\n        <button class=\"btn-export\" onclick=\"exportTxt()\">\u2b07 .txt<\/button>\n      <\/div>\n\n    <\/div>\n\n  <\/div><!-- \/scr-ai -->\n\n<\/div><!-- \/shell -->\n\n<!-- \u2550\u2550 BOTTOM TABBAR \u2550\u2550 -->\n<nav class=\"tabbar\">\n  <button class=\"tab on\" id=\"tab-form\" onclick=\"navTo('form',this)\">\n    <span class=\"tab-icon\">\ud83d\udccb<\/span>\n    <span class=\"tab-lbl\">Formulario<\/span>\n  <\/button>\n  <button class=\"tab\" id=\"tab-prompts\" onclick=\"navTo('prompts',this)\">\n    <span class=\"tab-icon\">\ud83d\udcdd<\/span>\n    <span class=\"tab-lbl\">Prompts<\/span>\n  <\/button>\n  <button class=\"tab\" id=\"tab-ai\" onclick=\"navTo('ai',this)\">\n    <span class=\"tab-icon\">\ud83d\ude80<\/span>\n    <span class=\"tab-lbl\">Enviar<\/span>\n  <\/button>\n<\/nav>\n\n<script>\n\/* \u2500\u2500\u2500 DARK MODE \u2500\u2500\u2500 *\/\nfunction toggleDark(){\n  document.body.classList.toggle('dark');\n  document.getElementById('btn-dark').textContent =\n    document.body.classList.contains('dark') ? '\u2600\ufe0f' : '\ud83c\udf19';\n}\n\n\/* \u2500\u2500\u2500 iOS detection \u2500\u2500\u2500 *\/\nconst isIOS = \/iPad|iPhone|iPod\/.test(navigator.userAgent);\nconst pasteHint = isIOS ? 'mant\u00e9n pulsado \u2192 Pegar' : 'Ctrl+V';\n['oe','kl','vh'].forEach(id => {\n  const el = document.getElementById('paste-hint-' + id);\n  if(el) el.textContent = pasteHint;\n});\n\n\/* \u2500\u2500\u2500 NAVIGATION \u2500\u2500\u2500 *\/\nconst screens = { form:'scr-form', prompts:'scr-prompts', ai:'scr-ai' };\nlet current = 'form';\n\nfunction navTo(name, btn){\n  if(name === current) return;\n  const prev = document.getElementById(screens[current]);\n  const next = document.getElementById(screens[name]);\n  const order = ['form','prompts','ai'];\n  const goRight = order.indexOf(name) > order.indexOf(current);\n\n  \/\/ Animate out\n  prev.classList.add(goRight ? 'off-left' : 'off-right');\n  \/\/ Prepare next\n  next.classList.remove('off-left','off-right');\n\n  \/\/ Update tabs\n  document.querySelectorAll('.tab').forEach(t => t.classList.remove('on'));\n  btn.classList.add('on');\n  current = name;\n}\n\n\/* \u2500\u2500\u2500 SWIPE \u2500\u2500\u2500 *\/\nlet tx = 0, ty = 0;\ndocument.addEventListener('touchstart', e => {\n  tx = e.touches[0].clientX;\n  ty = e.touches[0].clientY;\n}, {passive:true});\ndocument.addEventListener('touchend', e => {\n  const dx = e.changedTouches[0].clientX - tx;\n  const dy = e.changedTouches[0].clientY - ty;\n  if(Math.abs(dx) > Math.abs(dy)*1.4 && Math.abs(dx) > 55){\n    const order = ['form','prompts','ai'];\n    const idx = order.indexOf(current);\n    if(dx < 0 &#038;&#038; idx < order.length-1) navTo(order[idx+1], document.getElementById('tab-'+order[idx+1]));\n    else if(dx > 0 && idx > 0) navTo(order[idx-1], document.getElementById('tab-'+order[idx-1]));\n  }\n}, {passive:true});\n\n\/* \u2500\u2500\u2500 MODULE SWITCH \u2500\u2500\u2500 *\/\nfunction switchMod(mod, btn){\n  document.getElementById('mod-clinico').style.display = mod === 'clinico' ? 'flex' : 'none';\n  document.getElementById('mod-investigacion').style.display = mod === 'investigacion' ? 'flex' : 'none';\n  document.querySelectorAll('.mod-btn').forEach(b => b.classList.remove('on'));\n  btn.classList.add('on');\n  if(mod === 'investigacion') buildPicoFields();\n}\n\n\/* \u2500\u2500\u2500 SECTION TOGGLE \u2500\u2500\u2500 *\/\nfunction toggleSec(h){\n  h.classList.toggle('shut');\n  h.nextElementSibling.classList.toggle('gone');\n}\n\n\/* \u2500\u2500\u2500 CHECKBOX \u2500\u2500\u2500 *\/\nfunction toggleChk(el){\n  el.classList.toggle('on');\n  el.querySelector('input').checked = el.classList.contains('on');\n}\n\n\/* \u2500\u2500\u2500 ROL OTRO \u2500\u2500\u2500 *\/\nfunction chkOtro(){\n  document.getElementById('otro-wrap').style.display =\n    document.getElementById('rol').value === 'otro' ? 'block' : 'none';\n}\n\n\/* \u2500\u2500\u2500 ANON CHECK \u2500\u2500\u2500 *\/\nconst FORBIDDEN = ['nombre','apellido','dni','nif','fecha de nacimiento','direcci\u00f3n','tel\u00e9fono','telefono','email','correo','nhc','historia cl\u00ednica','n\u00famero de historia','sr\\\\.','sra\\\\.'];\nfunction checkAnon(el){\n  const v = el.value.toLowerCase();\n  document.getElementById('anon-alert').classList.toggle('on',\n    FORBIDDEN.some(w => new RegExp(w).test(v)));\n}\n\n\/* \u2500\u2500\u2500 PROMPT TABS \u2500\u2500\u2500 *\/\nfunction switchPtab(tab, btn){\n  document.querySelectorAll('.ppane').forEach(p => p.classList.remove('on'));\n  document.querySelectorAll('.ptab').forEach(t => t.classList.remove('on'));\n  document.getElementById('ppane-' + tab).classList.add('on');\n  btn.classList.add('on');\n}\n\/\/ Safe tab switch by data-tab attribute (no fragile index)\nfunction switchPtabById(tab){\n  document.querySelectorAll('.ppane').forEach(p => p.classList.remove('on'));\n  document.querySelectorAll('.ptab').forEach(t => t.classList.remove('on'));\n  const pane = document.getElementById('ppane-' + tab);\n  if(pane) pane.classList.add('on');\n  const btn = document.querySelector('.ptab[data-tab=\"' + tab + '\"]');\n  if(btn) btn.classList.add('on');\n}\n\n\/* \u2500\u2500\u2500 COPY \u2500\u2500\u2500 *\/\nasync function copyText(id, btn){\n  const el = document.getElementById(id);\n  if(!el || !el.textContent.trim()) return;\n  try{ await navigator.clipboard.writeText(el.textContent); }\n  catch(e){\n    const ta = document.createElement('textarea');\n    ta.value = el.textContent;\n    document.body.appendChild(ta); ta.select();\n    document.execCommand('copy'); document.body.removeChild(ta);\n  }\n  const orig = btn.textContent;\n  btn.textContent = '\u2705 Copiado';\n  setTimeout(() => btn.textContent = orig, 2000);\n}\n\n\/* \u2500\u2500\u2500 SET RESULT \u2500\u2500\u2500 *\/\nfunction setResult(k, text){\n  document.getElementById('empty-' + k).style.display = 'none';\n  document.getElementById('res-' + k).style.display = 'block';\n  document.getElementById('txt-' + k).textContent = text;\n  document.getElementById('cc-' + k).textContent = text.length + ' caracteres';\n}\n\n\/* \u2500\u2500\u2500 GENERATE PROMPTS \u2500\u2500\u2500 *\/\nfunction getTareas(){\n  return [...document.querySelectorAll('.chk.on input')].map(cb => cb.value);\n}\n\nfunction generatePrompts(){\n  const rolSel = document.getElementById('rol').value;\n  const rol = rolSel === 'otro' ? document.getElementById('rol-otro').value : rolSel;\n  const edad = document.getElementById('edad').value;\n  const sexo = document.getElementById('sexo').value;\n  const nivel = document.getElementById('nivel').value;\n  const ctx = document.getElementById('contexto').value.trim();\n  const formato = document.getElementById('formato').value;\n  const tono = document.getElementById('tono').value;\n  const tareas = getTareas();\n\n  \/\/ Convencional\n  let conv = '';\n  if(ctx) conv += ctx + '\\n\\n';\n  conv += tareas.length\n    ? 'Por favor proporciona informaci\u00f3n sobre: ' + tareas.join(', ') + '.'\n    : 'Proporciona un an\u00e1lisis cl\u00ednico de este caso.';\n\n  \/\/ Contextual\n  let ctxP = '';\n  if(rol) ctxP += `Act\u00faa como ${rol}.\\n\\n`;\n  ctxP += 'CONTEXTO CL\u00cdNICO ANONIMIZADO:\\n';\n  if(edad) ctxP += `\u2022 Rango etario: ${edad}\\n`;\n  if(sexo) ctxP += `\u2022 Sexo biol\u00f3gico: ${sexo}\\n`;\n  if(nivel) ctxP += `\u2022 Nivel asistencial: ${nivel}\\n`;\n  if(ctx) ctxP += `\u2022 Descripci\u00f3n: ${ctx}\\n`;\n  if(tareas.length){ ctxP += '\\nTAREAS SOLICITADAS:\\n'; tareas.forEach((t,i) => ctxP += `${i+1}. ${t}\\n`); }\n  if(formato) ctxP += `\\nFORMATO: ${formato}.\\n`;\n  if(tono) ctxP += `TONO: ${tono}.\\n`;\n\n  \/\/ CoT\n  let cotP = ctxP + '\\nINSTRUCCI\u00d3N \u2014 Chain of Thought:\\nRazona en voz alta paso a paso:\\n\\n';\n  cotP += 'PASO 1 \u2014 S\u00edntoma principal:\\nIdentifica el s\u00edntoma o motivo de consulta principal.\\n\\n';\n  cotP += 'PASO 2 \u2014 An\u00e1lisis de antecedentes:\\nConsidera antecedentes (personales, familiares, farmacol\u00f3gicos, al\u00e9rgicos).\\n\\n';\n  cotP += 'PASO 3 \u2014 Diagn\u00f3stico diferencial:\\nLista posibles causas de m\u00e1s a menos probable.\\n\\n';\n  cotP += 'PASO 4 \u2014 Priorizaci\u00f3n diagn\u00f3stica:\\nJustifica qu\u00e9 diagn\u00f3sticos priorizas seg\u00fan probabilidad y gravedad.\\n\\n';\n  cotP += 'PASO 5 \u2014 Pruebas recomendadas:\\nIndica qu\u00e9 exploraciones confirmar\u00edan o descartar\u00edan cada hip\u00f3tesis.\\n\\n';\n  cotP += 'No saltes a conclusiones sin justificar cada paso.';\n  if(formato) cotP += `\\n\\nFormato de conclusi\u00f3n: ${formato}.`;\n\n  setResult('conv', conv);\n  setResult('ctx', ctxP);\n  setResult('cot', cotP);\n\n  refreshPreviews();\n\n  \/\/ Navigate to prompts\n  navTo('prompts', document.getElementById('tab-prompts'));\n  navTo('prompts', document.getElementById('tab-prompts'));\n  setTimeout(() => switchPtabById('cot'), 50);\n}\n\n\/* \u2500\u2500\u2500 CLEAR \u2500\u2500\u2500 *\/\nfunction clearForm(){\n  ['rol','edad','sexo','nivel','contexto','formato','tono'].forEach(id => {\n    const e = document.getElementById(id); if(e) e.value = '';\n  });\n  document.getElementById('otro-wrap').style.display = 'none';\n  document.getElementById('rol-otro').value = '';\n  document.getElementById('cot-on').checked = true;\n  document.getElementById('anon-alert').classList.remove('on');\n  document.querySelectorAll('.chk').forEach(c => {\n    c.classList.remove('on'); c.querySelector('input').checked = false;\n  });\n  ['conv','ctx','cot'].forEach(k => {\n    document.getElementById('empty-' + k).style.display = '';\n    document.getElementById('res-' + k).style.display = 'none';\n    document.getElementById('txt-' + k).textContent = '';\n  });\n}\n\n\/* \u2500\u2500\u2500 AI \u2500\u2500\u2500 *\/\nconst AI_URLS = {\n  oe:'https:\/\/www.openevidence.com\/',\n  kl:'https:\/\/kleia.ai\/',\n  vh:'https:\/\/www.verahealth.ai\/es\/home'\n};\n\nfunction getActivePrompt(){\n  const sel = document.getElementById('ai-sel').value;\n  const el = document.getElementById('txt-' + sel);\n  return el ? el.textContent.trim() : '';\n}\n\nfunction refreshPreviews(){\n  const text = getActivePrompt() || 'Genera un prompt para ver la vista previa\u2026';\n  ['oe','kl','vh'].forEach(id => {\n    document.getElementById('prev-' + id).textContent = text;\n  });\n}\n\nasync function launchAI(id){\n  const text = getActivePrompt();\n  if(!text){ alert('Primero genera un prompt.'); return; }\n  const btn = document.getElementById('btn-' + id);\n  const orig = btn.innerHTML;\n  try{ await navigator.clipboard.writeText(text); }\n  catch(e){\n    const ta = document.createElement('textarea');\n    ta.value = text; document.body.appendChild(ta); ta.select();\n    document.execCommand('copy'); document.body.removeChild(ta);\n  }\n  btn.innerHTML = '\u2705 Copiado \u2014 abriendo\u2026'; btn.classList.add('done');\n  setTimeout(() => {\n    window.open(AI_URLS[id], '_blank');\n    btn.innerHTML = orig; btn.classList.remove('done');\n  }, 800);\n}\n\n\/* \u2500\u2500\u2500 MESH \u2500\u2500\u2500 *\/\nfunction generateMesh(){\n  const q = document.getElementById('mesh-q').value.trim();\n  if(!q){ alert('Introduce una pregunta cl\u00ednica.'); return; }\n  const study = document.getElementById('mesh-study').value;\n  const yr = document.getElementById('mesh-yr').value;\n  const lang = document.getElementById('mesh-lang').value;\n  const words = q.toLowerCase().split(\/\\s+\/)\n    .filter(w => w.length > 4 && !['sobre','frente','entre','paciente','pacientes','eficaz','tratamiento','versus'].includes(w));\n  const meshTerms = words.slice(0,4).map(w => `\"${w.charAt(0).toUpperCase()+w.slice(1)}\"[MeSH Terms]`);\n  let str = `(${meshTerms.join('\\nAND ')})`;\n  if(study) str += `\\nAND \"${study}\"[Publication Type]`;\n  if(yr) str += `\\nAND ${yr}:${new Date().getFullYear()}[Date - Publication]`;\n  if(lang === 'Espa\u00f1ol') str += '\\nAND \"Spanish\"[Language]';\n  else if(lang === 'Ingl\u00e9s') str += '\\nAND \"English\"[Language]';\n  else if(lang === 'Ingl\u00e9s + Espa\u00f1ol') str += '\\nAND (\"English\"[Language] OR \"Spanish\"[Language])';\n  const result = `PREGUNTA:\\n${q}\\n\\nT\u00c9RMINOS MeSH SUGERIDOS:\\n${meshTerms.map(t=>'\u2022 '+t.replace(\/\\[MeSH Terms\\]\/g,'')).join('\\n')}\\n\\nSTRING PUBMED:\\n${str}\\n\\nFILTROS:\\n${study?'\u2022 Tipo: '+study+'\\n':''}${yr?'\u2022 Desde: '+yr+'\\n':''}${lang?'\u2022 Idioma: '+lang+'\\n':''}\\nPROMPT PARA IA:\\nAct\u00faa como especialista en metodolog\u00eda de investigaci\u00f3n cl\u00ednica. Construye una estrategia de b\u00fasqueda bibliogr\u00e1fica para:\\n\\n\"${q}\"\\n\\n1. Conceptos clave\\n2. T\u00e9rminos MeSH precisos\\n3. Operadores booleanos\\n4. String final para PubMed\\n5. Bases de datos adicionales (Cochrane, Embase, LILACS)`;\n  document.getElementById('txt-mesh').textContent = result;\n  document.getElementById('cc-mesh').textContent = result.length + ' caracteres';\n  document.getElementById('empty-inv').style.display = 'none';\n  document.getElementById('res-mesh').style.display = 'block';\n  navTo('prompts', document.getElementById('tab-prompts'));\n  setTimeout(() => switchPtabById('inv'), 50);\n}\n\n\/* \u2500\u2500\u2500 PICO \u2500\u2500\u2500 *\/\nconst picoConf = {\n  PICO:[{l:'P',n:'Poblaci\u00f3n',p:'Ej: Adultos >65 a\u00f1os con HTA'},{l:'I',n:'Intervenci\u00f3n',p:'Ej: Inhibidores de la ECA'},{l:'C',n:'Comparaci\u00f3n',p:'Ej: ARA-II o placebo'},{l:'O',n:'Outcome',p:'Ej: Reducci\u00f3n de eventos CV'}],\n  PECO:[{l:'P',n:'Poblaci\u00f3n',p:'Ej: Trabajadores expuestos a amianto'},{l:'E',n:'Exposici\u00f3n',p:'Ej: Fibras de amianto'},{l:'C',n:'Comparaci\u00f3n',p:'Ej: No expuestos'},{l:'O',n:'Outcome',p:'Ej: Incidencia de mesotelioma'}],\n  SPIDER:[{l:'S',n:'Sample',p:'Ej: Pacientes con c\u00e1ncer'},{l:'PI',n:'Phenomenon of Interest',p:'Ej: Experiencia de quimioterapia'},{l:'D',n:'Design',p:'Ej: Entrevistas cualitativas'},{l:'E',n:'Evaluation',p:'Ej: Calidad de vida'},{l:'R',n:'Research type',p:'Ej: Cualitativo \/ Mixto'}]\n};\n\nfunction buildPicoFields(){\n  const type = document.getElementById('pico-type').value;\n  document.getElementById('pico-fields').innerHTML = picoConf[type].map(f => `\n    <div class=\"pico-field\">\n      <div style=\"display:flex;align-items:baseline;gap:5px\">\n        <span class=\"pico-l\">${f.l}<\/span>\n        <span class=\"pico-n\">${f.n}<\/span>\n      <\/div>\n      <input type=\"text\" id=\"pf-${f.l.replace('\/','_')}\" placeholder=\"${f.p}\" style=\"margin-top:6px\">\n    <\/div>`).join('');\n}\n\/\/ Build PICO fields only when element is visible\nif(document.getElementById('pico-fields')) buildPicoFields();\n\nfunction generatePico(){\n  const type = document.getElementById('pico-type').value;\n  const conf = picoConf[type];\n  const vals = {};\n  conf.forEach(f => {\n    const e = document.getElementById('pf-' + f.l.replace('\/','_'));\n    vals[f.l] = e ? e.value.trim() : '';\n  });\n  let res = `PREGUNTA DE INVESTIGACI\u00d3N (${type})\\n${'\u2500'.repeat(40)}\\n\\n`;\n  conf.forEach(f => res += `[${f.l}] ${f.n}:\\n${vals[f.l]||'(no especificado)'}\\n\\n`);\n  if(type==='PICO') res += `PREGUNTA:\\nEn ${vals['P']||'___'}, \u00bf${vals['I']||'___'} comparado con ${vals['C']||'___'} produce ${vals['O']||'___'}?\\n\\nDISE\u00d1O: RCT \/ Revisi\u00f3n sistem\u00e1tica\\n\\n`;\n  else if(type==='PECO') res += `PREGUNTA:\\nEn ${vals['P']||'___'}, \u00bfla exposici\u00f3n a ${vals['E']||'___'} comparada con ${vals['C']||'___'} se asocia con ${vals['O']||'___'}?\\n\\nDISE\u00d1O: Cohortes \/ Caso-control\\n\\n`;\n  else res += `PREGUNTA:\\n\u00bfC\u00f3mo experimenta ${vals['S']||'___'} el fen\u00f3meno ${vals['PI']||'___'} (${vals['D']||'___'}) evaluando ${vals['E']||'___'} (${vals['R']||'___'})?\\n\\nDISE\u00d1O: Cualitativo \/ fenomenol\u00f3gico\\n\\n`;\n  res += `PROMPT PARA IA:\\nAct\u00faa como metod\u00f3logo experto. Analiza esta pregunta ${type}:\\n${conf.map(f=>`${f.l}: ${vals[f.l]||'(vac\u00edo)'}`).join('\\n')}\\n\\n1. Valida la formulaci\u00f3n\\n2. Detecta posibles sesgos\\n3. Recomienda dise\u00f1o de estudio\\n4. Sugiere variables de medida`;\n  document.getElementById('pico-h-title').textContent = `\ud83d\udcca Pregunta ${type}`;\n  document.getElementById('txt-pico').textContent = res;\n  document.getElementById('cc-pico').textContent = res.length + ' caracteres';\n  document.getElementById('empty-inv').style.display = 'none';\n  document.getElementById('res-pico').style.display = 'block';\n  navTo('prompts', document.getElementById('tab-prompts'));\n  setTimeout(() => switchPtabById('inv'), 50);\n}\n\nfunction clearInv(){\n  ['mesh-q','mesh-study','mesh-yr','mesh-lang'].forEach(id => {\n    const e = document.getElementById(id); if(e) e.value = '';\n  });\n  document.getElementById('pico-type').value = 'PICO';\n  buildPicoFields();\n  ['mesh','pico'].forEach(k => {\n    const r = document.getElementById('res-'+k), t = document.getElementById('txt-'+k), c = document.getElementById('cc-'+k);\n    if(r) r.style.display = 'none';\n    if(t) t.textContent = '';\n    if(c) c.textContent = '';\n  });\n  document.getElementById('empty-inv').style.display = '';\n}\n\n\/* \u2500\u2500\u2500 EXPORT \u2500\u2500\u2500 *\/\nfunction exportTxt(){\n  const parts = [`PROMPTCLIN \u2014 Exportaci\u00f3n\\nFecha: ${new Date().toLocaleString('es-ES')}\\n${'\u2550'.repeat(60)}\\n`];\n  [['conv','PROMPT CONVENCIONAL'],['ctx','PROMPT CONTEXTUAL'],['cot','PROMPT COT'],['mesh','ESTRATEGIA MESH'],['pico','PREGUNTA ESTRUCTURADA']].forEach(([k,n]) => {\n    const e = document.getElementById('txt-' + k);\n    if(e && e.textContent.trim()) parts.push(`\\n${'\u2550'.repeat(60)}\\n${n}\\n${'\u2550'.repeat(60)}\\n${e.textContent}\\n`);\n  });\n  if(parts.length < 2){ alert('Genera al menos un prompt antes de exportar.'); return; }\n  const b = new Blob([parts.join('\\n')], {type:'text\/plain;charset=utf-8'});\n  const a = document.createElement('a');\n  a.href = URL.createObjectURL(b);\n  a.download = `PromptClin_${new Date().toISOString().slice(0,10)}.txt`;\n  a.click();\n}\n<\/script>\n<\/body>\n<\/html>\n\n","protected":false},"excerpt":{"rendered":"<p>PromptClin \ud83e\udde0 PromptClin LOCAL \ud83c\udf19 \ud83e\ude7a Cl\u00ednico \ud83d\udd2c Investigaci\u00f3n \ud83d\udc64 Rol \/ Perspectiva \u25bc Perfil profesional \u2014 Seleccionar \u2014M\u00e9dico cl\u00ednico especialistaM\u00e9dico de atenci\u00f3n primariaM\u00e9dico residenteInvestigador cl\u00ednicoDocente de medicinaEnfermero\/a especialistaFarmac\u00e9utico cl\u00ednicoOtro (especificar) Especificar rol \ud83d\udd12 Contexto Anonimizado \u25bc Edad \u2014&lt; 1 a\u00f1o1\u201312 a\u00f1os13\u201317 a\u00f1os18\u201340 a\u00f1os41\u201360 a\u00f1os&gt; 60 a\u00f1os Sexo \u2014MasculinoFemeninoNo especificado Nivel asistencial \u2014 Seleccionar \u2014Atenci\u00f3n<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-40839","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/doctorcepeda.com.co\/index.php\/wp-json\/wp\/v2\/pages\/40839","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/doctorcepeda.com.co\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/doctorcepeda.com.co\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/doctorcepeda.com.co\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/doctorcepeda.com.co\/index.php\/wp-json\/wp\/v2\/comments?post=40839"}],"version-history":[{"count":2,"href":"https:\/\/doctorcepeda.com.co\/index.php\/wp-json\/wp\/v2\/pages\/40839\/revisions"}],"predecessor-version":[{"id":40841,"href":"https:\/\/doctorcepeda.com.co\/index.php\/wp-json\/wp\/v2\/pages\/40839\/revisions\/40841"}],"wp:attachment":[{"href":"https:\/\/doctorcepeda.com.co\/index.php\/wp-json\/wp\/v2\/media?parent=40839"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}