/* =========================================================
PLANTILLA DIGITAL PERSONAL PRO V2.1
HTML + CSS + JS puro. Sin backend. Sin frameworks.
========================================================= */
:root{
  --app-bg:#f5f1e8;
  --panel:#fffaf2;
  --panel-2:#ffffff;
  --ink:#231f20;
  --muted:#746c62;
  --line:#e6d8c5;
  --primary:#b88746;
  --primary-dark:#76522f;
  --accent:#2d6cdf;
  --soft:#efe4d0;
  --danger:#a43f3f;
  --ok:#2f7a4f;
  --warning:#a56b20;
  --radius:22px;
  --shadow:0 20px 60px rgba(57,42,25,.10);
  --shadow-sm:0 10px 30px rgba(57,42,25,.08);
  --title-font: Georgia, 'Times New Roman', serif;
  --body-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --doc-primary:#b88746;
  --doc-accent:#76522f;
  --doc-bg:#fffaf2;
  --doc-paper:#fffefb;
  --doc-ink:#231f20;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(135deg,#fbf6ed 0%,#eee2cf 100%);font-family:var(--body-font);color:var(--ink);line-height:1.55}
a{color:inherit}.hidden{display:none!important}.hidden-block{display:none!important}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 22px;background:rgba(255,250,242,.91);backdrop-filter:blur(18px);border-bottom:1px solid rgba(183,137,70,.20)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:var(--shadow-sm)}.brand h1{font-family:var(--title-font);font-size:21px;line-height:1.1;margin:0}.brand p{font-size:12px;color:var(--muted);margin:2px 0 0}.top-actions,.button-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.button-row.stacked{align-items:stretch;flex-direction:column}.btn{border:0;border-radius:999px;padding:10px 14px;font-weight:800;cursor:pointer;transition:.2s;box-shadow:0 8px 22px rgba(0,0,0,.06);font-family:var(--body-font);font-size:13px}.btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.10)}.btn:active{transform:translateY(0)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff}.btn-dark{background:#211d1b;color:#fff}.btn-secondary{background:#fff;border:1px solid var(--line);color:var(--ink)}.btn-soft{background:var(--soft);color:var(--primary-dark)}.btn-small{padding:7px 10px;font-size:12px}.btn-mini{padding:7px 10px;font-size:11px;background:#fff;border:1px solid var(--line);box-shadow:none}.layout{display:grid;grid-template-columns:390px 1fr;gap:18px;padding:18px;align-items:start}.sidebar{position:sticky;top:84px;max-height:calc(100vh - 100px);overflow:auto;padding-right:4px}.workspace{display:grid;gap:18px}.panel{background:rgba(255,250,242,.95);border:1px solid rgba(183,137,70,.16);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.panel.clean{box-shadow:none;margin-bottom:14px}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.panel-header h2{font-family:var(--title-font);margin:0;font-size:21px}.panel-header p{margin:3px 0 0;font-size:13px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:grid;gap:5px}.field.full{grid-column:1/-1}.field label{font-size:12px;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.04em}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:11px 12px;font:inherit;color:var(--ink);outline:none;transition:.15s}.field input:focus,.field textarea:focus,.field select:focus,#masterContent:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(184,135,70,.12)}.field textarea{resize:vertical}.small-area{min-height:76px}.prompt-area{min-height:160px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.quick-tabs,.language-tabs{display:grid;gap:7px}.quick-tabs button,.language-tabs button{border:1px solid var(--line);background:#fff;border-radius:16px;padding:10px;text-align:left;cursor:pointer;font-weight:900;color:var(--ink);transition:.16s}.quick-tabs button small{display:block;color:var(--muted);font-weight:600;margin-top:2px}.quick-tabs button.active,.language-tabs button.active{border-color:var(--primary);background:linear-gradient(135deg,#fff8ee,#f4dfbf);box-shadow:0 8px 24px rgba(184,135,70,.12)}.language-tabs{grid-template-columns:repeat(5,1fr)}.language-tabs button{text-align:center;padding:9px 4px}.notice{border:1px dashed rgba(184,135,70,.35);background:#fff8eb;border-radius:16px;padding:12px;display:grid;gap:5px;font-size:13px;color:var(--muted)}.notice.compact{font-size:12px;margin-top:10px}.notice strong{color:var(--ink)}code,.kbd{background:#fff;border:1px solid var(--line);border-radius:8px;padding:1px 5px;color:#553719}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.stats{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:12px;font-weight:900;color:var(--muted)}#masterContent{width:100%;min-height:460px;border:1px solid var(--line);border-radius:20px;padding:18px;background:#fffefb;color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px;line-height:1.65;resize:vertical;outline:none}.block-bar{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:10px}.preview-frame{background:#e7dccb;border:1px solid rgba(115,82,47,.16);border-radius:22px;padding:22px;overflow:auto}.preview-empty{min-height:360px;display:grid;place-items:center;text-align:center;color:var(--muted);background:#fff;border-radius:20px}.project-list{display:grid;gap:8px;margin:8px 0}.project-card{display:grid;gap:2px;border:1px solid var(--line);background:#fff;border-radius:15px;padding:10px;cursor:pointer}.project-card strong{font-size:13px}.project-card span{font-size:12px;color:var(--muted)}.footer-note{font-size:12px;color:var(--muted);margin:8px 0 0}.collapse-title{width:100%;border:0;background:transparent;font-family:var(--title-font);font-size:18px;font-weight:900;text-align:left;cursor:pointer;color:var(--ink);padding:0 0 10px}.collapse-title::after{content:'+';float:right;font-family:var(--body-font);font-size:18px}.collapsible.open .collapse-title::after{content:'–'}.translation-grid{grid-template-columns:210px 1fr}.modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(24,20,17,.45);backdrop-filter:blur(8px)}.modal.show{display:flex}.modal-box{width:min(900px,96vw);max-height:86vh;overflow:auto;background:#fffaf2;border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.25);padding:20px;border:1px solid var(--line)}.validation-list{display:grid;gap:8px}.validation-item{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:10px;background:#fff}.validation-item.ok strong{color:var(--ok)}.validation-item.warn strong{color:var(--warning)}.validation-item.error strong{color:var(--danger)}.reader-mode .no-print,.reader-mode .sidebar,.reader-mode .topbar,.reader-mode .workspace>.panel:not(.printable){display:none!important}.reader-mode .layout{display:block;padding:0}.reader-mode .preview-frame{border-radius:0;border:0;padding:0;background:#ddd}.reader-mode .panel.printable{border:0;border-radius:0;box-shadow:none;padding:0;background:transparent}

/* Documento renderizado */
.product-preview{--doc-primary:var(--primary);--doc-accent:var(--primary-dark);--doc-bg:#fffaf2;--doc-paper:#fffefb;--doc-ink:#231f20;font-family:var(--doc-body-font,var(--body-font));color:var(--doc-ink)}.product-document{max-width:980px;margin:0 auto}.doc-page{position:relative;background:var(--doc-paper);border-radius:20px;margin:0 auto 22px;padding:58px;box-shadow:0 18px 60px rgba(0,0,0,.08);overflow:hidden;min-height:900px}.size-a4 .doc-page{width:210mm;min-height:297mm}.size-letter .doc-page{width:8.5in;min-height:11in}.size-ebook .doc-page{width:794px;min-height:1123px}.size-web .doc-page{width:min(100%,980px);min-height:auto}.size-mobile .doc-page{width:min(100%,430px);min-height:760px;padding:32px}.size-slides .doc-page{width:min(100%,960px);min-height:540px;display:grid;align-content:center}.doc-cover{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center;background:linear-gradient(135deg,var(--doc-bg),#fff)}.cover-minimal .doc-cover{grid-template-columns:1fr;text-align:center}.cover-background .doc-cover{grid-template-columns:1fr;color:#fff;background:linear-gradient(135deg,rgba(35,31,32,.78),rgba(35,31,32,.45)),var(--cover-image,linear-gradient(135deg,var(--doc-primary),var(--doc-accent)));background-size:cover;background-position:center}.cover-background .doc-cover .doc-pill,.cover-background .doc-cover .doc-kicker{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.28);color:#fff}.cover-course .doc-cover{background:radial-gradient(circle at top right,rgba(45,108,223,.18),transparent 42%),linear-gradient(135deg,#f7faff,#fff)}.cover-recipe .doc-cover{background:radial-gradient(circle at bottom left,rgba(232,132,74,.18),transparent 40%),linear-gradient(135deg,#fff8ef,#fff)}.cover-report .doc-cover{background:linear-gradient(135deg,#f8f8f8,#fff);border-top:12px solid var(--doc-primary)}.doc-kicker{display:inline-flex;align-items:center;width:max-content;max-width:100%;border:1px solid rgba(184,135,70,.35);background:rgba(184,135,70,.10);border-radius:999px;padding:7px 12px;text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:900;color:var(--doc-accent);margin-bottom:18px}.doc-title{font-family:var(--doc-title-font,var(--title-font));font-size:clamp(44px,6vw,76px);line-height:.95;margin:0 0 18px;color:var(--doc-ink)}.doc-subtitle{font-size:20px;color:color-mix(in srgb,var(--doc-ink),#fff 30%);margin:0 0 24px;max-width:760px}.doc-meta{display:flex;flex-wrap:wrap;gap:8px}.doc-pill{display:inline-flex;border:1px solid rgba(184,135,70,.35);background:rgba(184,135,70,.08);border-radius:999px;padding:8px 12px;font-weight:900;font-size:12px;color:var(--doc-accent)}.doc-cover-image{margin:0}.doc-cover-image img{display:block;width:100%;border-radius:24px;box-shadow:0 22px 60px rgba(0,0,0,.16);object-fit:cover}.doc-lead{font-size:18px;color:color-mix(in srgb,var(--doc-ink),#fff 28%)}.doc-watermark{position:absolute;right:36px;bottom:24px;color:rgba(0,0,0,.22);font-size:12px;letter-spacing:.05em;text-transform:uppercase;z-index:1}.doc-watermark.big{right:auto;left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%) rotate(-25deg);font-size:96px;white-space:nowrap;color:rgba(0,0,0,.035);font-weight:900;pointer-events:none}.doc-page h2{font-family:var(--doc-title-font,var(--title-font));font-size:42px;line-height:1.05;margin:0 0 22px;color:var(--doc-ink)}.doc-page h3{font-family:var(--doc-title-font,var(--title-font));font-size:26px;margin:28px 0 8px;color:var(--doc-accent)}.doc-page p{font-size:17px;margin:0 0 14px}.doc-page ul,.doc-page ol{font-size:17px;margin:0 0 18px 20px;padding:0}.doc-page li{margin-bottom:7px}.doc-index{display:grid;gap:10px}.doc-index a{display:flex;justify-content:space-between;gap:14px;text-decoration:none;border:1px solid rgba(184,135,70,.22);background:rgba(184,135,70,.06);border-radius:16px;padding:14px 16px}.doc-section-number{font-family:var(--doc-title-font,var(--title-font));font-size:86px;line-height:1;color:rgba(184,135,70,.15);font-weight:900;margin-bottom:-16px}.doc-content img{max-width:100%;height:auto}.doc-image{margin:24px 0}.doc-image img{width:100%;border-radius:18px;box-shadow:0 12px 40px rgba(0,0,0,.08)}.doc-image figcaption{text-align:center;color:color-mix(in srgb,var(--doc-ink),#fff 40%);font-size:13px;margin-top:8px}blockquote{border-left:5px solid var(--doc-primary);padding:14px 18px;margin:20px 0;background:rgba(184,135,70,.08);border-radius:0 16px 16px 0;font-size:20px;font-family:var(--doc-title-font,var(--title-font))}.doc-cta,.doc-callout,.doc-testimonial,.doc-pricebox,.doc-bonus,.doc-faq,.doc-checklist,.doc-recipe,.doc-table-wrap{border:1px solid rgba(184,135,70,.24);border-radius:20px;padding:20px;margin:22px 0;background:linear-gradient(135deg,rgba(184,135,70,.10),rgba(255,255,255,.75))}.doc-cta{background:linear-gradient(135deg,var(--doc-primary),var(--doc-accent));color:#fff}.doc-cta h3,.doc-cta p{color:#fff}.doc-cta a{display:inline-flex;text-decoration:none;background:#fff;color:var(--doc-accent);border-radius:999px;padding:11px 16px;font-weight:900;margin-top:6px}.doc-pricebox{display:grid;gap:8px;background:linear-gradient(135deg,#fff,#fff8e8)}.doc-pricebox .price{font-family:var(--doc-title-font,var(--title-font));font-size:42px;color:var(--doc-accent);font-weight:900}.doc-bonus strong,.doc-callout strong,.doc-faq strong{color:var(--doc-accent)}.doc-table{width:100%;border-collapse:collapse;font-size:15px;background:#fff;border-radius:14px;overflow:hidden}.doc-table th,.doc-table td{border:1px solid rgba(184,135,70,.22);padding:10px;text-align:left}.doc-table th{background:rgba(184,135,70,.10);color:var(--doc-accent)}.page-break{break-before:page;page-break-before:always;height:1px}.landing-page .doc-page{min-height:auto}.landing-hero{padding:74px 58px;text-align:center}.landing-hero .doc-title{font-size:clamp(42px,8vw,88px)}.landing-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0}.benefit-card{border:1px solid rgba(184,135,70,.22);background:#fff;border-radius:18px;padding:18px}.course-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.course-card{border:1px solid rgba(184,135,70,.22);background:#fff;border-radius:18px;padding:20px}.check-row{display:flex;gap:10px;align-items:flex-start}.check-row::before{content:'✓';display:grid;place-items:center;min-width:24px;height:24px;border-radius:50%;background:var(--doc-primary);color:#fff;font-weight:900}.legal-small{font-size:13px!important;color:color-mix(in srgb,var(--doc-ink),#fff 38%)}

/* Temas */
.theme-editorial{--doc-primary:#b88746;--doc-accent:#76522f;--doc-bg:#fff3dd;--doc-paper:#fffefb;--doc-ink:#241d18}.theme-saas{--doc-primary:#4f46e5;--doc-accent:#0f172a;--doc-bg:#eef2ff;--doc-paper:#ffffff;--doc-ink:#101827}.theme-natural{--doc-primary:#4f7d45;--doc-accent:#2f4d2d;--doc-bg:#eef6e9;--doc-paper:#fffef8;--doc-ink:#1f2a1d}.theme-food{--doc-primary:#e8844a;--doc-accent:#7d3d20;--doc-bg:#fff0e4;--doc-paper:#fffdfa;--doc-ink:#2a1f18}.theme-luxury{--doc-primary:#c8a95d;--doc-accent:#111111;--doc-bg:#f5f2ea;--doc-paper:#ffffff;--doc-ink:#151515}.theme-academy{--doc-primary:#245b8f;--doc-accent:#173957;--doc-bg:#eef5fb;--doc-paper:#ffffff;--doc-ink:#111827}.theme-ai{--doc-primary:#7c3aed;--doc-accent:#0e7490;--doc-bg:#f4f0ff;--doc-paper:#ffffff;--doc-ink:#101827}.theme-fitness{--doc-primary:#16a34a;--doc-accent:#14532d;--doc-bg:#ecfdf5;--doc-paper:#ffffff;--doc-ink:#0f172a}.theme-finance{--doc-primary:#0f766e;--doc-accent:#164e63;--doc-bg:#ecfeff;--doc-paper:#ffffff;--doc-ink:#0f172a}.theme-spiritual{--doc-primary:#a855f7;--doc-accent:#6b21a8;--doc-bg:#faf5ff;--doc-paper:#ffffff;--doc-ink:#2e1065}.theme-kids{--doc-primary:#f59e0b;--doc-accent:#be123c;--doc-bg:#fff7ed;--doc-paper:#ffffff;--doc-ink:#3b2410}.theme-dark{--doc-primary:#60a5fa;--doc-accent:#f8fafc;--doc-bg:#0f172a;--doc-paper:#111827;--doc-ink:#f8fafc}.theme-dark .doc-page{box-shadow:0 18px 60px rgba(0,0,0,.35)}

/* Tipografías */
.font-classic{--doc-title-font:Georgia,'Times New Roman',serif;--doc-body-font:Inter,system-ui,sans-serif}.font-modern{--doc-title-font:Inter,system-ui,sans-serif;--doc-body-font:Inter,system-ui,sans-serif}.font-editorial{--doc-title-font:'Palatino Linotype',Palatino,Georgia,serif;--doc-body-font:Georgia,'Times New Roman',serif}.font-friendly{--doc-title-font:'Trebuchet MS',Inter,system-ui,sans-serif;--doc-body-font:'Segoe UI',Inter,system-ui,sans-serif}.font-minimal{--doc-title-font:Arial,Helvetica,sans-serif;--doc-body-font:Arial,Helvetica,sans-serif}.font-luxury{--doc-title-font:Didot,'Bodoni 72',Georgia,serif;--doc-body-font:Georgia,'Times New Roman',serif}.font-tech{--doc-title-font:ui-sans-serif,system-ui,sans-serif;--doc-body-font:ui-sans-serif,system-ui,sans-serif}.font-book{--doc-title-font:Cambria,Georgia,serif;--doc-body-font:Cambria,Georgia,serif}

@media(max-width:1180px){.layout{grid-template-columns:1fr}.sidebar{position:static;max-height:none}.size-a4 .doc-page,.size-letter .doc-page,.size-ebook .doc-page{width:100%}.doc-cover{grid-template-columns:1fr}.landing-benefits,.course-grid{grid-template-columns:1fr}}
@media(max-width:760px){.topbar{position:static;align-items:flex-start;flex-direction:column}.layout{padding:10px}.panel{padding:14px;border-radius:18px}.form-grid,.translation-grid{grid-template-columns:1fr}.editor-toolbar{align-items:flex-start;flex-direction:column}.doc-page{padding:32px;min-height:auto}.doc-title{font-size:42px}.doc-page h2{font-size:32px}.preview-frame{padding:10px}.language-tabs{grid-template-columns:repeat(5,1fr)}}
@media print{
  body{background:#fff!important}.no-print,.topbar,.sidebar,.workspace>.panel:not(.printable),.panel-header.no-print{display:none!important}.layout{display:block;padding:0}.workspace{display:block}.panel.printable{border:0;box-shadow:none;padding:0;background:#fff}.preview-frame{background:#fff;border:0;padding:0;overflow:visible}.product-document{max-width:none}.doc-page{box-shadow:none;border-radius:0;margin:0;break-after:page;page-break-after:always}.size-web .doc-page{width:210mm;min-height:297mm}.doc-watermark.big{color:rgba(0,0,0,.035)!important}
}


/* =========================================================
MÓDULO V2.1 · PLACEHOLDERS + PROMPTS CONSISTENTES
========================================================= */
.visual-lab-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
.visual-lab-grid.second-row{margin-top:14px}
.visual-card{background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:18px;padding:14px}
.visual-card h3{font-family:var(--title-font);font-size:18px;margin:0 0 12px}
.visual-actions{margin-top:12px}
.placeholder-list{display:grid;gap:9px;max-height:390px;overflow:auto;padding-right:4px}
.placeholder-item{border:1px solid var(--line);background:#fff;border-radius:16px;padding:11px;cursor:pointer;display:grid;gap:4px;transition:.16s}
.placeholder-item:hover,.placeholder-item.active{border-color:var(--primary);box-shadow:0 8px 24px rgba(184,135,70,.12)}
.placeholder-item strong{font-size:13px}
.placeholder-item span{font-size:12px;color:var(--muted)}
.placeholder-item small{font-size:11px;color:var(--muted);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.placeholder-status{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;background:#fff8eb;border:1px solid var(--line);color:var(--primary-dark)}
.placeholder-status.approved{background:#eefaf2;color:var(--ok)}
.placeholder-status.generated{background:#eef4ff;color:#2456ad}
.placeholder-status.pending{background:#fff7e8;color:var(--warning)}
.doc-image-placeholder{border:2px dashed rgba(184,135,70,.45);border-radius:18px;padding:20px;margin:20px 0;background:linear-gradient(135deg,rgba(255,248,235,.86),rgba(255,255,255,.9));display:grid;grid-template-columns:54px 1fr;gap:14px;align-items:center;color:var(--doc-ink)}
.doc-image-placeholder .placeholder-icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:rgba(184,135,70,.13);font-size:26px}
.doc-image-placeholder strong{display:block;font-size:17px;margin-bottom:3px}
.doc-image-placeholder span{display:block;font-size:12px;color:var(--muted);font-weight:800}
.doc-image-placeholder small{display:block;margin-top:7px;font-size:12px;line-height:1.45;color:var(--muted)}
.doc-image-final img{width:100%;border-radius:16px;display:block;box-shadow:0 14px 38px rgba(0,0,0,.10)}
.doc-image-final figcaption{font-size:12px;color:var(--muted);margin-top:7px;text-align:center}
@media (max-width:1100px){.visual-lab-grid{grid-template-columns:1fr}}


/* V2.2 — Constructor de fichas por nicho + bloques PRO */
.builder-lab { border: 1px solid rgba(78, 58, 31, .14); }
.builder-grid { display:grid; grid-template-columns: 1fr 1fr; gap:16px; }
.builder-card { background:rgba(255,255,255,.72); border:1px solid rgba(39,35,31,.09); border-radius:18px; padding:16px; box-shadow:0 10px 30px rgba(31,25,19,.05); }
.builder-card h3 { margin:0 0 12px; font-size:16px; }
.component-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.component-tags button { border:1px solid rgba(39,35,31,.12); background:#fffaf2; color:#4d3b29; padding:8px 10px; border-radius:999px; cursor:pointer; font-size:12px; }
.component-tags button:hover { transform:translateY(-1px); box-shadow:0 6px 18px rgba(0,0,0,.08); }
.doc-card-pro, .doc-lesson, .doc-offer { border:1px solid rgba(115,82,42,.16); background:linear-gradient(135deg, rgba(255,250,242,.96), rgba(255,255,255,.92)); border-radius:20px; padding:20px; margin:18px 0; box-shadow:0 10px 28px rgba(0,0,0,.05); }
.doc-card-pro h3, .doc-lesson h3, .doc-offer h3 { margin-top:6px; }
.doc-card-tag { display:inline-flex; align-items:center; gap:6px; font-size:11px; letter-spacing:.08em; text-transform:uppercase; font-weight:800; color:#8a5a1f; background:#fff4df; padding:6px 9px; border-radius:999px; }
.doc-offer { border-color:rgba(22,89,74,.18); background:linear-gradient(135deg, rgba(240,255,250,.95), rgba(255,255,255,.93)); }
.doc-offer .offer-promise { font-size:1.08em; font-weight:700; }
.doc-warning { border-left:5px solid #b45309; background:#fff7ed; padding:16px 18px; border-radius:14px; margin:16px 0; }
.doc-steps { display:grid; gap:12px; margin:18px 0; }
.step-row { display:grid; grid-template-columns:38px 1fr; align-items:start; gap:12px; background:#fff; border:1px solid rgba(39,35,31,.09); padding:12px; border-radius:14px; }
.step-row span { width:32px; height:32px; border-radius:50%; display:grid; place-items:center; background:#111827; color:white; font-weight:800; }
.step-row p { margin:5px 0 0; }
@media (max-width: 980px){ .builder-grid { grid-template-columns:1fr; } }


/* =========================
   V2.3/V2.4 - Importador Inteligente
   ========================= */
.importer-lab{
  border:1px solid rgba(40,40,40,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,247,240,.96));
}
.importer-grid{
  display:grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap:18px;
}
.importer-card{
  background:rgba(255,255,255,.78);
  border:1px solid rgba(30,30,30,.08);
  border-radius:18px;
  padding:16px;
  box-shadow:0 10px 30px rgba(0,0,0,.04);
}
.importer-card h3{ margin:0 0 12px; }
.importer-options{ margin-bottom:12px; }
.importer-textarea{
  width:100%;
  min-height:360px;
  resize:vertical;
  border:1px solid rgba(30,30,30,.12);
  border-radius:16px;
  padding:14px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size:13px;
  line-height:1.55;
  background:#fffdf8;
  color:#252525;
}
.importer-textarea.output{ background:#fbfbff; }
.toggle-field{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  color:#4b5563;
  background:#f8f5ed;
  border-radius:12px;
  padding:9px 10px;
}
.toggle-field input{ width:auto; }
.mini-report{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 12px;
}
.mini-report span{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:6px 10px;
  background:#f0ede6;
  color:#343434;
  font-size:12px;
  font-weight:700;
}
@media (max-width: 980px){
  .importer-grid{ grid-template-columns:1fr; }
  .importer-textarea{ min-height:260px; }
}


/* =========================
   V2.4 - Estudio de portadas + assets
   ========================= */
.cover-studio-lab{
  border:1px solid rgba(184,135,70,.16);
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,248,236,.94));
}
.cover-studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.cover-studio-grid.second-row{margin-top:16px}
.cover-studio-card{background:rgba(255,255,255,.78);border:1px solid rgba(39,35,31,.09);border-radius:18px;padding:16px;box-shadow:0 10px 30px rgba(0,0,0,.04)}
.cover-studio-card h3{margin:0 0 12px;font-family:var(--title-font);font-size:17px}
.asset-kit-preview{margin-top:12px;background:#fff8eb;border:1px solid rgba(184,135,70,.18);border-radius:14px;padding:12px;font-size:13px;color:#4a3724;display:flex;gap:6px;flex-wrap:wrap}
.asset-map-list{display:grid;gap:10px;max-height:330px;overflow:auto;padding-right:4px}
.asset-map-item{background:#fff;border:1px solid rgba(39,35,31,.09);border-radius:14px;padding:11px;display:grid;gap:3px}
.asset-map-item strong{font-size:13px}.asset-map-item span,.asset-map-item small{font-size:12px;color:var(--muted)}
.doc-logo{max-width:112px;max-height:58px;object-fit:contain;margin-bottom:18px}.cover-badge{display:inline-flex;width:max-content;border:1px solid color-mix(in srgb,var(--doc-primary),#fff 65%);background:color-mix(in srgb,var(--doc-primary),#fff 86%);color:var(--doc-accent);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin:8px 0 12px}.cover-edition{font-size:13px;font-weight:800;color:color-mix(in srgb,var(--doc-ink),#fff 36%);margin-top:22px}.doc-cover-ornament{min-height:310px;border-radius:28px;background:linear-gradient(135deg,color-mix(in srgb,var(--doc-primary),#fff 72%),color-mix(in srgb,var(--doc-accent),#fff 82%));display:grid;place-items:center;box-shadow:0 20px 50px rgba(0,0,0,.12)}.doc-cover-ornament span{font-family:var(--doc-title-font);font-size:80px;font-weight:900;color:#fff;text-shadow:0 4px 18px rgba(0,0,0,.16)}.doc-mockup img{width:100%;border-radius:28px;box-shadow:0 24px 70px rgba(0,0,0,.18)}
.cover-layout-fullbleed .doc-cover{position:relative;color:#fff;overflow:hidden}.cover-layout-fullbleed .doc-cover:before,.cover-background .doc-cover:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.22)),var(--cover-image);background-size:cover;background-position:center;z-index:0}.cover-layout-fullbleed .doc-cover>*{position:relative;z-index:1}.cover-layout-minimal-badge .doc-cover{grid-template-columns:1fr;align-content:center;text-align:center}.cover-layout-minimal-badge .cover-visual{max-width:520px;margin:auto}.cover-layout-course-card .doc-cover{background:radial-gradient(circle at top right,color-mix(in srgb,var(--doc-primary),#fff 60%),transparent 42%),var(--doc-paper)}.cover-layout-course-card .cover-visual{background:rgba(255,255,255,.42);border:1px solid color-mix(in srgb,var(--doc-primary),#fff 70%);border-radius:30px;padding:18px}.cover-layout-catalog-grid .doc-cover{background:linear-gradient(135deg,color-mix(in srgb,var(--doc-primary),#fff 84%),var(--doc-paper))}.cover-layout-dark-premium .doc-cover,.palette-black-gold .doc-cover{background:#111;color:#f8f1df}.cover-layout-dark-premium .doc-kicker,.palette-black-gold .doc-kicker{color:#c8a95d}.cover-layout-dark-premium .doc-pill,.palette-black-gold .doc-pill{background:rgba(255,255,255,.08);color:#f8f1df;border-color:rgba(255,255,255,.18)}.palette-blue-tech{--doc-primary:#4f46e5;--doc-accent:#0f172a}.palette-green-natural{--doc-primary:#4f7d45;--doc-accent:#1f2a1d}.palette-rose-soft{--doc-primary:#be5774;--doc-accent:#3d1f2a}.palette-orange-vital{--doc-primary:#e8844a;--doc-accent:#2a1f18}
.doc-back-cover{display:grid;gap:18px;position:relative}.doc-back-cover .doc-cover-image.small img{max-height:280px;width:100%;object-fit:cover;border-radius:20px}.back-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.back-benefits span{border:1px solid color-mix(in srgb,var(--doc-primary),#fff 78%);border-radius:14px;padding:10px;background:color-mix(in srgb,var(--doc-primary),#fff 92%);font-weight:700}.spine-preview{position:absolute;right:18px;top:18px;bottom:18px;width:38px;border-radius:999px;background:var(--doc-accent);color:#fff;display:grid;place-items:center;box-shadow:0 10px 28px rgba(0,0,0,.16)}.spine-preview span{writing-mode:vertical-rl;transform:rotate(180deg);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.doc-thumbnail img{max-width:320px;border-radius:16px;box-shadow:0 12px 36px rgba(0,0,0,.12)}
@media(max-width:980px){.cover-studio-grid{grid-template-columns:1fr}.back-benefits{grid-template-columns:1fr}.spine-preview{position:static;width:100%;height:38px}.spine-preview span{writing-mode:horizontal-tb;transform:none}}

/* =========================
   V2.5 - Export Suite / Entrega Comercial
   ========================= */
.export-suite-lab{
  border:1px solid rgba(17,24,39,.11);
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,241,232,.96));
}
.export-suite-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.export-suite-grid.second-row{margin-top:16px}
.export-suite-card{background:rgba(255,255,255,.82);border:1px solid rgba(39,35,31,.09);border-radius:18px;padding:16px;box-shadow:0 10px 30px rgba(0,0,0,.045)}
.export-suite-card h3{margin:0 0 12px;font-family:var(--title-font);font-size:17px}
.export-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.export-actions-grid .btn{width:100%;justify-content:center}
.export-map-list{display:grid;gap:10px;max-height:360px;overflow:auto;padding-right:4px}.export-map-item{background:#fff;border:1px solid rgba(39,35,31,.09);border-radius:14px;padding:11px;display:grid;gap:3px}.export-map-item strong{font-size:12px;word-break:break-word}.export-map-item span,.export-map-item small{font-size:12px;color:var(--muted)}
.export-clean-mode{background:#fff;margin:0}.export-clean-mode .product-preview{max-width:none;margin:0}.export-clean-mode .topbar,.export-clean-mode .no-print{display:none!important}.export-publisher-mode{background:#f7f3ec;margin:0}.export-publisher-mode .product-preview{max-width:1180px;margin:0 auto}.export-preview-mode{background:#e7dccb;margin:0}
@media(max-width:980px){.export-suite-grid{grid-template-columns:1fr}.export-actions-grid{grid-template-columns:1fr}}

/* V2.6 — Mini Embudo Comercial */
.funnel-suite-lab{background:linear-gradient(135deg, rgba(255,255,255,.92), rgba(242,232,218,.88));border:1px solid rgba(39,35,31,.09)}
.funnel-suite-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.funnel-suite-grid.second-row{margin-top:16px}
.funnel-suite-card{background:rgba(255,255,255,.84);border:1px solid rgba(39,35,31,.09);border-radius:18px;padding:16px;box-shadow:0 10px 30px rgba(0,0,0,.045)}
.funnel-suite-card h3{margin:0 0 12px;font-family:var(--title-font);font-size:17px}
.funnel-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.funnel-map-list{display:grid;gap:10px;max-height:360px;overflow:auto;padding-right:4px}
.funnel-map-item{display:grid;gap:3px;background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:14px;padding:11px 12px}
.funnel-map-item strong{font-size:13px;color:#1f2937}
.funnel-map-item span{font-size:12px;color:#6b7280}
.funnel-map-item small{font-size:11px;color:#9a6b2f;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
@media(max-width:980px){.funnel-suite-grid{grid-template-columns:1fr}.funnel-actions-grid{grid-template-columns:1fr}}


/* V2.7 — Protection Suite */
.protection-suite .v27-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;}
.protection-suite .v27-card{border:1px solid var(--line);background:rgba(255,255,255,.72);border-radius:22px;padding:18px;box-shadow:0 14px 35px rgba(31,24,14,.06);}
.protection-suite .v27-card h3{margin:0 0 12px;font-size:1.05rem;}
.protection-suite .wrap{flex-wrap:wrap;}
.v27-stats{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;}
.v27-buyer-list code{display:inline-block;margin-top:6px;padding:5px 8px;border-radius:9px;background:#f3eee4;color:#3d3428;font-size:.78rem;}
.v27-buyer.is-revoked{opacity:.65;background:#fff4f4;border-color:#ffd4d4;}
@media(max-width:980px){.protection-suite .v27-grid{grid-template-columns:1fr;}}

/* V2.8 — Dashboard Comercial + Analítica Liviana */
.dashboard-suite{background:linear-gradient(135deg, rgba(255,255,255,.96), rgba(238,244,255,.90));border:1px solid rgba(47,77,138,.14)}
.dashboard-suite .wrap{flex-wrap:wrap;}
.v28-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0;}
.v28-kpi{border:1px solid rgba(31,41,55,.09);background:rgba(255,255,255,.86);border-radius:18px;padding:14px;box-shadow:0 12px 28px rgba(31,41,55,.045);display:grid;gap:5px;min-height:104px;}
.v28-kpi span{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:#64748b;font-weight:900;}
.v28-kpi strong{font-size:22px;color:#172033;line-height:1.1;}
.v28-kpi small{font-size:12px;color:#64748b;display:grid;gap:5px;}
.v28-kpi em{font-style:normal;font-size:11px;color:#697386;}
.v28-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;}
.v28-card{border:1px solid rgba(31,41,55,.09);background:rgba(255,255,255,.78);border-radius:22px;padding:18px;box-shadow:0 14px 35px rgba(31,41,55,.055);}
.v28-card h3{margin:0 0 12px;font-size:1.05rem;}
.v28-mini-charts{margin-top:14px;display:grid;gap:8px;}
.v28-chart-row{display:grid;grid-template-columns:120px 1fr 54px;align-items:center;gap:10px;font-size:12px;color:#475569;}
.v28-bar{height:9px;background:#e8edf7;border-radius:999px;overflow:hidden;display:block;}
.v28-bar i{display:block;height:100%;background:linear-gradient(90deg,#496fbd,#b9904f);border-radius:999px;}
.v28-list{display:grid;gap:10px;margin-top:12px;max-height:360px;overflow:auto;padding-right:4px;}
.v28-item{display:grid;gap:5px;border:1px solid rgba(31,41,55,.08);background:#fff;border-radius:16px;padding:12px;}
.v28-item strong{font-size:13px;color:#172033;}
.v28-item span{font-size:12px;color:#64748b;}
.v28-item small{font-size:12px;color:#8a6f45;line-height:1.35;}
.v28-item.status-ganadora,.v28-item.stage-ganado,.v28-item.task-hecha{border-color:rgba(39,140,89,.25);background:#f3fff8;}
.v28-item.status-descartada,.v28-item.stage-perdido{border-color:rgba(190,57,57,.22);background:#fff5f5;}
.v28-item.priority-alta{box-shadow:inset 4px 0 0 #b9904f;}
.v28-item.task-haciendo{background:#f7faff;}
@media(max-width:1100px){.v28-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.v28-grid{grid-template-columns:1fr;}}
@media(max-width:640px){.v28-kpi-grid{grid-template-columns:1fr;}.v28-chart-row{grid-template-columns:1fr;gap:5px;}}

/* =========================================================
   V2.9 — Planificador Editorial + Calendario + Hooks
   ========================================================= */
.editorial-suite{
  border:1px solid rgba(45, 37, 25, .12);
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,247,241,.98));
}
.v29-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
  margin-top:16px;
}
.v29-card{
  background:rgba(255,255,255,.82);
  border:1px solid rgba(40,32,20,.10);
  border-radius:18px;
  padding:16px;
  box-shadow:0 14px 35px rgba(36,28,18,.06);
}
.v29-card.full{ margin-top:16px; }
.v29-card h3{
  margin:0 0 12px;
  font-size:1rem;
  letter-spacing:-.01em;
}
.v29-list{
  display:grid;
  gap:10px;
  margin-top:12px;
  max-height:420px;
  overflow:auto;
  padding-right:4px;
}
.v29-item{
  border:1px solid rgba(40,32,20,.10);
  background:#fff;
  border-radius:14px;
  padding:12px;
}
.v29-item div:first-child{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}
.v29-item span{
  color:#766b5d;
  font-size:.83rem;
}
.v29-item p{
  margin:7px 0;
  line-height:1.45;
}
.v29-item small{
  display:block;
  color:#7d7469;
  margin-bottom:8px;
}
.v29-empty{
  padding:18px;
  border:1px dashed rgba(40,32,20,.2);
  border-radius:14px;
  color:#7b6f61;
  background:rgba(250,247,241,.7);
}
.v29-hooks{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  margin-top:12px;
  max-height:520px;
  overflow:auto;
  padding-right:4px;
}
.v29-hook{
  border:1px solid rgba(40,32,20,.10);
  background:#fff;
  border-radius:14px;
  padding:12px;
}
.v29-hook span{
  display:inline-block;
  font-size:.74rem;
  font-weight:700;
  color:#6b4f1d;
  background:#fff4d6;
  border-radius:999px;
  padding:3px 8px;
  margin-bottom:8px;
}
.v29-hook p{
  margin:0 0 10px;
  font-size:.92rem;
  line-height:1.42;
}
@media (max-width: 980px){
  .v29-grid,
  .v29-hooks{ grid-template-columns:1fr; }
}


/* =========================================================
   V3.0 — Sistema Maestro / Kit de Publicación / Modo Limpio
   ========================================================= */
.master-suite{
  background:linear-gradient(135deg, rgba(255,255,255,.98), rgba(238,232,220,.96));
  border:1px solid rgba(31,24,14,.12);
}
.master-suite .wrap{flex-wrap:wrap;}
.v30-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0;}
.v30-kpi{background:#fff;border:1px solid rgba(31,24,14,.09);border-radius:18px;padding:14px;box-shadow:0 12px 30px rgba(31,24,14,.05);display:grid;gap:5px;min-height:98px;}
.v30-kpi span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#756a5d;font-weight:900;}
.v30-kpi strong{font-size:20px;color:#1f2937;line-height:1.15;word-break:break-word;}
.v30-kpi small{font-size:12px;color:#766b5d;}
.v30-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;}
.v30-card{background:rgba(255,255,255,.84);border:1px solid rgba(31,24,14,.10);border-radius:20px;padding:18px;box-shadow:0 14px 35px rgba(31,24,14,.055);}
.v30-card h3{margin:0 0 12px;font-size:1.04rem;letter-spacing:-.01em;}
.v30-status-list,.v30-docs-list{display:grid;gap:9px;max-height:360px;overflow:auto;padding-right:4px;margin-bottom:12px;}
.v30-status,.v30-doc-item{background:#fff;border:1px solid rgba(31,24,14,.09);border-radius:14px;padding:11px;display:grid;gap:4px;}
.v30-status strong,.v30-doc-item strong{font-size:13px;color:#1f2937;}
.v30-status span{font-size:12px;font-weight:800;}
.v30-status small,.v30-doc-item code{font-size:11px;color:#74695c;word-break:break-word;}
.v30-status.ok{border-color:rgba(40,150,90,.25);background:#f4fff8;}
.v30-status.ok span{color:#167344;}
.v30-status.warn{border-color:rgba(185,144,79,.32);background:#fff9ed;}
.v30-status.warn span{color:#8c5d17;}
.v30-mode-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px;}
.v30-folder-map pre{background:#171717;color:#f8f1df;border-radius:16px;padding:16px;overflow:auto;font-size:12px;line-height:1.55;}
.v30-doc-item code{background:#f5efe5;border-radius:8px;padding:5px 7px;}
.v30-clean-product-mode .topbar,
.v30-clean-product-mode .sidebar,
.v30-clean-product-mode .workspace > .panel:not(.printable),
.v30-reader-premium-mode .topbar,
.v30-reader-premium-mode .sidebar,
.v30-reader-premium-mode .workspace > .panel:not(.printable),
.v30-delivery-mode .topbar,
.v30-delivery-mode .sidebar,
.v30-delivery-mode .workspace > .panel:not(.printable),
.v30-presentation-mode .topbar,
.v30-presentation-mode .sidebar,
.v30-presentation-mode .workspace > .panel:not(.printable){display:none!important;}
.v30-clean-product-mode .layout,
.v30-reader-premium-mode .layout,
.v30-delivery-mode .layout,
.v30-presentation-mode .layout{display:block;max-width:none;margin:0;padding:0;}
.v30-clean-product-mode .workspace,
.v30-reader-premium-mode .workspace,
.v30-delivery-mode .workspace,
.v30-presentation-mode .workspace{max-width:none;margin:0;padding:0;}
.v30-clean-product-mode .printable,
.v30-reader-premium-mode .printable,
.v30-delivery-mode .printable,
.v30-presentation-mode .printable{box-shadow:none;border:0;border-radius:0;margin:0;padding:0;background:transparent;}
.v30-clean-product-mode .preview-frame{background:#e7dccb;padding:24px;}
.v30-reader-premium-mode .preview-frame{background:linear-gradient(135deg,#f2eadf,#fff);padding:42px;}
.v30-reader-premium-mode .product-preview{max-width:980px;margin:auto;box-shadow:0 24px 80px rgba(0,0,0,.12);}
.v30-delivery-mode .preview-frame{background:#f8fafc;padding:32px;}
.v30-delivery-mode .product-preview{max-width:900px;margin:auto;border:1px solid rgba(31,41,55,.12);}
.v30-presentation-mode .preview-frame{background:#111827;padding:42px;}
.v30-presentation-mode .product-preview{max-width:1100px;margin:auto;transform-origin:top center;}
@media(max-width:1100px){.v30-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}.v30-grid{grid-template-columns:1fr;}}
@media(max-width:640px){.v30-kpis{grid-template-columns:1fr;}.v30-folder-map pre{font-size:11px;}}


/* =========================================================
   V3.1 — PWA + Biblioteca + Packs de Marca + Presentación
========================================================= */
.v31-pwa-suite{
  border:1px solid rgba(184,135,70,.18);
  background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(255,247,234,.94));
}
.v31-status-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  margin:12px 0 18px;
}
.v31-status{
  border:1px solid var(--line);
  border-radius:16px;
  padding:12px;
  background:#fff;
  display:grid;
  gap:5px;
  min-height:76px;
}
.v31-status strong{font-size:13px}
.v31-status span{font-size:12px;color:var(--muted);line-height:1.35}
.v31-status.ok{border-color:rgba(22,163,74,.28);background:#f0fdf4}
.v31-status.warn{border-color:rgba(180,83,9,.25);background:#fff7ed}
.v31-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-top:16px;
}
.v31-card{
  background:rgba(255,255,255,.78);
  border:1px solid rgba(39,35,31,.09);
  border-radius:18px;
  padding:16px;
  box-shadow:0 10px 30px rgba(0,0,0,.045);
}
.v31-card h3{margin:0 0 10px;font-family:var(--title-font);font-size:18px}
.v31-list{display:grid;gap:10px;margin-top:14px;max-height:360px;overflow:auto;padding-right:4px}
.v31-list-item{
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  padding:12px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:center;
}
.v31-list-item strong{display:block;font-size:14px}
.v31-list-item span{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.v31-list-item small{display:block;font-size:11px;color:var(--muted);margin-top:4px;max-width:420px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v31-empty{
  border:1px dashed var(--line);
  border-radius:16px;
  padding:16px;
  color:var(--muted);
  background:#fffaf2;
  font-size:13px;
}

/* Modo presentación */
body.v31-presentation-mode .topbar,
body.v31-presentation-mode .sidebar,
body.v31-presentation-mode .workspace > .panel:not(.printable),
body.v31-presentation-mode .panel-header.no-print{
  display:none!important;
}
body.v31-presentation-mode{
  background:#111827;
}
body.v31-presentation-mode .layout{
  display:block;
  max-width:1180px;
  margin:0 auto;
  padding:24px;
}
body.v31-presentation-mode .workspace{
  display:block;
}
body.v31-presentation-mode .panel.printable{
  border:0;
  box-shadow:none;
  background:transparent;
  padding:0;
}
body.v31-presentation-mode .preview-frame{
  background:#111827;
  border:0;
  padding:18px;
  overflow:visible;
}
body.v31-presentation-mode .doc-page{
  margin:0 auto 24px;
  box-shadow:0 24px 80px rgba(0,0,0,.35);
}
@media(max-width:1100px){
  .v31-status-grid{grid-template-columns:1fr 1fr}
  .v31-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .v31-status-grid{grid-template-columns:1fr}
  .v31-list-item{grid-template-columns:1fr}
}
