:root{
  --navy:#0d1425;
  --navy-2:#111a2f;
  --purple:#6f22e6;
  --purple-2:#922cf3;
  --purple-soft:#f1e8ff;
  --violet:#7c3aed;
  --blue:#2387e8;
  --green:#2eae68;
  --green-soft:#eaf8ef;
  --orange:#f59e0b;
  --orange-soft:#fff4df;
  --red:#ef4d5b;
  --red-soft:#ffedef;
  --cyan:#22a7c6;
  --text:#171a22;
  --muted:#71798a;
  --line:#e7e8ee;
  --panel:#ffffff;
  --surface:#f7f8fb;
  --surface-2:#f3f5f9;
  --shadow:0 10px 28px rgba(18,24,40,.06);
  --radius:14px;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--text);background:var(--surface)}
body{min-width:320px}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}svg{display:block}.muted{color:var(--muted)}

/* ---------- LOGIN ---------- */
.login-body{min-height:100vh;background:#f4f5f8;overflow:hidden}
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(430px,46%) 1fr}
.login-visual{position:relative;background:linear-gradient(155deg,#0d1425 0%,#121a30 62%,#19142a 100%);padding:48px;display:flex;flex-direction:column;overflow:hidden;color:white}
.login-visual:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(124,58,237,.28),rgba(124,58,237,0) 68%);right:-110px;top:55px}
.login-visual:after{content:"";position:absolute;width:350px;height:350px;border-radius:50%;background:radial-gradient(circle,rgba(146,44,243,.20),rgba(146,44,243,0) 70%);left:-120px;bottom:-80px}
.login-brand-big{position:relative;z-index:2;display:flex;align-items:center;gap:14px}
.login-brand-big .brand-logo{width:54px;height:40px;color:#8b3cf0}
.login-brand-big .brand-logo svg{width:100%;height:100%;fill:currentColor;stroke:none}
.login-brand-big strong{font-size:27px;letter-spacing:-.03em}.login-brand-big span{display:block;color:#aeb6c8;font-size:12px;margin-top:3px}
.login-visual-copy{position:relative;z-index:2;margin:auto 0;max-width:620px}
.login-visual-copy .kicker{display:inline-flex;padding:7px 10px;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#cbd2df;font-size:11px;letter-spacing:.08em;text-transform:uppercase;background:rgba(255,255,255,.04)}
.login-visual-copy h1{font-size:52px;line-height:1.04;letter-spacing:-.045em;margin:18px 0 18px;max-width:590px}.login-visual-copy h1 em{font-style:normal;color:#9c4cf4}
.login-visual-copy p{font-size:15px;line-height:1.75;color:#aeb6c8;max-width:560px;margin:0}
.login-flow{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px}.login-flow span{padding:8px 10px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);border-radius:9px;font-size:11px;color:#d1d6e0}.login-flow b{display:flex;align-items:center;color:#7c3aed;font-weight:800}
.login-visual-foot{position:relative;z-index:2;font-size:11px;color:#7f899d}
.login-panel{display:grid;place-items:center;padding:44px;background:#f7f8fb}
.login-card{width:min(470px,100%);background:#fff;border:1px solid var(--line);border-radius:18px;padding:42px;box-shadow:0 24px 70px rgba(18,24,40,.10)}
.login-card-head{margin-bottom:26px}.login-card-head .mini-logo{display:none}.login-card-head h2{font-size:28px;letter-spacing:-.03em;margin:0 0 8px}.login-card-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}
.login-form{display:grid;gap:17px}.login-form label,.form-grid label{font-size:11px;font-weight:700;color:#525a6b;display:grid;gap:7px}.login-form input,.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #dfe2e8;background:#fff;border-radius:10px;padding:12px 13px;outline:none;color:var(--text);transition:.18s}.login-form input:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#8b3cf0;box-shadow:0 0 0 3px rgba(124,58,237,.10)}
.password-field{position:relative}.password-field input{padding-right:82px}.password-field button{position:absolute;right:7px;top:6px;border:0;background:#f0ebfb;color:#6d28d9;border-radius:8px;padding:7px 9px;font-size:10px;font-weight:800}
.primary-btn{border:0;background:linear-gradient(135deg,var(--purple),var(--purple-2));color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 16px;border-radius:9px;font-weight:700;font-size:12px;box-shadow:0 7px 18px rgba(111,34,230,.19);transition:.18s}.primary-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(111,34,230,.25)}.primary-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.primary-btn.wide{width:100%;padding:13px 16px;margin-top:3px}.secondary-btn{border:1px solid #dedfe6;background:#fff;color:#4e5563;padding:10px 15px;border-radius:9px;font-weight:700;font-size:12px}.secondary-btn:hover{background:#f7f8fb}
.login-test-note{margin-top:22px;border-top:1px solid #eceef2;padding-top:17px;color:#8a92a2;font-size:10.5px;line-height:1.6}.login-test-note strong{color:#656d7c}
.alert{border-radius:10px;padding:11px 13px;margin:0 0 18px;font-size:12px;font-weight:600}.alert-error{background:var(--red-soft);color:#b72f3b}.alert-success{background:var(--green-soft);color:#247a49}

/* ---------- APP LAYOUT ---------- */
.app-body{background:var(--surface)}
.app-shell{min-height:100vh;display:grid;grid-template-columns:238px minmax(0,1fr)}
.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--navy),#0b1221);color:#fff;padding:20px 13px 16px;display:flex;flex-direction:column;z-index:40;box-shadow:5px 0 20px rgba(10,14,25,.06)}
.brand-block{display:flex;align-items:center;gap:10px;padding:0 8px 17px;border-bottom:1px solid rgba(255,255,255,.07)}
.brand-logo{width:34px;height:27px;color:#8e3ef3;flex:0 0 auto}.brand-logo svg{width:100%;height:100%;fill:currentColor;stroke:none}.brand-name{font-size:19px;font-weight:800;letter-spacing:-.035em}.brand-sub{font-size:9px;color:#8d96aa;margin-top:2px}
.sidebar-user{display:flex;align-items:center;gap:10px;padding:18px 8px 14px}.sidebar-avatar,.top-avatar{border-radius:50%;display:grid;place-items:center;font-weight:800;background:linear-gradient(135deg,#d7c4ff,#8f5aec);color:#32196a}.sidebar-avatar{width:42px;height:42px;border:2px solid rgba(255,255,255,.15)}.sidebar-user-copy{min-width:0;display:grid}.sidebar-user-copy strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-copy span{font-size:9px;color:#a2aabd;margin-top:2px}.sidebar-user-copy small{font-size:9px;color:#8d96a8;margin-top:4px;display:flex;align-items:center;gap:5px}.sidebar-user-copy small i{width:6px;height:6px;border-radius:50%;background:#39d16e;display:inline-block;box-shadow:0 0 0 3px rgba(57,209,110,.10)}
.nav-list{display:flex;flex-direction:column;gap:3px;overflow:auto;padding:4px 0 14px}.nav-section-label{font-size:8px;font-weight:800;letter-spacing:.08em;color:#747f94;padding:12px 10px 5px}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:#c4cad7;font-size:10.5px;font-weight:500;transition:.17s;position:relative}.nav-item:hover{background:rgba(255,255,255,.055);color:#fff}.nav-item.active{background:linear-gradient(135deg,#6522df,#8b24f0);color:#fff;box-shadow:0 6px 18px rgba(111,34,230,.26)}.nav-icon{width:17px;height:17px;display:grid;place-items:center;flex:0 0 auto}.nav-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.sidebar-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.07);padding-top:14px}.sidebar-corp{text-align:center;color:#aab1c0;padding:5px 0 11px;display:grid;justify-items:center}.dux-symbol{width:34px;height:34px;border-radius:50%;border:3px solid #fff;display:grid;place-items:center;color:#fff;font-size:14px;font-weight:800;margin-bottom:7px}.sidebar-corp strong{font-size:9px;color:#e1e4ea;letter-spacing:.04em}.sidebar-corp span{font-size:8px;color:#707a8d;margin-top:2px}.logout-link{margin-top:5px;color:#9ea6b6}
.main-area{min-width:0;display:flex;flex-direction:column;min-height:100vh}
.topbar{min-height:70px;padding:11px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:rgba(255,255,255,.95);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;backdrop-filter:blur(10px)}.topbar-left{display:flex;align-items:center;gap:12px}.topbar h1{font-size:18px;letter-spacing:-.02em;margin:0;font-weight:750}.topbar-subtitle{font-size:9px;color:#9aa1af;margin:3px 0 0}.mobile-menu{display:none;border:0;background:#f2f3f7;border-radius:8px;padding:7px 9px;color:#424958}.topbar-actions{display:flex;align-items:center;gap:9px}.search-box{height:35px;min-width:225px;border:1px solid #e2e4e9;background:#fff;border-radius:8px;display:flex;align-items:center;gap:7px;padding:0 8px;color:#888f9d}.search-box span svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}.search-box input{border:0;outline:none;background:transparent;min-width:0;width:100%;font-size:9.5px;color:#424958}.search-box kbd{font-size:8px;color:#a2a8b4;border:1px solid #e4e6ea;border-radius:4px;padding:2px 4px;background:#fafbfc;white-space:nowrap}.icon-button{width:34px;height:34px;border:0;background:transparent;color:#657083;display:grid;place-items:center;position:relative;border-radius:8px}.icon-button:hover{background:#f2f3f7}.icon-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.icon-button b{position:absolute;top:0;right:0;background:#ef4156;color:#fff;border-radius:999px;min-width:14px;height:14px;display:grid;place-items:center;font-size:7px;border:2px solid #fff}.top-dux-mark{width:50px;display:grid;text-align:center;line-height:1}.top-dux-mark strong{font-family:Georgia,serif;font-size:16px;letter-spacing:.04em}.top-dux-mark span{font-size:6px;letter-spacing:.22em;color:#666d7b;margin-top:3px}.top-user-pill{display:flex;align-items:center;gap:7px;padding-left:8px;border-left:1px solid #eceef2}.top-avatar{width:34px;height:34px;font-size:11px}.top-user-pill>div:last-child{display:grid;min-width:0}.top-user-pill strong{font-size:9.5px;max-width:115px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-user-pill span{font-size:8px;color:#8a92a1;margin-top:2px}.content-wrap{padding:18px 22px 30px;max-width:1600px;width:100%;margin:0 auto;flex:1}.app-footer{display:flex;justify-content:space-between;gap:20px;color:#979eab;font-size:8.5px;padding:0 24px 18px;max-width:1600px;width:100%;margin:0 auto}

/* ---------- COMMON COMPONENTS ---------- */
.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:14px}.page-heading h2{font-size:18px;margin:0 0 5px;letter-spacing:-.025em}.page-heading p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.page-heading-actions{display:flex;gap:8px}.eyebrow{font-size:8px;letter-spacing:.12em;font-weight:800;color:#8a91a0;text-transform:uppercase;margin-bottom:5px;display:block}
.panel-card,.dashboard-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 8px rgba(18,24,40,.02)}.panel-card{padding:15px}.dashboard-card{padding:14px}.panel-card-head,.card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.panel-card-head h3,.card-head h3{font-size:12.5px;margin:0}.card-link{font-size:8.5px;color:#6d28d9;font-weight:600}.table-note{font-size:8.5px;color:#9aa1af}.compact-btn{border:1px solid #e1e3e8;background:#fff;border-radius:7px;padding:7px 9px;font-size:8.5px;color:#5c6472;font-weight:600}.compact-btn:hover{background:#f6f7f9}

/* ---------- DASHBOARD ---------- */
.dashboard-welcome{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:13px}.dashboard-welcome h2{font-size:19px;margin:0 0 4px;letter-spacing:-.03em}.dashboard-welcome p{margin:0;font-size:10px;color:#6e7686}.welcome-date{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 10px;color:#737b8b;font-size:9px}.welcome-date svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.7}
.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-bottom:12px}.kpi-card{min-height:86px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px;display:flex;align-items:flex-start;gap:10px;position:relative;overflow:hidden}.kpi-card.soft-purple{background:#fbf9ff}.kpi-card.soft-orange{background:#fffaf3}.kpi-card.soft-green{background:#f6fdf9}.kpi-card.soft-blue{background:#f6fbff}.kpi-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;background:var(--purple-soft);color:#6d28d9}.soft-orange .kpi-icon{background:#fff0d8;color:#e58b00}.soft-green .kpi-icon{background:#e7f7ed;color:#25965a}.soft-blue .kpi-icon{background:#e7f3ff;color:#237dd0}.kpi-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.kpi-copy{min-width:0}.kpi-copy strong{display:block;font-size:19px;letter-spacing:-.03em;line-height:1}.kpi-copy span{display:block;font-size:8.5px;color:#3e4552;margin-top:6px;font-weight:600;line-height:1.25}.kpi-copy small{display:block;font-size:7.8px;color:#9aa1af;margin-top:3px;line-height:1.25}
.dashboard-grid{display:grid;grid-template-columns:1.45fr .95fr;gap:10px}.dashboard-stack{display:grid;gap:10px}.dashboard-grid-3{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:10px;margin-top:10px}.dashboard-grid-2{display:grid;grid-template-columns:1.2fr .8fr;gap:10px;margin-top:10px}
.tabs{display:flex;gap:20px;border-bottom:1px solid #eef0f3;margin:0 -2px 11px}.tab{font-size:8.5px;padding:0 2px 8px;color:#8a91a0;position:relative}.tab.active{color:#6d28d9;font-weight:700}.tab.active:after{content:"";position:absolute;height:2px;left:0;right:0;bottom:-1px;background:#7c3aed;border-radius:2px}
.mini-table{width:100%;border-collapse:collapse}.mini-table th{text-align:left;font-size:7px;color:#9ba2af;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:0 7px 7px;border-bottom:1px solid #eef0f3}.mini-table td{padding:9px 7px;border-bottom:1px solid #f0f1f4;font-size:8.5px;vertical-align:middle}.mini-table tr:last-child td{border-bottom:0}.book-cell{display:flex;align-items:center;gap:8px;min-width:160px}.book-thumb{width:28px;height:38px;border-radius:2px;background:linear-gradient(160deg,#18233d,#5068a3);box-shadow:0 2px 5px rgba(0,0,0,.18);position:relative;overflow:hidden}.book-thumb.purple{background:linear-gradient(160deg,#33234d,#8e5cc0)}.book-thumb.green{background:linear-gradient(160deg,#263c33,#779b79)}.book-thumb.orange{background:linear-gradient(160deg,#4a3022,#cf8e62)}.book-thumb:after{content:"DUX";position:absolute;bottom:4px;left:4px;color:rgba(255,255,255,.82);font-size:5px;letter-spacing:.08em}.book-cell strong{display:block;font-size:8.7px}.book-cell small{display:block;font-size:7px;color:#9aa1af;margin-top:2px}.person{display:flex;align-items:center;gap:5px}.person-dot{width:22px;height:22px;border-radius:50%;background:#e8ddff;color:#5b23b0;display:grid;place-items:center;font-size:7px;font-weight:800}.priority,.status-pill{display:inline-flex;align-items:center;border-radius:5px;padding:4px 6px;font-size:7px;font-weight:700}.priority.high{background:#ffebec;color:#db3945}.priority.medium{background:#fff3df;color:#cf7b00}.priority.low{background:#eaf8ef;color:#279354}.status-pill{background:#f0ebff;color:#6c2bd4}.status-pill.green{background:#eaf8ef;color:#288a53}.status-pill.orange{background:#fff3df;color:#bf7200}.status-pill.gray{background:#f0f1f4;color:#757d8d}.status-pill.red{background:#ffebed;color:#cb3542}.tiny-link{font-size:7.7px;color:#6d28d9;font-weight:600}
.timeline-list,.alert-list,.activity-list{display:grid;gap:0}.timeline-item,.alert-item,.activity-item{display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid #f0f1f4}.timeline-item:last-child,.alert-item:last-child,.activity-item:last-child{border-bottom:0}.timeline-time{font-size:8px;color:#464d5b;text-align:right;line-height:1.25}.timeline-copy strong,.alert-copy strong,.activity-copy strong{display:block;font-size:8.5px}.timeline-copy span,.alert-copy span,.activity-copy span{display:block;font-size:7.2px;color:#9299a7;margin-top:2px}.timeline-tag{font-size:6.8px;padding:4px 6px;border-radius:5px;background:#f0ebff;color:#6d28d9}.timeline-tag.orange{background:#fff2df;color:#c77600}.timeline-tag.blue{background:#eaf5ff;color:#2378bd}.timeline-tag.green{background:#eaf8ef;color:#268852}
.alert-item{grid-template-columns:26px 1fr auto}.alert-icon{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#ffebed;color:#d43b46}.alert-icon.orange{background:#fff2df;color:#d07b00}.alert-icon.blue{background:#eaf5ff;color:#2a79bb}.alert-icon svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.8}.alert-meta{font-size:7px;color:#9ca3af;white-space:nowrap}
.progress-flow{display:flex;align-items:center;gap:7px;padding:3px 1px 7px;overflow:auto}.flow-stage{min-width:68px;text-align:center}.flow-stage-icon{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;margin:0 auto 6px;background:#f2f3f6;color:#7c8492}.flow-stage.active .flow-stage-icon{background:#efe7ff;color:#6d28d9}.flow-stage.done .flow-stage-icon{background:#e9f8ef;color:#268a52}.flow-stage-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7}.flow-stage strong{display:block;font-size:7.2px}.flow-stage small{display:block;font-size:6.5px;color:#9aa1af;margin-top:2px}.flow-arrow{color:#a5abba;font-size:12px}
.quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.quick-action{border:1px solid #eceef2;border-radius:8px;padding:10px 8px;text-align:center;background:#fff;color:#565e6e}.quick-action:hover{border-color:#d8c7f8;background:#fcfaff}.quick-action-icon{width:28px;height:28px;border-radius:8px;background:#efe8ff;color:#6d28d9;display:grid;place-items:center;margin:0 auto 7px}.quick-action-icon svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7}.quick-action strong{display:block;font-size:7.7px}.quick-action span{display:block;font-size:6.5px;color:#9aa1af;margin-top:2px}
.metric-bars{display:grid;gap:9px}.metric-row{display:grid;grid-template-columns:90px 1fr 25px;align-items:center;gap:8px}.metric-row span{font-size:8px}.metric-row b{font-size:8px;color:#737b8b}.bar{height:7px;border-radius:999px;background:#eef0f4;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#7c3aed,#9b4bf1);border-radius:999px}.bar.blue i{background:linear-gradient(90deg,#3390ef,#49b3ee)}.bar.green i{background:linear-gradient(90deg,#2eae68,#56c88a)}.bar.orange i{background:linear-gradient(90deg,#f4a11e,#f8bd5c)}

/* ---------- ADVERTISING ---------- */
.ad-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:12px}.ad-head h2{font-size:18px;margin:0 0 5px;letter-spacing:-.025em}.ad-head p{margin:0;color:#747c8b;font-size:9.5px;line-height:1.5;max-width:700px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:10px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px;display:grid;grid-template-columns:38px 1fr;column-gap:10px;align-items:center;min-height:90px}.stat-icon{width:36px;height:36px;border-radius:50%;background:#efe7ff;color:#6d28d9;display:grid;place-items:center;grid-row:1/4}.stat-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7}.stat-card.warning .stat-icon{background:#fff1dc;color:#d58300}.stat-card.danger .stat-icon{background:#ffeaed;color:#d13a46}.stat-card.money .stat-icon{background:#e8f8ee;color:#249353}.stat-card span{font-size:8.5px;color:#697180;font-weight:600}.stat-card strong{font-size:20px;letter-spacing:-.035em;line-height:1.15}.stat-card small{font-size:7.2px;color:#9da4b1}.advertising-grid{display:grid;grid-template-columns:1.45fr .75fr;gap:10px}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;font-size:7px;color:#9aa1af;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:8px;border-bottom:1px solid #eceef2;white-space:nowrap}.data-table td{padding:10px 8px;border-bottom:1px solid #f0f1f4;font-size:8.2px;vertical-align:middle;white-space:nowrap}.data-table tr:last-child td{border-bottom:0}.data-table td strong{font-size:8.4px}.data-table td small{display:block;font-size:6.8px;color:#969eac;margin-top:2px}.empty-cell{text-align:center;color:#9aa1af;padding:32px!important}.danger-text{color:#c93642}.warning-text{color:#c47b05}.status-activa{background:#eaf8ef;color:#2b8a55}.status-programada{background:#eaf4ff;color:#2979ba}.status-pausada{background:#fff3df;color:#bf7600}.status-finalizada{background:#f0f1f4;color:#727a89}
.ad-side-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px}.ad-side-card h3{font-size:11.5px;margin:0 0 4px}.ad-side-card>p{font-size:8px;color:#8e96a5;line-height:1.5;margin:0 0 12px}.expiry-list{display:grid}.expiry-item{display:grid;grid-template-columns:25px 1fr auto;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid #f0f1f4}.expiry-item:last-child{border-bottom:0}.expiry-icon{width:23px;height:23px;border-radius:7px;display:grid;place-items:center;background:#fff2df;color:#cc7a00}.expiry-icon.red{background:#ffebed;color:#d13a46}.expiry-icon.green{background:#eaf8ef;color:#2a9157}.expiry-icon svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.8}.expiry-item strong{display:block;font-size:8px}.expiry-item span{display:block;font-size:6.8px;color:#969eac;margin-top:2px}.expiry-days{font-size:7px;font-weight:700;color:#7a8291}.ad-future{margin-top:10px;border:1px dashed #d9c5f8;background:#fcfaff;border-radius:10px;padding:12px;display:flex;gap:10px;align-items:flex-start}.ad-future-icon{width:31px;height:31px;border-radius:8px;background:#efe7ff;color:#6d28d9;display:grid;place-items:center;flex:0 0 auto}.ad-future-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}.ad-future h4{font-size:9px;margin:0 0 3px}.ad-future p{font-size:7.3px;color:#8d95a4;line-height:1.5;margin:0}.coming-pill{margin-left:auto;font-size:6.5px;color:#6d28d9;background:#efe7ff;border-radius:999px;padding:5px 7px;white-space:nowrap}

/* ---------- PLACEHOLDERS ---------- */
.module-hero-simple{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;display:flex;align-items:center;gap:15px}.module-icon.big{width:46px;height:46px;border-radius:12px;background:#efe7ff;color:#6d28d9;display:grid;place-items:center}.module-icon.big svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7}.module-hero-simple h2{font-size:18px;margin:0 0 5px}.module-hero-simple p{font-size:9px;color:#7b8392;margin:0}.placeholder-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.placeholder-card,.roadmap-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}.placeholder-card.accent{background:#fbf9ff;border-color:#e5daf9}.placeholder-card h3,.roadmap-card h3{font-size:11.5px;margin:4px 0 5px}.placeholder-card p,.roadmap-card p{font-size:8.5px;color:#858d9c;line-height:1.55;margin:0}.mini-label{font-size:7px;color:#8a92a1;font-weight:800;letter-spacing:.08em}.roadmap-card{margin-top:10px;display:flex;justify-content:space-between;align-items:center;gap:20px}.security-badge{font-size:7.5px;background:#eaf8ef;color:#2b8a55;border-radius:999px;padding:6px 8px;font-weight:700;white-space:nowrap}

/* ---------- MODAL ---------- */
.modal-backdrop{position:fixed;inset:0;background:rgba(11,16,29,.52);display:none;align-items:center;justify-content:center;padding:22px;z-index:100}.modal-backdrop.show{display:flex}.modal-card{width:min(680px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 30px 80px rgba(10,14,25,.25);padding:18px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.modal-head h3{font-size:16px;margin:0}.modal-close{border:0;background:#f2f3f6;width:30px;height:30px;border-radius:8px;color:#616978;font-size:18px;display:grid;place-items:center}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .span-2{grid-column:1/-1}.form-grid textarea{resize:vertical}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:3px}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1260px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.top-user-pill>div:last-child{display:none}.dashboard-grid-3{grid-template-columns:1fr 1fr}.dashboard-grid-3>*:last-child{grid-column:1/-1}.quick-actions{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1050px){.app-shell{grid-template-columns:210px minmax(0,1fr)}.sidebar{padding-left:10px;padding-right:10px}.search-box{display:none}.advertising-grid{grid-template-columns:1fr}.top-dux-mark{display:none}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid-2{grid-template-columns:1fr}}
@media(max-width:820px){.app-shell{display:block}.sidebar{position:fixed;left:-250px;width:238px;transition:.22s;box-shadow:12px 0 40px rgba(8,12,22,.24)}.sidebar.open{left:0}.mobile-menu{display:block}.topbar{padding:10px 14px}.content-wrap{padding:14px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid-3{grid-template-columns:1fr}.dashboard-grid-3>*:last-child{grid-column:auto}.placeholder-grid{grid-template-columns:1fr}.app-footer{padding:0 14px 14px}.topbar-actions .icon-button:nth-of-type(2){display:none}}
@media(max-width:720px){.login-shell{display:block}.login-visual{display:none}.login-panel{min-height:100vh;padding:22px}.login-card{padding:30px 24px}.login-card-head .mini-logo{display:flex;align-items:center;gap:10px;margin-bottom:25px}.login-card-head .mini-logo .brand-logo{width:34px}.login-card-head .mini-logo strong{font-size:20px}.page-heading,.ad-head,.dashboard-welcome{align-items:flex-start;flex-direction:column}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.top-user-pill{display:none}.topbar-subtitle{display:none}}
@media(max-width:520px){.kpi-grid,.stats-grid{grid-template-columns:1fr}.content-wrap{padding:12px}.topbar h1{font-size:16px}.panel-card,.dashboard-card{padding:12px}.quick-actions{grid-template-columns:1fr 1fr}.app-footer{flex-direction:column;gap:4px}.login-card{border-radius:14px}.roadmap-card{align-items:flex-start;flex-direction:column}}

/* ---------- TYPOGRAPHY SCALE V2.3 ----------
   Escala intermedia: más legible que el prototipo original, sin agrandar en exceso.
*/
html{font-size:15px}
body{font-size:14.5px;line-height:1.42}

/* Login */
.login-brand-big strong{font-size:28px}
.login-brand-big span{font-size:13px}
.login-visual-copy .kicker{font-size:12px}
.login-visual-copy p{font-size:15.5px;line-height:1.68}
.login-flow span{font-size:12px}
.login-visual-foot{font-size:12px}
.login-card-head h2{font-size:28px}
.login-card-head p{font-size:14.5px}
.login-form label,.form-grid label{font-size:13px}
.login-form input,.form-grid input,.form-grid select,.form-grid textarea{font-size:14.5px}
.password-field button{font-size:12px}
.primary-btn,.secondary-btn{font-size:13.5px}
.login-test-note{font-size:12px}
.alert{font-size:13px}

/* Sidebar */
.brand-name{font-size:21px}
.brand-sub{font-size:11px}
.sidebar-user-copy strong{font-size:13.5px}
.sidebar-user-copy span{font-size:11.5px}
.sidebar-user-copy small{font-size:10.5px}
.nav-section-label{font-size:9.5px}
.nav-item{font-size:13px;line-height:1.28;padding-top:10px;padding-bottom:10px}
.sidebar-corp strong{font-size:11px}
.sidebar-corp span{font-size:10px}

/* Top bar */
.topbar h1{font-size:20px}
.topbar-subtitle{font-size:11.5px}
.search-box input{font-size:12px}
.search-box kbd{font-size:9.5px}
.icon-button b{font-size:8.5px}
.top-dux-mark strong{font-size:18px}
.top-dux-mark span{font-size:7px}
.top-user-pill strong{font-size:12.5px}
.top-user-pill span{font-size:10.5px}
.app-footer{font-size:10.5px}

/* Page titles / cards */
.page-heading h2,.ad-head h2{font-size:22px}
.page-heading p,.ad-head p{font-size:13px;line-height:1.5}
.eyebrow{font-size:9.5px}
.panel-card-head h3,.card-head h3{font-size:15px}
.card-link,.table-note,.compact-btn{font-size:11px}

/* Dashboard */
.dashboard-welcome h2{font-size:23px}
.dashboard-welcome p{font-size:13.5px}
.welcome-date{font-size:11.5px}
.kpi-copy strong{font-size:22px}
.kpi-copy span{font-size:11.5px;line-height:1.3}
.kpi-copy small{font-size:10px;line-height:1.3}
.tabs .tab{font-size:11px}
.mini-table th{font-size:9.5px}
.mini-table td{font-size:12.5px;line-height:1.35}
.book-cell strong{font-size:12.5px}
.book-cell small{font-size:10px}
.book-thumb:after{font-size:6px}
.person-dot{font-size:9px}
.priority,.status-pill{font-size:10px}
.tiny-link{font-size:10.5px}
.timeline-time{font-size:10.5px}
.timeline-copy strong,.alert-copy strong,.activity-copy strong{font-size:12.5px}
.timeline-copy span,.alert-copy span,.activity-copy span{font-size:10px;line-height:1.3}
.timeline-tag{font-size:9px}
.alert-meta{font-size:9.5px}
.flow-stage strong{font-size:10.5px}
.flow-stage small{font-size:9px}
.quick-action strong{font-size:11px}
.quick-action span{font-size:9px}
.metric-row span,.metric-row b{font-size:11px}

/* Advertising */
.stat-card span{font-size:11.5px}
.stat-card strong{font-size:22px}
.stat-card small{font-size:10px}
.data-table th{font-size:9.5px}
.data-table td{font-size:12.5px;line-height:1.35}
.data-table td strong{font-size:12.5px}
.data-table td small{font-size:10px}
.ad-side-card h3{font-size:15px}
.ad-side-card>p{font-size:11.5px}
.expiry-item strong{font-size:11.5px}
.expiry-item span{font-size:10px}
.expiry-days{font-size:10px}
.ad-future h4{font-size:12.5px}
.ad-future p{font-size:10.5px}
.coming-pill{font-size:9.5px}

/* Module placeholders */
.module-hero-simple h2{font-size:22px}
.module-hero-simple p{font-size:13px}
.placeholder-card h3,.roadmap-card h3{font-size:15px}
.placeholder-card p,.roadmap-card p{font-size:12px}
.mini-label{font-size:9.5px}
.security-badge{font-size:10px}
.modal-head h3{font-size:18px}

/* ---------- PORTAL DEL AUTOR ---------- */
.author-body{background:#f7f8fb}
.author-shell{min-height:100vh;display:grid;grid-template-columns:238px minmax(0,1fr)}
.author-sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#0d1425,#0b1221);color:#fff;padding:20px 13px 16px;display:flex;flex-direction:column;box-shadow:5px 0 20px rgba(10,14,25,.06)}
.author-sidebar .author-badge{margin:15px 8px 4px;padding:8px 10px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);border-radius:9px;color:#aeb6c8;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.author-main{min-width:0;display:flex;flex-direction:column;min-height:100vh}
.author-content{padding:24px;flex:1}
.author-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:14px}
.author-hero h2{font-size:23px;letter-spacing:-.03em;margin:0 0 5px}
.author-hero p{font-size:13.5px;color:#71798a;margin:0}
.author-book{background:linear-gradient(135deg,#17122a,#251945);color:#fff;border-radius:14px;padding:18px;display:grid;grid-template-columns:70px 1fr auto;gap:16px;align-items:center;box-shadow:0 10px 28px rgba(18,24,40,.08)}
.author-cover{width:70px;height:96px;border-radius:5px;background:linear-gradient(160deg,#172640,#5a72ad);box-shadow:0 7px 20px rgba(0,0,0,.24);display:grid;place-items:center;font-family:Georgia,serif;font-size:10px;text-align:center;padding:8px}
.author-book-copy .author-label{font-size:9.5px;text-transform:uppercase;letter-spacing:.1em;color:#aaa0c6;font-weight:700}.author-book-copy h3{font-size:20px;margin:5px 0 4px}.author-book-copy p{font-size:11.5px;color:#bbb4ca;margin:0}.author-book-state{text-align:right}.author-book-state span{display:inline-flex;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.10);border-radius:999px;padding:6px 9px;font-size:10.5px;font-weight:700;color:#e8dcff}.author-book-state strong{display:block;font-size:24px;margin-top:8px}.author-book-state small{font-size:10px;color:#aaa3b8}
.author-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:10px 0}.author-kpi{background:#fff;border:1px solid #e7e8ee;border-radius:11px;padding:13px;display:flex;gap:10px;align-items:flex-start}.author-kpi .kpi-icon{width:31px;height:31px}.author-kpi strong{display:block;font-size:18px;line-height:1.05}.author-kpi span{display:block;font-size:11px;font-weight:600;color:#444b58;margin-top:4px}.author-kpi small{display:block;font-size:9.5px;color:#9299a7;margin-top:2px}
.author-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:10px}.author-stack{display:grid;gap:10px}.author-progress{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin-top:10px}.author-progress-stage{text-align:center;position:relative}.author-progress-stage:not(:last-child):after{content:"";position:absolute;top:15px;left:62%;width:76%;height:2px;background:#eceef2}.author-progress-stage.done:not(:last-child):after,.author-progress-stage.active:not(:last-child):after{background:#ceb4f8}.author-progress-dot{position:relative;z-index:2;width:30px;height:30px;border-radius:50%;background:#f0f1f4;color:#8d95a4;display:grid;place-items:center;margin:0 auto 6px}.author-progress-stage.done .author-progress-dot{background:#e8f8ee;color:#2b9358}.author-progress-stage.active .author-progress-dot{background:#eee4ff;color:#6d28d9;box-shadow:0 0 0 4px #f7f2ff}.author-progress-dot svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.author-progress-stage strong{display:block;font-size:10.5px}.author-progress-stage small{display:block;font-size:9px;color:#939aa8;margin-top:2px}
.author-note{margin-top:10px;border-radius:9px;background:#faf8ff;border:1px solid #eadffd;padding:11px 12px;font-size:10.5px;color:#625c70;line-height:1.45}.author-note strong{color:#3f3454}
.author-file-list{display:grid}.author-file{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #f0f1f4}.author-file:last-child{border-bottom:0}.author-file-icon{width:30px;height:30px;border-radius:8px;background:#efe8ff;color:#6d28d9;display:grid;place-items:center}.author-file-icon svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.author-file-copy{min-width:0;flex:1}.author-file-copy strong{display:block;font-size:11.5px}.author-file-copy span{display:block;font-size:9.5px;color:#969dab;margin-top:2px}.author-file-action{font-size:10px;color:#6d28d9;font-weight:700}
.author-support{background:linear-gradient(135deg,#fbf8ff,#f5eeff);border-color:#e9ddfb}.author-support p{font-size:10.5px;color:#777083;line-height:1.5;margin:4px 0 12px}

@media(max-width:1050px){.author-shell{grid-template-columns:210px minmax(0,1fr)}.author-kpis{grid-template-columns:repeat(2,1fr)}.author-grid{grid-template-columns:1fr}}
@media(max-width:820px){.author-shell{display:block}.author-sidebar{position:relative;width:100%;height:auto}.author-sidebar .nav-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.author-sidebar .sidebar-bottom{display:none}.author-content{padding:14px}.author-book{grid-template-columns:56px 1fr}.author-cover{width:56px;height:78px}.author-book-state{grid-column:1/-1;text-align:left;display:flex;align-items:center;gap:8px}.author-book-state strong{margin:0;font-size:20px}.author-progress{grid-template-columns:repeat(3,1fr);row-gap:14px}.author-progress-stage:after{display:none}}
@media(max-width:520px){.topbar h1{font-size:18px}.dashboard-welcome h2,.author-hero h2{font-size:21px}.page-heading h2,.ad-head h2{font-size:20px}.nav-item{font-size:12.5px}.mini-table td,.data-table td{font-size:12px}.author-kpis{grid-template-columns:1fr}.author-book{display:block}.author-cover{margin-bottom:12px}.author-book-state{margin-top:12px}}

/* ---------- TYPOGRAPHY REFINEMENT V2.4 ----------
   Menos peso visual, negritas moderadas y escala más cercana a interfaces como Hostinger.
*/
html{font-size:15px}
body{font-size:14px;line-height:1.45;font-weight:400;letter-spacing:0}
body strong,body b{font-weight:600}
h1,h2,h3,h4,h5,h6{font-weight:600}

/* Identidad */
.brand-name{font-size:20px;font-weight:700}
.brand-sub{font-size:10.5px;font-weight:400}
.sidebar-user-copy strong{font-size:13px;font-weight:600}
.sidebar-user-copy span{font-size:11px;font-weight:400}
.sidebar-user-copy small{font-size:10px;font-weight:400}
.sidebar-corp strong{font-size:10.5px;font-weight:600}
.sidebar-corp span{font-size:9.5px;font-weight:400}

/* Navegación */
.nav-section-label{font-size:9px;font-weight:600}
.nav-item{font-size:12.5px;font-weight:400;line-height:1.32}
.nav-item.active{font-weight:500}

/* Barra superior */
.topbar h1{font-size:19px;font-weight:600}
.topbar-subtitle{font-size:11px;font-weight:400}
.search-box input{font-size:11.5px;font-weight:400}
.top-user-pill strong{font-size:12px;font-weight:600}
.top-user-pill span{font-size:10px;font-weight:400}
.top-dux-mark strong{font-weight:600}

/* Encabezados de página */
.dashboard-welcome h2,.author-hero h2{font-size:21px;font-weight:600;letter-spacing:-.02em}
.dashboard-welcome p,.author-hero p{font-size:13px;font-weight:400}
.page-heading h2,.ad-head h2,.module-hero-simple h2{font-size:20px;font-weight:600;letter-spacing:-.02em}
.page-heading p,.ad-head p,.module-hero-simple p{font-size:12.5px;font-weight:400}
.welcome-date{font-size:11px;font-weight:400}

/* Tarjetas y secciones */
.panel-card-head h3,.card-head h3,.ad-side-card h3,.placeholder-card h3,.roadmap-card h3{font-size:14.5px;font-weight:600}
.card-link,.table-note,.compact-btn,.tiny-link{font-size:10.5px;font-weight:500}

/* KPI */
.kpi-copy strong{font-size:20px;font-weight:600}
.kpi-copy span{font-size:11px;font-weight:500;line-height:1.32}
.kpi-copy small{font-size:9.5px;font-weight:400}
.stat-card strong{font-size:20px;font-weight:600}
.stat-card span{font-size:11px;font-weight:500}
.stat-card small{font-size:9.5px;font-weight:400}

/* Tablas */
.tabs .tab{font-size:10.5px;font-weight:400}
.tabs .tab.active{font-weight:500}
.mini-table th,.data-table th{font-size:9px;font-weight:600;letter-spacing:.035em}
.mini-table td,.data-table td{font-size:12px;font-weight:400;line-height:1.4}
.book-cell strong,.data-table td strong{font-size:12px;font-weight:600}
.book-cell small,.data-table td small{font-size:9.5px;font-weight:400}
.person-dot{font-size:8.5px;font-weight:500}
.priority,.status-pill{font-size:9.5px;font-weight:500}

/* Calendario, alertas y actividad */
.timeline-time{font-size:10px;font-weight:400}
.timeline-copy strong,.alert-copy strong,.activity-copy strong{font-size:12px;font-weight:600}
.timeline-copy span,.alert-copy span,.activity-copy span{font-size:9.5px;font-weight:400;line-height:1.35}
.timeline-tag{font-size:8.5px;font-weight:500}
.alert-meta{font-size:9px;font-weight:400}

/* Flujo y accesos rápidos */
.flow-stage strong{font-size:10px;font-weight:500}
.flow-stage small{font-size:8.5px;font-weight:400}
.quick-action strong{font-size:10.5px;font-weight:500}
.quick-action span{font-size:8.5px;font-weight:400}
.metric-row span,.metric-row b{font-size:10.5px}
.metric-row b{font-weight:600}

/* Formularios y botones */
.login-form label,.form-grid label{font-size:12.5px;font-weight:500}
.login-form input,.form-grid input,.form-grid select,.form-grid textarea{font-size:14px;font-weight:400}
.primary-btn,.secondary-btn{font-size:13px;font-weight:600}
.password-field button{font-size:11.5px;font-weight:600}
.alert{font-size:12.5px;font-weight:500}

/* Portal del autor */
.author-sidebar .author-badge{font-size:9.5px;font-weight:500}
.author-book-copy .author-label{font-size:9px;font-weight:500}
.author-book-copy h3{font-size:19px;font-weight:600}
.author-book-copy p{font-size:11px;font-weight:400}
.author-book-state span{font-size:10px;font-weight:500}
.author-book-state strong{font-size:22px;font-weight:600}
.author-kpi strong{font-size:17px;font-weight:600}
.author-kpi span{font-size:10.5px;font-weight:500}
.author-kpi small{font-size:9px;font-weight:400}
.author-progress-stage strong{font-size:10px;font-weight:500}
.author-progress-stage small{font-size:8.5px;font-weight:400}
.author-file-copy strong{font-size:11px;font-weight:600}
.author-file-copy span{font-size:9px;font-weight:400}
.author-file-action{font-size:9.5px;font-weight:500}

/* Login: elegante, sin exceso de negrita */
.login-brand-big strong{font-weight:700}
.login-card-head h2{font-size:27px;font-weight:600}
.login-card-head p{font-size:14px;font-weight:400}
.login-visual-copy h1{font-weight:600}
.login-test-note{font-size:11.5px;font-weight:400}

@media(max-width:520px){
  .topbar h1{font-size:18px}
  .dashboard-welcome h2,.author-hero h2{font-size:20px}
  .page-heading h2,.ad-head h2{font-size:19px}
  .nav-item{font-size:12px}
  .mini-table td,.data-table td{font-size:11.5px}
}

/* ---------- COMMERCIAL WORKFLOW V2.5 ---------- */
.commercial-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.kommo-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}.commercial-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.commercial-goal-card{margin-bottom:12px}.commercial-goal-copy{display:flex;justify-content:space-between;align-items:center;gap:18px}.commercial-goal-copy h3{margin:3px 0 4px;font-size:14.5px;font-weight:600}.commercial-goal-copy p{margin:0;color:var(--muted);font-size:11px}.commercial-goal-number{font-size:21px;font-weight:600}.commercial-progress{height:6px;border-radius:999px;background:#eeeef4;overflow:hidden;margin-top:12px}.commercial-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--purple),#a855f7)}
.commercial-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:12px;align-items:start}.commercial-side{display:grid;gap:12px}.commercial-pipeline-card{min-width:0}.commercial-subhead{display:block;color:var(--muted);font-size:9.5px;margin-top:2px}.commercial-table th,.commercial-table td{white-space:nowrap}.commercial-table td:first-child,.commercial-table td:nth-child(2){white-space:normal}.commercial-actions-cell{display:flex;gap:5px;align-items:center;min-height:40px}.commercial-actions-cell form{margin:0}.compact-btn.success{border-color:#bfe8cf;color:#237b4b;background:#f0fbf4}.compact-btn.danger{border-color:#f5c7cc;color:#b43743;background:#fff5f6}.commercial-muted{font-size:9.5px;color:#969dab}.form-hint{display:block;font-size:9px;color:#959cab;font-weight:400;margin-top:-2px}
.commercial-contact-list{display:grid}.commercial-contact{display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center;padding:10px 0;border-bottom:1px solid #f0f1f4}.commercial-contact:last-child{border-bottom:0}.commercial-contact>span:last-child{color:#9a78db}.commercial-contact strong{display:block;font-size:11px;font-weight:600}.commercial-contact div span{display:block;font-size:9.5px;color:#9097a4;margin-top:2px}.commercial-contact-icon{width:30px;height:30px;border-radius:8px;display:grid;place-items:center}.commercial-contact-icon svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.commercial-contact-icon.purple{background:#f0e7ff;color:#7027d9}.commercial-contact-icon.blue{background:#e8f3ff;color:#2578c8}
.commercial-guide{list-style:none;padding:0;margin:0;counter-reset:guide}.commercial-guide li{position:relative;padding:0 0 11px 31px;counter-increment:guide}.commercial-guide li:before{content:counter(guide);position:absolute;left:0;top:0;width:21px;height:21px;border-radius:7px;background:#f1e8ff;color:#6d28d9;display:grid;place-items:center;font-size:9px;font-weight:600}.commercial-guide li:not(:last-child):after{content:"";position:absolute;left:10px;top:24px;bottom:2px;width:1px;background:#ece8f2}.commercial-guide b{display:block;font-size:10.5px;font-weight:600}.commercial-guide span{display:block;font-size:9.5px;line-height:1.4;color:#8b929f;margin-top:2px}.commercial-faq{border-top:1px solid #eff0f3;padding:9px 0}.commercial-faq:first-of-type{border-top:0}.commercial-faq summary{cursor:pointer;font-size:10.5px;font-weight:500;list-style:none}.commercial-faq summary::-webkit-details-marker{display:none}.commercial-faq summary:after{content:"+";float:right;color:#7c3aed}.commercial-faq[open] summary:after{content:"−"}.commercial-faq p{font-size:9.5px;line-height:1.45;color:#7f8794;margin:7px 0 0}
.workflow-connection-note{margin-top:12px;border:1px solid #e8dcfb;background:#faf8ff;border-radius:11px;padding:12px 14px;display:flex;gap:10px;align-items:flex-start}.workflow-connection-note>span{width:28px;height:28px;border-radius:8px;background:#eee5ff;color:#6d28d9;display:grid;place-items:center}.workflow-connection-note svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.workflow-connection-note strong{font-size:11px;font-weight:600}.workflow-connection-note p{margin:3px 0 0;font-size:10px;color:#777f8e;line-height:1.45}
.messages-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:12px;align-items:stretch}.messages-sidebar{padding:12px}.message-thread-link{display:grid;grid-template-columns:34px 1fr;gap:9px;align-items:center;padding:9px;border-radius:9px;margin-top:4px}.message-thread-link:hover,.message-thread-link.active{background:#f6f1ff}.message-thread-link strong{display:block;font-size:10.5px;font-weight:600}.message-thread-link div span{display:block;font-size:9.5px;color:#8c93a1;margin-top:2px}.messages-card{display:flex;flex-direction:column;min-height:520px}.messages-window{flex:1;overflow:auto;max-height:560px;padding:5px 2px 14px}.messages-empty{height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#949aa6;gap:6px}.messages-empty svg{width:28px;height:28px;fill:none;stroke:#b7a2dc;stroke-width:1.5}.messages-empty strong{font-size:12px;font-weight:500;color:#555d6b}.messages-empty span{font-size:10px}.message-row{display:flex;margin:8px 0}.message-row.mine{justify-content:flex-end}.message-bubble{max-width:min(620px,78%);background:#f4f5f8;border:1px solid #eceef2;border-radius:12px 12px 12px 3px;padding:9px 11px}.message-row.mine .message-bubble{background:#f1e9ff;border-color:#e4d5fb;border-radius:12px 12px 3px 12px}.message-bubble strong{font-size:9.5px;font-weight:600}.message-bubble p{font-size:11px;line-height:1.5;margin:3px 0;color:#3f4652}.message-bubble span{font-size:8.5px;color:#959ba7}.message-compose{display:grid;grid-template-columns:1fr auto;gap:8px;border-top:1px solid #eef0f3;padding-top:12px}.message-compose textarea{resize:none;border:1px solid #dfe2e8;border-radius:10px;padding:10px 11px;outline:none;font-size:11.5px}.message-compose textarea:focus{border-color:#8b3cf0;box-shadow:0 0 0 3px rgba(124,58,237,.08)}
@media(max-width:1150px){.commercial-layout{grid-template-columns:1fr}.commercial-side{grid-template-columns:repeat(2,minmax(0,1fr))}.commercial-side>*:last-child{grid-column:1/-1}.commercial-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.messages-layout{grid-template-columns:230px minmax(0,1fr)}}
@media(max-width:820px){.commercial-side{grid-template-columns:1fr}.commercial-side>*:last-child{grid-column:auto}.messages-layout{grid-template-columns:1fr}.messages-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.messages-sidebar .card-head{grid-column:1/-1}.commercial-table{min-width:940px}}
@media(max-width:520px){.commercial-kpis{grid-template-columns:1fr}.commercial-head-actions{width:100%}.commercial-head-actions>*{flex:1;justify-content:center}.messages-sidebar{grid-template-columns:1fr}.message-compose{grid-template-columns:1fr}.message-compose .primary-btn{justify-content:center}.message-bubble{max-width:90%}}

/* ---------- DUXAPP DATABASE + COMMERCIAL TRAINING V2.6 ---------- */
.preliminary-note{color:#9b7ac8!important;font-size:8.8px!important;margin-top:2px}.modal-wide{width:min(760px,calc(100vw - 28px))}.commercial-bottom-links{margin-top:12px}.guide-timeline{display:grid;gap:10px}.guide-step-card{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:start;padding:15px}.guide-step-number{width:32px;height:32px;border-radius:10px;background:#f0e7ff;color:#6e28d9;display:grid;place-items:center;font-size:12px;font-weight:600}.guide-step-card h3{font-size:13px;font-weight:500;margin:1px 0 5px}.guide-step-card p{font-size:11px;line-height:1.55;color:#747c89;margin:0}.training-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.training-card{padding:0;overflow:hidden}.training-video-wrap{aspect-ratio:16/9;background:#0d1322}.training-video-wrap video{display:block;width:100%;height:100%;object-fit:contain;background:#0d1322}.training-card-copy{padding:13px 14px 15px}.training-card-copy h3{font-size:13px;font-weight:500;margin:3px 0 6px}.training-card-copy p{font-size:10.5px;line-height:1.5;color:#7c8491;margin:0}.training-empty{text-align:center;padding:55px 20px}.training-empty-icon{width:44px;height:44px;border-radius:13px;background:#f0e7ff;color:#7130dc;display:grid;place-items:center;margin:0 auto 10px}.training-empty-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7}.training-empty h3{font-size:14px;font-weight:500;margin:0 0 5px}.training-empty p{font-size:11px;color:#858c98;margin:0}.commercial-info-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:12px;align-items:start}.commercial-info-main{display:grid;gap:10px}.info-article h3{font-size:13px;font-weight:500;margin:0 0 7px}.info-article p{font-size:11px;line-height:1.6;color:#6f7784;margin:0}.info-faq-card{position:sticky;top:88px}.form-grid textarea{resize:vertical;min-height:90px}
@media(max-width:1100px){.training-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.commercial-info-layout{grid-template-columns:1fr}.info-faq-card{position:static}}
@media(max-width:680px){.training-grid{grid-template-columns:1fr}.guide-step-card{grid-template-columns:32px minmax(0,1fr);padding:12px}.modal-wide{width:calc(100vw - 20px)}}

/* === DuxApp V2.7 · perfiles y áreas simultáneas === */
.sidebar-avatar.has-photo,.top-avatar.has-photo{overflow:hidden;background:#eef0f5;color:transparent}
.sidebar-avatar.has-photo img,.top-avatar.has-photo img{width:100%;height:100%;object-fit:cover;display:block}
.top-user-menu-wrap{position:relative}
.top-user-trigger{border:0;background:transparent;cursor:pointer;padding-top:0;padding-bottom:0;padding-right:2px}
.top-user-chevron{font-size:12px!important;color:#8f96a3!important;margin:0 0 0 2px!important;line-height:1}
.top-user-dropdown{position:absolute;right:0;top:calc(100% + 10px);width:250px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 18px 45px rgba(26,32,44,.14);padding:8px;display:none;z-index:80}
.top-user-dropdown.show{display:block}
.top-user-dropdown-head{padding:8px 9px 10px;border-bottom:1px solid #edf0f4;display:grid;gap:3px}
.top-user-dropdown-head strong{font-size:11.5px;font-weight:600;color:#202532;white-space:normal}
.top-user-dropdown-head span{font-size:9px;color:#8991a0;word-break:break-word}
.top-user-dropdown-title{font-size:8px;letter-spacing:.07em;color:#9aa1ae;font-weight:600;padding:10px 9px 5px;text-transform:uppercase}
.top-user-dropdown-link{display:flex;flex-direction:column;gap:2px;padding:8px 9px;border-radius:8px;color:#353b48}
.top-user-dropdown-link:hover{background:#f6f3ff;color:#6f28dc}
.top-user-dropdown-link.current{background:#f5f1ff}
.top-user-dropdown-link span{font-size:10.5px;font-weight:500;color:inherit;margin:0}
.top-user-dropdown-link small{font-size:8.5px;color:#9299a6}
.top-user-dropdown-link.logout{margin-top:5px;border-top:1px solid #edf0f4;border-radius:0;padding-top:10px;color:#9a4954}

.profile-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:14px;align-items:start}
.profile-card-main,.profile-roles-card{min-height:0}
.profile-form{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;padding:4px 0 2px}
.profile-photo-column{display:flex;flex-direction:column;align-items:center;gap:9px;padding:8px 10px 4px;border-right:1px solid #eef0f4}
.profile-photo-large{width:112px;height:112px;border-radius:50%;background:linear-gradient(135deg,#dfd0ff,#9f70f4);display:grid;place-items:center;overflow:hidden;color:#38216c;font-size:34px;font-weight:600;border:5px solid #f7f4ff;box-shadow:0 0 0 1px #e7e1f2}
.profile-photo-large img{width:100%;height:100%;object-fit:cover;display:block}
.profile-upload-btn{cursor:pointer;margin-top:4px}
.profile-photo-column>small{font-size:8.5px;color:#949baa;text-align:center;line-height:1.45}
.profile-remove-photo{font-size:9px;color:#6d7481;display:flex;gap:6px;align-items:center;cursor:pointer}
.sr-only-file{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.profile-fields{display:grid;gap:13px}
.profile-fields label{display:grid;gap:6px;font-size:10px;color:#4d5563;font-weight:500}
.profile-fields input{width:100%;height:38px;border:1px solid #dfe3e8;border-radius:8px;padding:0 11px;font:inherit;font-size:10.5px;color:#2b313c;background:#fff;outline:none}
.profile-fields input:focus{border-color:#9c6ee8;box-shadow:0 0 0 3px rgba(127,73,221,.08)}
.profile-fields input[readonly]{background:#f7f8fa;color:#89909d}
.profile-form-actions{display:flex;justify-content:flex-end;padding-top:4px}
.profile-help{font-size:9.5px;color:#7d8594;line-height:1.6;margin:0 0 10px}
.profile-role-list{display:grid;gap:7px}
.profile-role-item{border:1px solid #e8eaf0;border-radius:9px;padding:10px 11px;display:flex;align-items:center;justify-content:space-between;color:#3d4350;background:#fff}
.profile-role-item:hover{border-color:#d8c7f5;background:#faf8ff}
.profile-role-item.current{border-color:#cdb8f5;background:#f8f4ff}
.profile-role-item>div{display:grid;gap:3px}
.profile-role-item strong{font-size:10.5px;font-weight:500}
.profile-role-item span{font-size:8.5px;color:#9299a6}
.profile-role-item b{font-size:13px;font-weight:400;color:#8c56df}
.profile-note{margin-top:12px;padding:10px 11px;border-radius:9px;background:#f7f8fa;color:#727a88;font-size:8.8px;line-height:1.55}
.profile-note strong{color:#4b5360;font-weight:600}

@media(max-width:900px){.profile-layout{grid-template-columns:1fr}.profile-form{grid-template-columns:1fr}.profile-photo-column{border-right:0;border-bottom:1px solid #eef0f4;padding-bottom:18px}.top-user-dropdown{right:-10px}}
.top-user-trigger>div:nth-child(2){display:grid;min-width:0}
@media(max-width:1260px){.top-user-trigger>div:nth-child(2){display:none}.top-user-chevron{display:none}}

/* ---------- DUXAPP V2.8 · COMERCIAL, BÚSQUEDA Y NOTIFICACIONES ---------- */
.global-search-wrap{position:relative;flex:0 1 auto}
.topbar-actions{min-width:0}
.search-box{width:clamp(380px,32vw,570px);min-width:380px;height:40px;border-color:#d8dbe3;border-radius:10px;padding:0 11px;gap:9px;box-shadow:0 2px 9px rgba(18,24,40,.035);transition:border-color .18s,box-shadow .18s,background .18s}
.search-box:hover{border-color:#c9cdd7;background:#fff}
.search-box:focus-within{border-color:#9b5cf0;box-shadow:0 0 0 3px rgba(124,58,237,.09),0 4px 14px rgba(18,24,40,.05)}
.search-box input{font-size:12.5px!important;color:#303641}
.search-box input::placeholder{color:#8d95a3}
.search-box span svg{width:16px;height:16px}
.search-box kbd{font-size:9px!important;background:#f7f8fa;color:#9299a6;border-color:#e1e4e9}
.global-search-results{position:absolute;top:46px;left:0;right:0;background:#fff;border:1px solid #e1e4ea;border-radius:12px;box-shadow:0 18px 45px rgba(18,24,40,.14);padding:6px;z-index:90;max-height:390px;overflow:auto}
.global-search-results[hidden]{display:none}
.global-search-item{display:block;padding:10px 11px;border-radius:9px;transition:background .15s}
.global-search-item:hover{background:#f7f3ff}
.global-search-item strong{display:block;font-size:11.5px;font-weight:600;color:#292f39}
.global-search-item span{display:block;font-size:10.5px;color:#666f7e;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.global-search-item small{display:block;font-size:9px;color:#9aa1ae;margin-top:4px}
.global-search-empty{padding:17px 13px;text-align:center;color:#8b93a0;font-size:10.5px}

.notification-wrap{position:relative;flex:0 0 auto}
.notification-button{background:#fff;border:1px solid transparent}
.notification-button:hover,.notification-button[aria-expanded="true"]{background:#f5f1fb;border-color:#e8ddfa;color:#6f22e6}
.notification-button b[hidden]{display:none}
.notification-dropdown{position:absolute;right:-10px;top:43px;width:min(370px,calc(100vw - 28px));background:#fff;border:1px solid #e1e4ea;border-radius:13px;box-shadow:0 20px 54px rgba(18,24,40,.16);z-index:100;display:none;overflow:hidden}
.notification-dropdown.show{display:block}
.notification-dropdown-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid #eceef2}
.notification-dropdown-head strong{display:block;font-size:12px;font-weight:650}
.notification-dropdown-head span{display:block;font-size:9.5px;color:#8d95a2;margin-top:2px}
.notification-dropdown-head button{border:0;background:transparent;color:#6f22e6;font-size:9.5px;font-weight:600;padding:5px 6px;border-radius:6px}
.notification-dropdown-head button:hover:not(:disabled){background:#f4edff}
.notification-dropdown-head button:disabled{color:#b1b6bf;cursor:default}
.notification-list{max-height:340px;overflow:auto;padding:5px}
.notification-item{display:grid;grid-template-columns:8px minmax(0,1fr);gap:9px;padding:10px 9px;border-radius:9px;transition:background .15s}
.notification-item:hover{background:#f8f5fd}
.notification-dot{width:7px;height:7px;border-radius:50%;background:#7c3aed;margin-top:5px;box-shadow:0 0 0 3px #f0e7ff}
.notification-item strong{display:block;font-size:10.5px;font-weight:600;color:#303641}
.notification-item p{margin:2px 0 3px;font-size:10px;line-height:1.4;color:#626b79}
.notification-item small{font-size:8.5px;color:#9ba2ae}
.notification-empty{padding:28px 14px;text-align:center;color:#9199a6;font-size:10.5px}
.notification-permission{width:100%;border:0;border-top:1px solid #eceef2;background:#fafbfc;color:#636c7a;padding:10px 12px;font-size:9.5px;font-weight:500}
.notification-permission:hover:not(:disabled){background:#f5f1fb;color:#6f22e6}
.notification-permission:disabled{cursor:default;color:#8d95a2}

.goal-config-btn{display:inline-flex;align-items:center;gap:7px;color:#6b2bcf;border-color:#dfd2f3;background:#fbf9ff}
.goal-config-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}
.goal-config-btn:hover{background:#f5efff}
.goal-modal-card{width:min(520px,100%)}
.modal-backdrop.open{display:flex}

.message-compose textarea{min-height:44px;line-height:1.45}

@media(max-width:1380px){
  .search-box{width:clamp(320px,27vw,420px);min-width:320px}
  .topbar{padding-left:18px;padding-right:18px}
}
@media(max-width:1120px){
  .search-box{width:300px;min-width:300px}
  .top-dux-mark{display:none}
}
@media(max-width:1050px){
  .global-search-wrap{display:none}
}
@media(max-width:720px){
  .notification-dropdown{position:fixed;top:64px;right:10px;left:10px;width:auto}
}

/* ---------- DUXAPP V2.9 · EN LÍNEA, ARCHIVOS Y READING ---------- */
#liveConnectionState{display:flex;align-items:center;gap:4px;transition:color .2s}
#liveConnectionState i{animation:dux-live-pulse 1.8s ease-in-out infinite}
#liveConnectionState.is-offline{color:#b85b63}
#liveConnectionState.is-offline i{background:#e2525f!important;animation:none}
@keyframes dux-live-pulse{0%,100%{box-shadow:0 0 0 0 rgba(38,190,106,.12)}50%{box-shadow:0 0 0 4px rgba(38,190,106,.08)}}

.reading-table th,.reading-table td{vertical-align:middle}
.manuscript-cell{min-width:210px;white-space:normal!important}
.manuscript-file-link{display:flex;align-items:flex-start;gap:7px;max-width:250px;padding:6px 7px;border:1px solid #e7e9ee;border-radius:8px;background:#fbfcfd;transition:border-color .15s,background .15s}
.manuscript-file-link:hover{border-color:#d9c7f6;background:#faf7ff}
.manuscript-file-link>span{width:25px;height:25px;flex:0 0 25px;border-radius:7px;background:#f0e7ff;color:#6d28d9;display:grid;place-items:center}
.manuscript-file-link svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8}
.manuscript-file-link>div{min-width:0}
.manuscript-file-link strong{display:block!important;font-size:9.5px!important;font-weight:600!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:195px}
.manuscript-file-link small{display:block!important;font-size:8px!important;color:#9299a5!important;margin-top:2px}
.manuscript-version-count{display:block!important;margin-top:4px;color:#8f96a2!important}
.tiny-upload-btn{border:0;background:transparent;color:#6f28db;font-size:9px;font-weight:600;padding:5px 0 0;cursor:pointer}
.tiny-upload-btn:hover{text-decoration:underline}
.manuscript-file-picker input[type=file]{height:auto!important;padding:9px 10px!important;background:#fafbfc;cursor:pointer}
.manuscript-file-picker input[type=file]::file-selector-button{border:1px solid #dfd4f2;background:#f5efff;color:#6d28d9;border-radius:7px;padding:7px 10px;margin-right:9px;font:inherit;font-size:10px;font-weight:600;cursor:pointer}
.reading-form-placeholder{margin-top:12px}
.reading-form-empty{display:flex;align-items:center;gap:12px;padding:16px;border:1px dashed #ded5ed;border-radius:10px;background:#fcfbfe}
.reading-form-empty>span{width:36px;height:36px;border-radius:9px;background:#efe7fb;color:#6d28d9;display:grid;place-items:center;flex:0 0 auto}
.reading-form-empty svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}
.reading-form-empty strong{font-size:11px;font-weight:600;color:#3d4350}
.reading-form-empty p{margin:3px 0 0;font-size:9.5px;line-height:1.5;color:#838b98}
[data-live-region]{transition:opacity .12s ease}

@media(max-width:900px){
  .manuscript-file-link{max-width:220px}
}

/* ===== v2.10 · Formulario de lectura institucional ===== */
.reading-study-shell{display:grid;grid-template-columns:320px 1fr;gap:20px;align-items:start;margin-top:18px}
.reading-study-side{display:grid;gap:18px}
.sticky-side-card{position:sticky;top:96px}
.reading-case-summary{display:grid;gap:14px}
.reading-case-title strong{display:block;font-size:18px;color:var(--text)}
.reading-case-title span{display:block;font-size:13px;color:var(--muted);margin-top:4px}
.reading-case-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.reading-case-meta a{font-size:13px;font-weight:700;color:#7c3aed;text-decoration:none}
.study-mini-list{list-style:none;padding:0;margin:0;display:grid;gap:8px;color:var(--muted);font-size:13px}
.reading-helper-box{display:grid;gap:12px}
.reading-helper-box p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.reading-helper-text{width:100%;min-height:180px;border:1px solid rgba(148,163,184,.28);border-radius:16px;background:#f9fbff;padding:14px 16px;font:13px/1.55 'Inter',system-ui,sans-serif;color:var(--text);resize:vertical}
.reading-helper-actions{display:flex;gap:10px;flex-wrap:wrap}
.reading-study-form{display:grid;gap:18px}
.study-grid{display:grid;gap:16px}
.study-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.study-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.study-grid label,.study-option-group{display:grid;gap:8px;font-size:14px;font-weight:700;color:var(--text)}
.study-grid input[type="text"],.study-grid input[type="email"],.study-grid input[type="date"],.study-grid textarea{width:100%;border:1px solid rgba(148,163,184,.28);border-radius:14px;background:#fff;padding:13px 14px;font:14px/1.5 'Inter',system-ui,sans-serif;color:var(--text);box-shadow:0 4px 18px rgba(15,23,42,.03)}
.study-grid textarea{resize:vertical;min-height:120px}
.span-2{grid-column:span 2}
.span-3{grid-column:span 3}
.study-inline-options,.study-check-list{display:flex;flex-wrap:wrap;gap:12px}
.study-check-list{flex-direction:column;align-items:flex-start}
.inline-check,.study-check-list label{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(148,163,184,.24);border-radius:14px;background:#fff;font-weight:600;color:var(--text)}
.marketing-grid-options .inline-check{min-width:240px}
.imprint-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.imprint-choice{display:flex;gap:14px;align-items:center;padding:16px;border:1px solid rgba(148,163,184,.24);border-radius:18px;background:#fff;cursor:pointer;transition:all .18s ease}
.imprint-choice:hover,.imprint-choice.active{border-color:rgba(124,58,237,.32);box-shadow:0 12px 36px rgba(124,58,237,.12);transform:translateY(-1px)}
.imprint-choice input{margin-top:0}
.imprint-choice img{width:84px;height:84px;object-fit:contain;border-radius:14px;background:#030712;padding:8px;flex:0 0 auto}
.imprint-choice div{display:grid;gap:4px}
.imprint-choice span{font-size:12px;color:var(--muted);font-weight:500;line-height:1.45}
.decision-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.decision-card{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid rgba(148,163,184,.24);border-radius:16px;background:#fff;cursor:pointer;min-height:82px;transition:all .18s ease}
.decision-card.active,.decision-card:hover{border-color:rgba(124,58,237,.32);box-shadow:0 10px 28px rgba(124,58,237,.1)}
.decision-card span{font-weight:700;color:var(--text);line-height:1.45}
.reading-actions-toolbar{display:flex;flex-wrap:wrap;gap:12px}
.mail-last-status{margin-top:12px;font-size:13px;color:var(--muted)}
.reading-preview-panel{margin-top:4px}
.reading-preview-content{max-width:920px;margin:0 auto;border:1px solid rgba(148,163,184,.24);background:#fff;border-radius:24px;padding:32px;box-shadow:0 24px 80px rgba(15,23,42,.08)}
.preview-letterhead{display:flex;justify-content:space-between;align-items:center;gap:18px;padding-bottom:18px;border-bottom:2px solid rgba(124,58,237,.1)}
.preview-brand{display:flex;gap:18px;align-items:center}
.preview-brand img{width:92px;height:92px;object-fit:contain;background:#030712;border-radius:18px;padding:10px}
.preview-brand-copy strong{display:block;font-size:12px;letter-spacing:.18em;color:#7c3aed}
.preview-brand-copy h2{margin:6px 0 4px;font-size:26px;color:#111827}
.preview-brand-copy p{margin:0;color:#64748b;font-size:13px}
.preview-status{text-align:right;font-size:13px;color:#475569;line-height:1.6}
.preview-kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}
.preview-kv div{padding:14px 16px;background:#f8fafc;border:1px solid rgba(148,163,184,.18);border-radius:18px}
.preview-kv span{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin-bottom:6px}
.preview-kv strong{font-size:15px;color:#111827;line-height:1.45}
.preview-section{margin-top:20px}
.preview-section h4{margin:0 0 10px;font-size:18px;color:#111827}
.preview-section p,.preview-section li{font-size:14px;line-height:1.65;color:#273244;white-space:pre-wrap}
.preview-chip-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.preview-chip{padding:8px 12px;border-radius:999px;background:#f3e8ff;color:#6d28d9;font-size:12px;font-weight:700}
.history-search-bar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}
.history-search-bar input{min-width:280px;flex:1;border:1px solid rgba(148,163,184,.28);border-radius:14px;background:#fff;padding:12px 14px;font:14px/1.4 'Inter',system-ui,sans-serif}
.history-reading-table th,.history-reading-table td{vertical-align:top}
.reading-form-empty{display:flex;gap:16px;align-items:flex-start;color:var(--muted)}
.reading-form-empty span{width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;border-radius:16px;background:linear-gradient(135deg,#f3e8ff,#ede9fe);color:#7c3aed;flex:0 0 auto}
.reading-form-empty strong{display:block;color:var(--text);font-size:18px;margin-bottom:6px}
.reading-form-placeholder{margin-top:18px}
.reading-kpis .soft-orange .kpi-copy small{font-size:12px}
@media (max-width: 1180px){
  .reading-study-shell{grid-template-columns:1fr}
  .sticky-side-card{position:static}
}
@media (max-width: 900px){
  .study-grid-3,.study-grid-2,.preview-kv,.decision-grid,.imprint-choice-grid{grid-template-columns:1fr}
  .span-2,.span-3{grid-column:span 1}
  .reading-preview-content{padding:22px}
}


/* v2.10.1 · corrección de caché/branding del informe */
.preview-letterhead{display:grid;grid-template-columns:minmax(0,1fr) 92px auto;align-items:center}
.preview-company-logo{width:78px!important;height:68px!important;object-fit:contain!important;background:#fff!important;padding:0!important;border-radius:0!important}
.preview-imprint-mark{display:grid;place-items:center;width:92px;height:82px;border-left:1px solid rgba(148,163,184,.18);border-right:1px solid rgba(148,163,184,.18);padding:8px}
.preview-imprint-mark img{max-width:76px;max-height:64px;width:auto!important;height:auto!important;object-fit:contain;background:#fff;padding:0;border-radius:0}
.imprint-choice img{display:block;max-width:96px;max-height:82px;width:96px!important;height:82px!important;object-fit:contain!important;background:#050505!important;padding:8px!important;border-radius:14px!important}
.reading-study-main{min-width:0}
.reading-study-form .dashboard-card{overflow:hidden}
.study-grid input,.study-grid textarea{min-width:0}
@media(max-width:900px){
  .preview-letterhead{grid-template-columns:1fr;gap:16px;text-align:left}
  .preview-imprint-mark{border:0;width:auto;height:auto;justify-items:start;padding:0}
  .preview-status{text-align:left}
}


/* ===== v2.10.2 · Formulario a ancho completo y logos limpios ===== */
.reading-study-layout{display:grid;gap:18px;margin-top:18px}
.reading-study-main-full{width:100%;min-width:0;display:grid;gap:18px}
.reading-case-card{width:100%}
.reading-case-summary-wide{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.8fr);gap:22px;align-items:center}
.reading-case-identity{display:grid;gap:12px;min-width:0}
.reading-case-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.reading-case-details>div{padding:13px 14px;border:1px solid #e8eaf0;border-radius:12px;background:#fafbfc;min-width:0}
.reading-case-details span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#8a92a1;margin-bottom:5px}
.reading-case-details strong{display:block;font-size:12.5px;color:#2c3340;overflow-wrap:anywhere}
.reading-study-form{width:100%}
.reading-helper-card{width:100%}
.reading-helper-wide{width:100%}
.reading-helper-text-wide{min-height:220px;width:100%;font-size:13px;line-height:1.6}
.imprint-choice{min-height:150px;align-items:center;gap:20px;padding:20px}
.imprint-choice img{width:150px!important;height:96px!important;max-width:150px!important;max-height:96px!important;object-fit:contain!important;background:transparent!important;padding:0!important;border-radius:0!important;flex:0 0 150px}
.imprint-choice div{min-width:0}
.imprint-choice div strong{font-size:16px}
.imprint-choice span{font-size:13px}
.preview-imprint-mark{background:#fff}
.preview-imprint-mark img{background:transparent!important;max-width:82px;max-height:64px}
.reading-study-side,.sticky-side-card{position:static}
@media(max-width:1100px){
  .reading-case-summary-wide{grid-template-columns:1fr}
  .reading-case-details{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .reading-case-details{grid-template-columns:1fr}
  .imprint-choice-grid{grid-template-columns:1fr}
  .imprint-choice{min-height:auto}
  .imprint-choice img{width:120px!important;height:78px!important;flex-basis:120px}
}

/* ===== v2.10.3 · Reading futurista + validación visual ===== */
.reading-study-layout{position:relative;isolation:isolate}
.reading-study-layout:before{content:"";position:absolute;inset:-80px -60px auto auto;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(124,58,237,.11),rgba(124,58,237,0) 68%);pointer-events:none;z-index:-1}
.reading-case-card{border:1px solid rgba(124,58,237,.13)!important;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(250,248,255,.96))!important;box-shadow:0 22px 55px rgba(31,41,55,.055)!important}
.reading-case-details>div{background:linear-gradient(180deg,#fff,#fafbff);border-color:#e7e9f2;box-shadow:inset 0 1px 0 #fff,0 8px 22px rgba(15,23,42,.035)}

.reading-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.reading-tool-card{position:relative;overflow:hidden;min-height:360px;border:1px solid rgba(124,58,237,.13)!important;box-shadow:0 22px 55px rgba(23,28,44,.07)!important}
.reading-tool-card .tool-card-glow{position:absolute;width:220px;height:220px;border-radius:50%;right:-70px;top:-80px;filter:blur(2px);pointer-events:none}
.prompt-tool-card{background:linear-gradient(145deg,#0e1628 0%,#141d34 62%,#251547 100%)!important;color:#fff}
.prompt-tool-card .tool-card-glow{background:radial-gradient(circle,rgba(156,76,244,.45),rgba(156,76,244,0) 70%)}
.prompt-tool-card h3,.prompt-tool-card .reading-helper-box p{color:#fff}
.prompt-tool-card .commercial-subhead{color:#aeb7ca}
.prompt-tool-card .reading-helper-text{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.14)!important;color:#edf2ff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important}
.prompt-tool-card .secondary-btn{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.17);color:#fff}
.prompt-tool-card .secondary-btn:hover{background:rgba(255,255,255,.13)}
.json-tool-card{background:linear-gradient(145deg,#fff 0%,#fbfaff 56%,#f4efff 100%)!important}
.json-tool-card .tool-card-glow{background:radial-gradient(circle,rgba(124,58,237,.20),rgba(124,58,237,0) 70%)}
.tool-kicker{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border-radius:999px;font-size:9px!important;font-weight:800!important;letter-spacing:.11em!important;color:#7c3aed;background:#f1e8ff;margin-bottom:6px}
.prompt-tool-card .tool-kicker{background:rgba(167,139,250,.14);color:#c4b5fd;border:1px solid rgba(196,181,253,.16)}
.reading-tool-card h3{font-size:17px!important;letter-spacing:-.02em}
.reading-tool-card .reading-helper-text-wide{min-height:218px;max-height:300px}

.reading-completion-strip{display:grid;grid-template-columns:auto minmax(180px,1fr) 56px;gap:16px;align-items:center;padding:14px 18px;border:1px solid #e4e7ef;border-radius:16px;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);box-shadow:0 12px 30px rgba(15,23,42,.045)}
.completion-copy{display:flex;align-items:center;gap:10px;min-width:230px}
.completion-copy>div{display:grid;gap:1px}.completion-copy strong{font-size:12.5px}.completion-copy small{font-size:10.5px;color:#8a92a1}
.completion-orb{width:11px;height:11px;border-radius:50%;background:#7c3aed;box-shadow:0 0 0 6px rgba(124,58,237,.10),0 0 20px rgba(124,58,237,.42)}
.completion-meter{height:8px;background:#eceef5;border-radius:999px;overflow:hidden}
.completion-meter span{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#6d28d9,#8b5cf6,#22c55e);transition:width .28s ease}
#readingCompletionValue{font-size:15px;text-align:right;color:#5b21b6}
.reading-completion-strip.has-missing .completion-orb{background:#ef4444;box-shadow:0 0 0 6px rgba(239,68,68,.10),0 0 18px rgba(239,68,68,.25)}
.reading-completion-strip.has-missing #readingCompletionValue{color:#dc2626}

.reading-study-form{gap:20px!important}
.reading-form-section{position:relative;overflow:visible!important;border:1px solid #e7e9f0!important;border-radius:20px!important;padding:22px!important;background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(253,253,255,.98))!important;box-shadow:0 18px 46px rgba(15,23,42,.055)!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.reading-form-section:hover{border-color:#ddd6fe!important;box-shadow:0 22px 58px rgba(61,44,120,.08)!important}
.reading-form-section:before{content:attr(data-step);position:absolute;right:18px;top:18px;display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:linear-gradient(145deg,#f1e8ff,#faf7ff);border:1px solid #e6d9ff;color:#6d28d9;font-size:10px;font-weight:900;letter-spacing:.05em;box-shadow:0 8px 20px rgba(109,40,217,.08)}
.reading-form-section:after{content:"";position:absolute;left:24px;right:24px;top:0;height:2px;background:linear-gradient(90deg,transparent,#8b5cf6 22%,#b794f6 50%,transparent 85%);opacity:.65}
.reading-form-section .card-head{padding-right:48px;margin-bottom:18px}
.reading-form-section .card-head h3{font-size:17px!important;letter-spacing:-.02em}
.reading-form-section .commercial-subhead{font-size:11px!important}

.study-grid input[type="text"],.study-grid input[type="email"],.study-grid input[type="date"],.study-grid textarea{border:1px solid #dfe3ec!important;border-radius:14px!important;background:linear-gradient(180deg,#fff,#fcfdff)!important;box-shadow:0 6px 22px rgba(15,23,42,.025)!important;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,transform .18s ease}
.study-grid input:hover,.study-grid textarea:hover{border-color:#cfd5e2!important}
.study-grid input:focus,.study-grid textarea:focus{border-color:#8b5cf6!important;box-shadow:0 0 0 4px rgba(139,92,246,.10),0 9px 28px rgba(80,56,140,.07)!important;background:#fff!important}
.study-grid label{position:relative}
.inline-check,.study-check-list label{border-color:#e2e5ec!important;background:linear-gradient(180deg,#fff,#fbfcff)!important;transition:.18s ease}
.inline-check:hover,.study-check-list label:hover{transform:translateY(-1px);border-color:#cfc5ff!important;box-shadow:0 8px 20px rgba(124,58,237,.055)}
.inline-check:has(input:checked),.study-check-list label:has(input:checked){border-color:#bda8ff!important;background:linear-gradient(180deg,#fbf9ff,#f4efff)!important;box-shadow:0 8px 24px rgba(124,58,237,.08)}

.study-option-group{border-radius:16px;transition:.18s ease}
.field-missing{position:relative}
.field-missing>input,.field-missing>textarea,.field-missing input[type="text"],.field-missing input[type="email"],.field-missing input[type="date"],.field-missing textarea{border-color:#ef4444!important;background:#fff9f9!important;box-shadow:0 0 0 3px rgba(239,68,68,.07)!important}
.study-option-group.field-missing{padding:12px;border:1px solid #fecaca;background:#fffafa}
.missing-hint{display:inline-flex;align-items:center;gap:5px;width:max-content;margin-top:2px;color:#dc2626!important;font-size:10px!important;font-weight:800!important;letter-spacing:.02em}
.missing-hint:before{content:"";width:6px;height:6px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.10)}

.imprint-choice{border-radius:18px!important;background:linear-gradient(160deg,#fff,#fbfcff)!important;overflow:hidden;position:relative}
.imprint-choice:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(124,58,237,.0),rgba(124,58,237,.06));opacity:0;transition:.18s}
.imprint-choice.active:before,.imprint-choice:hover:before{opacity:1}
.imprint-choice.active{border-color:#bda8ff!important;box-shadow:0 14px 36px rgba(124,58,237,.11)!important}
.imprint-choice img{position:relative;z-index:1;filter:contrast(1.04)}
.imprint-choice div{position:relative;z-index:1}

.decision-grid{gap:14px!important}
.decision-card{position:relative;overflow:hidden;border-radius:17px!important;background:linear-gradient(180deg,#fff,#fbfcff)!important;min-height:92px!important;align-items:center!important}
.decision-card:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#d8dce6;transition:.18s}
.decision-card.active{border-color:#bba6ff!important;box-shadow:0 14px 34px rgba(124,58,237,.10)!important}
.decision-card.active:after{background:linear-gradient(#7c3aed,#a855f7)}

.decision-change-alert{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:13px;align-items:center;padding:14px 15px;border:1px solid #fdba74;border-radius:15px;background:linear-gradient(100deg,#fff7ed,#fffaf4);box-shadow:0 10px 28px rgba(234,88,12,.06)}
.decision-change-alert[hidden]{display:none!important}
.decision-alert-icon{width:36px;height:36px;border-radius:12px;background:#ffedd5;color:#c2410c;display:grid;place-items:center;font-size:18px;font-weight:900}
.decision-alert-copy{display:grid;gap:2px}.decision-alert-copy strong{font-size:12.5px;color:#9a3412}.decision-alert-copy p{margin:0;font-size:11px;line-height:1.5;color:#9a5a38}
.decision-alert-action{border:1px solid #fdba74;background:#fff;color:#c2410c;border-radius:10px;padding:9px 11px;font-size:10.5px;font-weight:800;white-space:nowrap}
.decision-stale textarea{border-color:#f59e0b!important;background:#fffbeb!important;box-shadow:0 0 0 3px rgba(245,158,11,.08)!important}

.actions-section{background:linear-gradient(145deg,#0f172a,#151c31 60%,#24133f)!important;border-color:rgba(139,92,246,.32)!important;color:#fff}
.actions-section .card-head h3{color:#fff!important}.actions-section .commercial-subhead,.actions-section .mail-last-status{color:#aeb7ca!important}
.actions-section:before{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.11)!important;color:#c4b5fd!important}
.actions-section:after{background:linear-gradient(90deg,transparent,#a78bfa,#7c3aed,transparent)}
.actions-section .secondary-btn{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.15);color:#fff}.actions-section .secondary-btn:hover{background:rgba(255,255,255,.12)}

.reading-preview-content{border-radius:22px!important;border-color:#e2e6ef!important;box-shadow:0 28px 80px rgba(15,23,42,.10)!important}
.preview-report-sheet{font-family:'Inter',system-ui,sans-serif}
.preview-letterhead{padding:20px!important;border:1px solid #e7e5ff!important;border-radius:18px!important;background:linear-gradient(145deg,#fbfaff,#fff)!important}
.preview-section{padding:0 2px 18px;border-bottom:1px solid #eef0f4}.preview-section:last-child{border-bottom:0}

@media(max-width:1050px){.reading-tools-grid{grid-template-columns:1fr}.reading-tool-card{min-height:auto}}
@media(max-width:760px){
  .reading-completion-strip{grid-template-columns:1fr auto}.completion-meter{grid-column:1/-1;grid-row:2}.completion-copy{min-width:0}
  .decision-change-alert{grid-template-columns:36px 1fr}.decision-alert-action{grid-column:1/-1;width:100%}
  .reading-form-section{padding:16px!important}.reading-form-section:before{right:12px;top:12px}
}
.reading-form-hero{position:relative;overflow:hidden;align-items:center!important;padding:22px 24px!important;border:1px solid rgba(139,92,246,.24);border-radius:20px;background:linear-gradient(120deg,#0f172a 0%,#151d33 56%,#27134b 100%);box-shadow:0 24px 56px rgba(15,23,42,.12);margin-bottom:18px!important}
.reading-form-hero:before{content:"";position:absolute;width:280px;height:280px;right:-70px;top:-160px;border-radius:50%;background:radial-gradient(circle,rgba(168,85,247,.34),rgba(168,85,247,0) 68%)}
.reading-form-hero:after{content:"READING · LIVE";position:absolute;right:24px;bottom:20px;padding:6px 9px;border:1px solid rgba(196,181,253,.20);border-radius:999px;background:rgba(255,255,255,.055);color:#c4b5fd;font-size:9px;font-weight:800;letter-spacing:.12em}
.reading-form-hero .eyebrow{color:#c4b5fd!important}.reading-form-hero h2{color:#fff!important;font-size:22px!important}.reading-form-hero p{color:#b8c2d6!important;max-width:860px!important;font-size:12.5px!important;line-height:1.65!important}
@media(max-width:760px){.reading-form-hero:after{display:none}}

/* ===== v2.10.4 · Historial independiente + preview multipágina ===== */
.reading-preview-panel{padding:22px!important;background:linear-gradient(180deg,#f7f8fc,#f1f3f9)!important;border:1px solid #e3e7f0!important}
.reading-preview-content{max-width:none!important;width:100%!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.preview-document-stack{display:grid;gap:28px;justify-items:center;padding:8px 0 24px}
.preview-a4-page{position:relative;width:min(920px,100%);min-height:1180px;padding:52px 58px 70px;border:1px solid #e1e5ee;border-radius:20px;background:#fff;box-shadow:0 28px 72px rgba(15,23,42,.11);overflow:hidden;color:#172033}
.preview-a4-page:before{content:"";position:absolute;left:0;right:0;top:0;height:7px;background:linear-gradient(90deg,#111827 0 55%,#7c3aed 55% 79%,#a855f7 79% 100%)}
.preview-page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #e8ebf2}
.preview-page-brand{display:flex;align-items:center;gap:12px}.preview-page-brand img{width:48px;height:48px;object-fit:contain;border-radius:11px;background:#fff}.preview-page-brand div{display:grid;gap:2px}.preview-page-brand strong{font-size:12px;letter-spacing:.09em}.preview-page-brand span{font-size:10.5px;color:#7b8495}
.preview-page-number{font-size:30px;line-height:1;font-weight:850;color:#e8e1ff;letter-spacing:-.04em}
.preview-page-title{padding:28px 0 18px}.preview-page-title>span{display:block;font-size:9px;font-weight:800;letter-spacing:.14em;color:#7c3aed;margin-bottom:7px}.preview-page-title h3{font-size:28px;letter-spacing:-.035em;margin:0;color:#111827}.preview-page-title p{font-size:12px;color:#6b7280;margin:7px 0 0}
.preview-pro-section{padding:18px 0;border-bottom:1px solid #edf0f5}.preview-pro-section:last-of-type{border-bottom:0}.preview-pro-section h4{margin:0 0 9px;color:#6d28d9;font-size:15px}.preview-pro-section p{margin:0;color:#273244;font-size:13.2px;line-height:1.68;white-space:normal}
.preview-page-footer{position:absolute;left:58px;right:58px;bottom:25px;display:flex;justify-content:space-between;gap:20px;padding-top:12px;border-top:1px solid #e9edf3;color:#7b8495;font-size:9.5px}
.preview-cover-page{background:linear-gradient(145deg,#fff 0%,#fdfcff 68%,#f6f1ff 100%)}
.preview-cover-page:after{content:"";position:absolute;width:430px;height:430px;border-radius:50%;right:-170px;top:-160px;background:radial-gradient(circle,rgba(124,58,237,.12),rgba(124,58,237,0) 70%);pointer-events:none}
.preview-cover-top{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;padding-bottom:32px;border-bottom:1px solid #e7e9f0;position:relative;z-index:1}
.preview-cover-brand{display:flex;gap:22px;align-items:center}.preview-cover-brand>img{width:96px;height:96px;object-fit:contain;border-radius:18px;background:#fff;border:1px solid #eceef4;padding:8px}.preview-cover-brand div{display:grid;gap:5px}.preview-cover-brand span{font-size:10px;letter-spacing:.18em;font-weight:800;color:#7c3aed}.preview-cover-brand strong{font-size:31px;line-height:1.08;letter-spacing:-.04em;color:#0f172a}.preview-cover-brand p{margin:2px 0 0;color:#677085;font-size:12px}
.preview-cover-imprint{display:grid;justify-items:center;gap:7px;min-width:140px}.preview-cover-imprint img{width:120px;height:76px;object-fit:contain}.preview-cover-imprint span{font-size:10px;font-weight:800;color:#697386}
.preview-cover-work{padding:55px 0 30px;position:relative;z-index:1}.preview-cover-work>span{font-size:10px;letter-spacing:.14em;color:#8b5cf6;font-weight:800}.preview-cover-work h2{font-size:36px;line-height:1.12;letter-spacing:-.04em;margin:10px 0 8px;color:#111827}.preview-cover-work p{margin:0;font-size:16px;color:#596273}
.preview-cover-decision{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:18px 20px;border-radius:16px;background:#111827;color:#fff;position:relative;z-index:1}.preview-cover-decision span{font-size:9px;letter-spacing:.12em;color:#c4b5fd;font-weight:800}.preview-cover-decision strong{font-size:15px}.preview-cover-decision small{margin-left:auto;color:#cbd5e1;font-size:11px}
.preview-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:26px;position:relative;z-index:1}.preview-meta-grid>div{padding:15px;border:1px solid #e6e9ef;border-radius:15px;background:rgba(255,255,255,.86)}.preview-meta-grid span{display:block;font-size:9px;letter-spacing:.10em;color:#7b8494;text-transform:uppercase;margin-bottom:6px}.preview-meta-grid strong{display:block;font-size:12.5px;line-height:1.42;color:#172033}
.preview-chip-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:14px 0 18px}.preview-chip-row>div{padding:14px;border-radius:15px;background:#faf9ff;border:1px solid #ebe6ff}.preview-chip-row>div>span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#7c3aed;font-weight:800;margin-bottom:8px}.preview-chip-list{display:flex;flex-wrap:wrap;gap:7px}.preview-chip{display:inline-flex;margin:3px 5px 3px 0!important;padding:6px 9px!important;border-radius:999px!important;background:#f1e8ff!important;color:#6d28d9!important;font-size:10.5px!important;font-weight:750!important}
.preview-imprint-panel{display:grid;grid-template-columns:150px 1fr;gap:22px;align-items:center;padding:22px;border:1px solid #e9e4ff;border-radius:18px;background:linear-gradient(145deg,#fff,#faf7ff);margin-top:20px}.preview-imprint-panel img{width:140px;height:92px;object-fit:contain}.preview-imprint-panel span{display:block;font-size:9px;letter-spacing:.12em;color:#7c3aed;font-weight:800;margin-bottom:6px}.preview-imprint-panel strong{display:block;font-size:19px;color:#111827;margin-bottom:8px}.preview-imprint-panel p{font-size:12.5px;line-height:1.6;margin:0;color:#4b5563}
.preview-decision-panel{padding:22px 24px;border-radius:18px;margin:12px 0 22px;border:1px solid #e5e7eb;background:#f8fafc}.preview-decision-panel span{display:block;font-size:9px;letter-spacing:.12em;font-weight:800;margin-bottom:7px}.preview-decision-panel strong{font-size:19px}.preview-decision-panel.decision-approved{background:#effaf4;border-color:#ccebd8;color:#166534}.preview-decision-panel.decision-needs_revision{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.preview-decision-panel.decision-rejected{background:#fef2f2;border-color:#fecaca;color:#b91c1c}

.reading-history-head{align-items:flex-end!important}.reading-history-head .primary-btn{white-space:nowrap}
.history-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.history-summary-card{padding:18px 20px;border-radius:17px;border:1px solid #e4e8f0;background:linear-gradient(180deg,#fff,#fbfcff);box-shadow:0 10px 30px rgba(15,23,42,.04)}.history-summary-card span{display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#7d8696;margin-bottom:6px}.history-summary-card strong{font-size:28px;letter-spacing:-.04em;color:#111827}.history-summary-approved{border-color:#d7eee0;background:#f7fdf9}.history-summary-review{border-color:#f6dfc7;background:#fffaf3}.history-summary-rejected{border-color:#f3d7da;background:#fff9f9}
.reading-history-card{padding:20px!important}.history-toolbar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:10px}.history-search-modern{display:flex;gap:10px;flex:1;margin:0!important}.history-search-field{position:relative;flex:1;min-width:260px}.history-search-field>span{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#8a92a1;width:17px}.history-search-field svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}.history-search-field input{width:100%;padding:12px 14px 12px 39px!important;border-radius:12px!important;border:1px solid #dde2ea!important;background:#fff!important}.history-page-size-form label{display:flex;align-items:center;gap:8px;font-size:12px;color:#697386;white-space:nowrap}.history-page-size-form select{border:1px solid #dde2ea;border-radius:10px;background:#fff;padding:9px 28px 9px 10px;color:#283244}.history-range-copy{font-size:11px;color:#818a9b;margin-bottom:10px}.history-table-wrap{border:1px solid #edf0f4;border-radius:14px;overflow:auto}.history-reading-page-table{min-width:980px}.history-reading-page-table th{background:#fafbfc}.history-reading-page-table td{white-space:normal!important;line-height:1.45}.history-title-cell{min-width:260px;max-width:390px}.history-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}.history-page-btn,.history-page-numbers a{display:inline-grid;place-items:center;min-width:36px;height:36px;padding:0 11px;border:1px solid #dfe3ea;border-radius:10px;background:#fff;color:#485264;font-size:11px;font-weight:700}.history-page-btn.disabled{pointer-events:none;opacity:.45}.history-page-numbers{display:flex;align-items:center;gap:6px}.history-page-numbers a.active{background:linear-gradient(135deg,#6d28d9,#8b5cf6);border-color:transparent;color:#fff}.history-page-numbers span{color:#8b93a2;padding:0 3px}

@media(max-width:1000px){.history-summary-grid{grid-template-columns:repeat(2,1fr)}.history-toolbar{align-items:stretch;flex-direction:column}.history-page-size-form{align-self:flex-end}.preview-meta-grid,.preview-chip-row{grid-template-columns:1fr 1fr}.preview-a4-page{min-height:1000px;padding:42px 38px 66px}.preview-page-footer{left:38px;right:38px}}
@media(max-width:680px){.history-summary-grid{grid-template-columns:1fr}.history-search-modern{flex-wrap:wrap}.history-search-field{min-width:100%}.history-pagination{align-items:stretch;flex-direction:column}.preview-cover-top,.preview-cover-brand{flex-direction:column}.preview-cover-imprint{justify-items:start}.preview-cover-work h2{font-size:29px}.preview-meta-grid,.preview-chip-row,.preview-imprint-panel{grid-template-columns:1fr}.preview-a4-page{min-height:0;padding:34px 24px 70px;border-radius:14px}.preview-page-footer{left:24px;right:24px}.preview-cover-decision small{margin-left:0;width:100%}}

/* ===== v2.10.5 · Preview, historial y seguimiento conectado ===== */
.js-preview-reading-report.preview-active{
  background:linear-gradient(135deg,#16a34a,#22c55e)!important;
  border-color:#16a34a!important;
  color:#fff!important;
  box-shadow:0 10px 28px rgba(34,197,94,.22)!important;
}
.reading-preview-panel[hidden]{display:none!important}
.reading-preview-panel>.card-head{align-items:center;gap:14px}
.history-status-filter{
  min-width:190px;
  height:48px;
  border:1px solid rgba(148,163,184,.28);
  border-radius:14px;
  background:#fff;
  padding:0 38px 0 14px;
  font:600 13px/1.2 'Inter',system-ui,sans-serif;
  color:var(--ink);
}
.mail-delivery-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
}
.mail-delivery-sent{background:#ecfdf3;color:#15803d;border:1px solid rgba(34,197,94,.2)}
.mail-delivery-pending{background:#fff7ed;color:#c2410c;border:1px solid rgba(249,115,22,.2)}
.mail-delivery-date{display:block;margin-top:5px;font-size:11px;color:var(--muted);line-height:1.35}
.commercial-followup-state{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  line-height:1.25;
}
.commercial-followup-state.waiting{background:#fff7ed;color:#c2410c}
.commercial-followup-state.done{background:#ecfdf3;color:#15803d}
.commercial-followup-state.closed{background:#f8fafc;color:#64748b}
.commercial-followup-help{display:block;max-width:240px;margin-top:6px;color:var(--muted);font-size:11px;line-height:1.45}
.inline-action-form{display:inline-flex;margin:0}
.compact-btn.followup{border-color:rgba(124,58,237,.25);background:#f5f3ff;color:#6d28d9}
.commercial-table th,.commercial-table td{vertical-align:top}
@media (max-width:1100px){
  .history-search-modern{width:100%}
  .history-status-filter{min-width:170px;flex:1}
}


/* ===== v2.10.7 · Corrección de tablas sin scroll ni texto vertical ===== */
html,body{max-width:100%;overflow-x:hidden!important}
.app-shell,.main-area,.content-wrap,.dashboard-card{min-width:0;max-width:100%}
.table-wrap{width:100%;max-width:100%;overflow-x:hidden!important;overflow-y:visible!important}

/* Reading compartido por Lector y Productor */
.reading-table{width:100%!important;min-width:0!important;table-layout:fixed!important;border-collapse:collapse}
.reading-table th,.reading-table td{
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  vertical-align:middle!important;
  line-height:1.35!important;
}
.reading-table th{font-size:9px!important;padding:9px 7px!important}
.reading-table td{font-size:11px!important;padding:12px 7px!important}
.reading-table td strong{font-size:11px!important;line-height:1.3}
.reading-table td small{font-size:9px!important;line-height:1.35}
.reading-table th:nth-child(1),.reading-table td:nth-child(1){width:8.5%}
.reading-table th:nth-child(2),.reading-table td:nth-child(2){width:9.5%}
.reading-table th:nth-child(3),.reading-table td:nth-child(3){width:14%}
.reading-table th:nth-child(4),.reading-table td:nth-child(4){width:16%}
.reading-table th:nth-child(5),.reading-table td:nth-child(5){width:9%}
.reading-table th:nth-child(6),.reading-table td:nth-child(6){width:8%}
.reading-table th:nth-child(7),.reading-table td:nth-child(7){width:9%}
.reading-table th:nth-child(8),.reading-table td:nth-child(8){width:14%}
.reading-table th:nth-child(9),.reading-table td:nth-child(9){width:12%}
.reading-table tr{height:auto!important}
.reading-table .manuscript-cell{min-width:0!important;max-width:none!important}
.reading-table .manuscript-file-link{width:100%;max-width:100%;min-width:0;padding:8px 9px;box-sizing:border-box}
.reading-table .manuscript-file-link>div{min-width:0;max-width:100%}
.reading-table .manuscript-file-link strong,
.reading-table .manuscript-file-link small{white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
.reading-table .mail-delivery-badge{display:inline-flex;max-width:100%;white-space:normal!important;text-align:center;justify-content:center}
.reading-table .mail-delivery-date{white-space:normal!important;margin-top:4px}
.reading-table .commercial-actions-cell{
  display:table-cell!important;
  min-width:0!important;
  width:auto!important;
  text-align:left;
  vertical-align:middle!important;
}
.reading-table .commercial-actions-cell .compact-btn,
.reading-table .commercial-actions-cell .commercial-muted{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  max-width:100%;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  line-height:1.25!important;
  text-align:center;
}
.reading-table .commercial-actions-cell .compact-btn{padding:8px 9px!important;font-size:10px!important}
.reading-table .commercial-actions-cell .commercial-muted{font-size:10px!important;text-align:left;justify-content:flex-start}

/* Comercial: la ayuda debe quedar DENTRO de la celda Acción */
body[data-area="commercial"] .commercial-table:not(.reading-table){width:100%!important;table-layout:fixed!important;min-width:0!important}
body[data-area="commercial"] .commercial-table:not(.reading-table) th,
body[data-area="commercial"] .commercial-table:not(.reading-table) td{
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  vertical-align:middle!important;
  padding-left:8px!important;
  padding-right:8px!important;
}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(1),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(1){width:14%}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(2),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(2){width:9%}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(3),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(3){width:10%}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(4),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(4){width:12%}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(5),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(5){width:10%}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(6),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(6){width:9%}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(7),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(7){width:8%}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(8),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(8){width:28%}
body[data-area="commercial"] .commercial-actions-cell{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center;
  gap:5px!important;
  min-width:0!important;
  width:auto!important;
  max-width:100%!important;
}
body[data-area="commercial"] .commercial-actions-cell form{max-width:100%;width:auto}
body[data-area="commercial"] .commercial-actions-cell .compact-btn{max-width:100%;white-space:normal!important;text-align:center;line-height:1.25}
body[data-area="commercial"] .commercial-followup-help{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box;
  margin:1px 0 0!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  line-height:1.35!important;
  font-size:9.5px!important;
}

/* Historial: sin barra horizontal interna */
.history-table-wrap{width:100%;max-width:100%;overflow-x:hidden!important;overflow-y:visible!important}
.history-reading-page-table{width:100%!important;min-width:0!important;table-layout:fixed!important}
.history-reading-page-table th,.history-reading-page-table td{white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;vertical-align:middle!important}
.history-reading-page-table th:nth-child(1),.history-reading-page-table td:nth-child(1){width:9%}
.history-reading-page-table th:nth-child(2),.history-reading-page-table td:nth-child(2){width:22%}
.history-reading-page-table th:nth-child(3),.history-reading-page-table td:nth-child(3){width:15%}
.history-reading-page-table th:nth-child(4),.history-reading-page-table td:nth-child(4){width:15%}
.history-reading-page-table th:nth-child(5),.history-reading-page-table td:nth-child(5){width:7%}
.history-reading-page-table th:nth-child(6),.history-reading-page-table td:nth-child(6){width:10%}
.history-reading-page-table th:nth-child(7),.history-reading-page-table td:nth-child(7){width:11%}
.history-reading-page-table th:nth-child(8),.history-reading-page-table td:nth-child(8){width:11%}
.history-title-cell{min-width:0!important;max-width:none!important}

/* En pantallas medianas no apilamos letras: reducimos información secundaria */
@media(max-width:1120px){
  .reading-table th{font-size:8px!important;padding:8px 5px!important}
  .reading-table td{font-size:10px!important;padding:10px 5px!important}
  .reading-table td strong{font-size:10px!important}
  .reading-table td small{font-size:8.5px!important}
  .reading-table .commercial-actions-cell .compact-btn,.reading-table .commercial-actions-cell .commercial-muted{font-size:9px!important}
}

@media(max-width:860px){
  .reading-table thead{display:none}
  .reading-table,.reading-table tbody,.reading-table tr,.reading-table td{display:block!important;width:100%!important}
  .reading-table tr{border:1px solid #e9edf3;border-radius:14px;margin-bottom:12px;padding:10px;background:#fff}
  .reading-table td{border:0!important;padding:7px 8px!important}
  .reading-table td:before{display:block;font-size:8px;font-weight:700;color:#99a1af;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}
  .reading-table td:nth-child(1):before{content:"Nombre preliminar"}
  .reading-table td:nth-child(2):before{content:"Nombre confirmado"}
  .reading-table td:nth-child(3):before{content:"Obra"}
  .reading-table td:nth-child(4):before{content:"Archivo"}
  .reading-table td:nth-child(5):before{content:"Comercial"}
  .reading-table td:nth-child(6):before{content:"Recibida"}
  .reading-table td:nth-child(7):before{content:"Estado"}
  .reading-table td:nth-child(8):before{content:"Resultado al autor"}
  .reading-table td:nth-child(9):before{content:"Acción"}
  .reading-table .commercial-actions-cell{display:block!important;text-align:left}
}

/* ===== V2.10.8 · navegación completa + comercial ordenado ===== */
/* Mantiene visualmente la columna del menú hasta el final del documento,
   aunque el contenido principal sea mucho más largo que el viewport. */
.app-shell{
  background:linear-gradient(90deg,#0d1526 0,#0d1526 238px,var(--surface) 238px,var(--surface) 100%);
}
@media(max-width:1050px) and (min-width:821px){
  .app-shell{background:linear-gradient(90deg,#0d1526 0,#0d1526 210px,var(--surface) 210px,var(--surface) 100%)}
}
@media(max-width:820px){
  .app-shell{background:var(--surface)}
}

.commercial-filter-panel{
  display:grid;gap:10px;margin:2px 0 16px;padding:14px;border:1px solid rgba(148,163,184,.18);
  border-radius:16px;background:#f9fafc;
}
.commercial-filter-form{
  display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(150px,.6fr) minmax(170px,.7fr) minmax(120px,.45fr) auto auto;
  gap:10px;align-items:center;
}
.commercial-filter-search{display:flex;align-items:center;gap:9px;border:1px solid #e1e6ef;background:#fff;border-radius:12px;padding:0 12px;min-width:0}
.commercial-filter-search svg{width:17px;height:17px;color:#8994a7;flex:0 0 auto}
.commercial-filter-search input{border:0;outline:0;background:transparent;width:100%;min-width:0;padding:11px 0;color:var(--ink)}
.commercial-filter-form select{min-width:0;border:1px solid #e1e6ef;background:#fff;border-radius:12px;padding:10px 34px 10px 11px;color:var(--ink)}
.commercial-filter-summary{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:12px;color:var(--muted)}
.commercial-filter-summary strong{color:var(--ink);font-size:13px}
.commercial-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(148,163,184,.15)}

/* El estado posterior a la aprobación debe leerse como seguimiento, no como una tarea de datos aún no solicitados. */
.commercial-followup-help{display:block;max-width:230px;line-height:1.35;margin-top:6px;color:#7b8496}
.commercial-actions-cell .inline-action-form{display:block}
.commercial-actions-cell .compact-btn{white-space:normal;line-height:1.25}

@media(max-width:1320px){
  .commercial-filter-form{grid-template-columns:minmax(220px,1fr) repeat(3,minmax(135px,.55fr));}
  .commercial-filter-form .secondary-btn{justify-self:start}
}
@media(max-width:900px){
  .commercial-filter-form{grid-template-columns:1fr 1fr}
  .commercial-filter-search{grid-column:1/-1}
  .commercial-filter-summary{align-items:flex-start;flex-direction:column}
}
@media(max-width:620px){
  .commercial-filter-form{grid-template-columns:1fr}
  .commercial-filter-search{grid-column:auto}
}


/* ===== DuxApp 2.10.13 · Correo editorial + recepción + SLA Reading ===== */
.mailbox-hero{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:26px 28px;margin-bottom:18px;border-radius:22px;
  background:linear-gradient(120deg,#10182d 0%,#171332 62%,#3d1a74 100%);
  color:#fff;box-shadow:0 18px 48px rgba(31,22,69,.18)
}
.mailbox-hero h2{margin:5px 0 8px;font-size:28px}.mailbox-hero p{margin:0;max-width:920px;color:#cbd5e1;line-height:1.6}
.mailbox-account-card{display:flex;align-items:center;gap:12px;flex:0 0 auto;padding:13px 16px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.07)}
.mailbox-account-card strong,.mailbox-account-card small{display:block}.mailbox-account-card small{margin-top:3px;color:#cbd5e1}
.mailbox-live-dot{width:10px;height:10px;border-radius:50%;background:#34d399;box-shadow:0 0 0 5px rgba(52,211,153,.12)}
.mailbox-toolbar-card{padding:16px 18px}.mailbox-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mailbox-search{display:flex;align-items:center;gap:10px;min-width:320px;flex:1;border:1px solid #e2e8f0;border-radius:14px;padding:0 13px;background:#fff}
.mailbox-search input{border:0;outline:0;width:100%;padding:12px 0;font:inherit;background:transparent}
.mailbox-counter{margin-left:auto;color:#64748b;font-size:13px}
.mailbox-list{display:grid;gap:14px}.mailbox-message{padding:18px 20px;position:relative}.mailbox-message.is-unread{border-left:4px solid #8b5cf6}
.mailbox-message-head{display:flex;justify-content:space-between;gap:18px;align-items:center}
.mailbox-sender{display:flex;gap:12px;align-items:center}.mailbox-sender strong,.mailbox-sender span{display:block}.mailbox-sender span{margin-top:3px;color:#64748b;font-size:13px}
.mailbox-avatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#ede9fe,#ddd6fe);color:#6d28d9;font-weight:800}
.mailbox-date{font-size:12px;color:#94a3b8}
.mailbox-subject-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start;margin-top:15px}
.mailbox-subject-row h3{margin:0 0 9px;font-size:17px;color:#0f172a}
.mailbox-attachment-list{display:flex;gap:8px;flex-wrap:wrap}.mail-chip{display:inline-flex;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:700}
.mail-chip.allowed{background:#ecfdf5;color:#047857}.mail-chip.neutral{background:#f1f5f9;color:#64748b}
.mailbox-processed{display:grid;justify-items:end;gap:6px;text-align:right;min-width:180px}.mailbox-processed small{font-size:11px;color:#94a3b8}.mailbox-processed a{font-size:12px;color:#7c3aed;text-decoration:none;font-weight:700}
.mail-reception-sent{font-size:11px;color:#059669;font-weight:700}.mail-reception-error{font-size:11px;color:#dc2626;font-weight:700}
.mailbox-receive-details{min-width:220px}.mailbox-receive-details>summary{cursor:pointer;list-style:none;padding:11px 15px;border-radius:12px;background:linear-gradient(135deg,#7c3aed,#9333ea);color:#fff;font-weight:700;text-align:center;box-shadow:0 10px 24px rgba(124,58,237,.18)}
.mailbox-receive-details[open]{grid-column:1/-1;margin-top:10px}.mailbox-receive-details[open]>summary{max-width:220px;margin-left:auto}
.mailbox-receive-form{margin-top:15px;padding:18px;border:1px solid #ede9fe;border-radius:18px;background:linear-gradient(180deg,#fcfbff,#fff)}
.mailbox-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.mailbox-form-grid label{display:grid;gap:7px;font-size:13px;font-weight:700;color:#334155}
.mailbox-form-grid label small{font-weight:500;color:#94a3b8}.mailbox-form-grid input,.mailbox-form-grid select{width:100%;padding:11px 12px;border:1px solid #dbe2ec;border-radius:12px;background:#fff;color:#0f172a;font:inherit}
.mailbox-flow-preview{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:16px 0;color:#475569;font-size:12px}.mailbox-flow-preview span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#ede9fe;color:#6d28d9;font-weight:800}.mailbox-flow-preview p{margin:0}.mailbox-flow-preview i{font-style:normal;color:#a78bfa}
.mailbox-confirm-btn{min-width:320px}.mailbox-empty,.mailbox-setup-state{display:flex;gap:16px;align-items:flex-start}.mailbox-empty>span,.mailbox-setup-state>span{width:48px;height:48px;border-radius:15px;background:#f3e8ff;color:#7c3aed;display:grid;place-items:center;flex:0 0 auto}
.mailbox-setup-state h3,.mailbox-empty strong{margin:0}.mailbox-setup-state p,.mailbox-empty p{color:#64748b;line-height:1.55}
.reading-received-cell strong,.reading-received-cell small{display:block}.reading-received-cell small{margin-top:3px;color:#64748b}
.sla-badge{display:inline-flex;margin-top:6px;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}
.sla-success{background:#ecfdf5;color:#047857}.sla-warning{background:#fff7ed;color:#c2410c}.sla-danger{background:#fef2f2;color:#b91c1c}.sla-neutral{background:#f1f5f9;color:#64748b}

@media(max-width:980px){
  .mailbox-hero{align-items:flex-start;flex-direction:column}.mailbox-account-card{width:100%}
  .mailbox-subject-row{grid-template-columns:1fr}.mailbox-processed{justify-items:start;text-align:left}.mailbox-receive-details{width:100%}
  .mailbox-form-grid{grid-template-columns:1fr}.mailbox-form-grid .span-2{grid-column:auto}.mailbox-confirm-btn{width:100%;min-width:0}
}

/* ===== v2.10.17 · Correo editorial completo ===== */
.mailbox-list.modern{gap:10px}
.mailbox-message{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;overflow:hidden}
.mailbox-message-open{display:block;min-width:0;color:inherit;text-decoration:none;border-radius:14px;padding:2px 4px;transition:background .16s ease}
.mailbox-message-open:hover{background:#faf8ff}
.mailbox-list-subject{margin-top:12px;min-width:0}
.mailbox-list-subject h3{margin:0 0 9px;font-size:16px;color:#0f172a;white-space:normal;overflow-wrap:anywhere}
.mailbox-list-actions{display:flex;align-items:center;justify-content:flex-end;min-width:140px}
.primary-btn.compact,.secondary-btn.compact{padding:10px 14px;font-size:12px;white-space:nowrap}
.mailbox-per-select{border:1px solid #e2e8f0;border-radius:12px;background:#fff;padding:10px 12px;color:#334155;font:inherit}
.mailbox-pagination{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:14px 0 20px;padding:14px 18px;border:1px solid #e9e7f4;border-radius:16px;background:#fff;color:#64748b;font-size:13px}
.mailbox-pagination>div{display:flex;align-items:center;gap:10px}.mailbox-pagination strong{color:#334155}
.mail-reader-topbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:0 0 16px}
.mail-back-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;border:1px solid #e1e5ee;background:#fff;color:#334155;font-weight:700;text-decoration:none}
.mail-reader-top-actions{display:flex;gap:10px;flex-wrap:wrap}
.mail-reader-card{padding:0;overflow:hidden}
.mail-reader-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:start;padding:24px 26px;border-bottom:1px solid #edf0f5;background:linear-gradient(180deg,#fff,#fbfcff)}
.mailbox-avatar.large{width:52px;height:52px;border-radius:17px;font-size:18px}
.mail-reader-heading{min-width:0}.mail-reader-heading h2{margin:0 0 8px;font-size:22px;line-height:1.35;color:#0f172a;overflow-wrap:anywhere}
.mail-reader-meta{font-size:13px;color:#475569;line-height:1.5;overflow-wrap:anywhere}.mail-reader-meta.subtle{margin-top:4px;color:#94a3b8;font-size:12px}
.mail-reader-status{display:flex;justify-content:flex-end}
.mail-reader-body{padding:30px 34px;min-height:180px;white-space:normal;font-size:15px;line-height:1.75;color:#243043;overflow-wrap:anywhere;background:#fff}
.mail-reader-attachments{padding:22px 26px 28px;border-top:1px solid #edf0f5;background:#fbfcff}
.mail-section-label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-weight:800;margin-bottom:12px}
.mail-attachment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mail-attachment-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 14px;border:1px solid #e3e7ef;border-radius:14px;background:#fff;color:#263244;text-decoration:none;transition:all .16s ease;min-width:0}
.mail-attachment-card:hover{border-color:#c4b5fd;box-shadow:0 8px 24px rgba(124,58,237,.08);transform:translateY(-1px)}
.mail-attachment-icon{display:grid;place-items:center;min-width:44px;height:38px;border-radius:10px;background:#f3e8ff;color:#7c3aed;font-size:10px;font-weight:900;letter-spacing:.05em}
.mail-attachment-card span:nth-child(2){min-width:0}.mail-attachment-card strong,.mail-attachment-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-attachment-card small{margin-top:4px;color:#94a3b8;font-size:11px}.mail-attachment-card b{font-size:11px;color:#7c3aed}
.mail-reply-card{margin-top:16px}
.mail-reply-form{display:grid;gap:14px}.mail-reply-recipient{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:10px;padding:12px 14px;border:1px solid #e5e7ef;border-radius:14px;background:#fafbfe}.mail-reply-recipient>span{font-size:10px;letter-spacing:.08em;color:#8b95a7;font-weight:800}.mail-reply-recipient strong{color:#182033}.mail-reply-recipient small{color:#64748b;overflow-wrap:anywhere}
.mail-reply-form textarea{width:100%;min-height:170px;border:1px solid #dfe4ed;border-radius:16px;padding:16px 17px;font:14px/1.65 'Inter',system-ui,sans-serif;color:#172033;resize:vertical;background:#fff}.mail-reply-form textarea:focus{outline:none;border-color:#a78bfa;box-shadow:0 0 0 4px rgba(124,58,237,.08)}
.mail-reply-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.mail-reply-actions span{font-size:12px;color:#94a3b8}
.mail-intake-card{margin-top:16px;border-color:#e7ddff;background:linear-gradient(180deg,#fff,#fdfcff)}
.mail-intake-heading{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;margin-bottom:16px}.mail-intake-heading h3{margin:5px 0 6px;font-size:22px;color:#111827}.mail-intake-heading p{margin:0;color:#64748b;line-height:1.6;max-width:850px}.mail-intake-badge{flex:0 0 auto;padding:9px 12px;border-radius:999px;background:#ede9fe;color:#6d28d9;font-size:11px;font-weight:800;white-space:nowrap}
.mailbox-receive-form.premium{margin-top:0;background:#fff}
.mail-intake-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.mail-intake-flow>div{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;padding:14px;border:1px solid #ede9fe;border-radius:14px;background:#faf8ff}.mail-intake-flow span{grid-row:1/3;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#7c3aed;color:#fff;font-size:11px;font-weight:800}.mail-intake-flow strong{font-size:13px;color:#25184e}.mail-intake-flow small{font-size:11px;color:#8b82a8}
.mail-reception-preview-note{margin:0 0 16px;padding:13px 15px;border-radius:13px;background:#f0fdf4;border:1px solid #bbf7d0;color:#356149;font-size:12px;line-height:1.55}.mail-reception-preview-note b{color:#166534}
.mail-reception-completed{display:flex;gap:16px;align-items:flex-start;margin-top:16px;background:linear-gradient(180deg,#fff,#f8fffb);border-color:#d7f5e4}.mail-reception-complete-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#dcfce7;color:#15803d;font-size:22px;font-weight:900;flex:0 0 auto}.mail-reception-completed h3{margin:5px 0 6px}.mail-reception-completed p{margin:5px 0;color:#64748b}
.mail-no-manuscript{display:flex;gap:14px;align-items:flex-start;margin-top:16px}.mail-no-manuscript>span{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#f3e8ff;color:#7c3aed;flex:0 0 auto}.mail-no-manuscript strong{display:block;color:#172033}.mail-no-manuscript p{margin:5px 0 0;color:#64748b}
@media(max-width:980px){
  .mailbox-message{grid-template-columns:1fr}.mailbox-list-actions{justify-content:flex-start;min-width:0}
  .mail-reader-header{grid-template-columns:auto minmax(0,1fr)}.mail-reader-status{grid-column:2;justify-content:flex-start}
  .mail-attachment-grid{grid-template-columns:1fr}.mail-intake-flow{grid-template-columns:1fr}
  .mailbox-pagination{align-items:flex-start;flex-direction:column}
}
@media(max-width:680px){
  .mail-reader-topbar,.mail-intake-heading{align-items:flex-start;flex-direction:column}.mail-reader-top-actions{width:100%}
  .mail-reader-body{padding:22px 20px}.mail-reader-header{padding:20px}.mail-reply-recipient{grid-template-columns:1fr;gap:4px}
  .mail-attachment-card{grid-template-columns:auto minmax(0,1fr)}.mail-attachment-card b{grid-column:2}
}

/* ===== DuxApp 2.10.19 · Correo editorial estilo Gmail ===== */
.gmail-flash{margin-bottom:12px}
.gmail-workspace{display:grid;grid-template-columns:190px minmax(0,1fr);min-height:680px;border:1px solid #e5e7eb;border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 12px 34px rgba(15,23,42,.05)}
.gmail-inner-nav{padding:18px 12px 16px;background:#fbfcff;border-right:1px solid #edf0f5;display:flex;flex-direction:column;min-width:0}
.gmail-compose-btn{display:flex;align-items:center;gap:10px;width:max-content;max-width:100%;padding:13px 18px;margin:0 6px 16px;border-radius:16px;background:linear-gradient(135deg,#7c3aed,#9333ea);color:#fff;text-decoration:none;font-weight:800;box-shadow:0 10px 25px rgba(124,58,237,.2)}
.gmail-compose-btn span{font-size:22px;line-height:1;font-weight:400}.gmail-compose-btn:hover{transform:translateY(-1px)}
.gmail-folder-nav{display:grid;gap:3px}.gmail-folder-nav a{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 12px;border-radius:12px;color:#475569;text-decoration:none;font-size:13px;transition:background .14s ease,color .14s ease}.gmail-folder-nav a:hover{background:#f3f0ff;color:#5b21b6}.gmail-folder-nav a.is-active{background:#ede9fe;color:#5b21b6}.gmail-folder-nav a span{text-align:center;color:#7c3aed}.gmail-folder-nav a b{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gmail-folder-nav a em{font-style:normal;font-size:11px;color:#7c3aed;font-weight:800}
.gmail-account-mini{margin-top:auto;padding:14px 10px 4px;display:flex;gap:9px;align-items:center;border-top:1px solid #eef0f5;min-width:0}.gmail-account-mini strong,.gmail-account-mini small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gmail-account-mini strong{font-size:11px;color:#334155}.gmail-account-mini small{font-size:10px;color:#94a3b8;margin-top:2px}.gmail-account-mini .mailbox-live-dot{width:8px;height:8px;box-shadow:0 0 0 4px rgba(52,211,153,.11);flex:0 0 auto}
.gmail-mail-panel{min-width:0;background:#fff;display:flex;flex-direction:column}
.gmail-list-toolbar,.gmail-panel-toolbar{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 18px;border-bottom:1px solid #edf0f5;background:#fff}
.gmail-search-form{display:flex;align-items:center;gap:9px;flex:1;max-width:760px;border:1px solid #dfe4ec;border-radius:14px;padding:0 12px;background:#f8fafc}.gmail-search-form input{width:100%;border:0;outline:0;background:transparent;padding:11px 0;font:14px 'Inter',system-ui,sans-serif;color:#172033}.gmail-search-form button{border:0;background:transparent;color:#7c3aed;font-weight:800;cursor:pointer;padding:7px}
.gmail-list-actions{display:flex;align-items:center;gap:9px;color:#64748b;font-size:12px;white-space:nowrap}.gmail-list-actions select{border:1px solid #e0e5ed;border-radius:10px;padding:8px 9px;background:#fff;color:#475569}
.gmail-icon-btn{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#475569;text-decoration:none;cursor:pointer;font-size:18px}.gmail-icon-btn:hover{background:#f1f5f9;color:#7c3aed}.gmail-toolbar-left,.gmail-toolbar-right{display:flex;align-items:center;gap:8px}.gmail-toolbar-left form{margin:0}.gmail-toolbar-right{font-size:12px;color:#94a3b8}
.gmail-current-folder{display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid #edf0f5;background:#fafbfe;color:#64748b;font-size:12px}.gmail-current-folder strong{color:#172033;font-size:14px}.gmail-current-folder a{margin-left:auto;color:#7c3aed;text-decoration:none;font-weight:700}
.gmail-message-list{display:block;min-width:0}
.gmail-row{display:grid;grid-template-columns:36px minmax(125px,190px) minmax(0,1fr) 78px 82px;align-items:center;min-height:54px;border-bottom:1px solid #edf0f5;background:#fff;transition:box-shadow .12s ease,background .12s ease;position:relative}.gmail-row:hover{background:#f9fafb;box-shadow:inset 3px 0 #c4b5fd}.gmail-row.is-unread{background:#f6f5ff}.gmail-row.is-unread .gmail-row-sender,.gmail-row.is-unread .gmail-row-content strong,.gmail-row.is-unread .gmail-row-date{font-weight:800;color:#111827}.gmail-row.has-manuscript{box-shadow:inset 3px 0 #8b5cf6}
.gmail-star-form{display:grid;place-items:center;margin:0}.gmail-star{border:0;background:transparent;color:#cbd5e1;font-size:17px;cursor:pointer;padding:8px;line-height:1}.gmail-star:hover,.gmail-star.is-starred{color:#f59e0b}
.gmail-row-sender,.gmail-row-content,.gmail-row-date{color:#475569;text-decoration:none;min-width:0}.gmail-row-sender{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:10px}.gmail-row-content{padding:8px 10px 8px 0;font-size:13px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.gmail-row-content strong{font-weight:700;color:#273244}.gmail-row-content span{color:#8490a3;font-weight:400}.gmail-row-date{font-size:11px;text-align:right;padding-right:10px;color:#64748b;white-space:nowrap}
.gmail-row-attachments{display:flex;align-items:center;gap:5px;margin-top:5px;overflow:hidden;white-space:nowrap}.gmail-row-attachments i{display:inline-block;max-width:155px;overflow:hidden;text-overflow:ellipsis;padding:3px 7px;border-radius:8px;background:#f1f5f9;color:#64748b;font-size:9px;font-style:normal}.gmail-row.has-manuscript .gmail-row-attachments i{background:#ecfdf5;color:#047857}
.gmail-row-editorial{justify-self:center;display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:6px 8px;border-radius:9px;background:#7c3aed;color:#fff;text-decoration:none;font-size:10px;font-weight:800}.gmail-row-editorial.done{background:#ecfdf5;color:#047857}.gmail-row-editorial.empty{background:transparent;min-width:0;padding:0}
.gmail-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 18px;border-top:1px solid #edf0f5;color:#64748b;font-size:12px;margin-top:auto}.gmail-pagination>div{display:flex;align-items:center;gap:10px}.gmail-pagination a{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;text-decoration:none;color:#475569;background:#f8fafc;font-size:20px}.gmail-pagination a:hover{background:#ede9fe;color:#6d28d9}.gmail-pagination strong{color:#334155}
.gmail-empty-state{padding:70px 30px;text-align:center;color:#64748b}.gmail-empty-state strong{display:block;color:#172033;font-size:17px}.gmail-empty-state p{margin:7px 0 0}

.gmail-compose-window{margin:26px auto;width:min(860px,calc(100% - 40px));border:1px solid #e1e5ed;border-radius:18px;box-shadow:0 18px 45px rgba(15,23,42,.12);overflow:hidden}.gmail-compose-title{padding:12px 16px;background:#f2f3f7;color:#334155;font-size:13px;font-weight:800}.gmail-compose-form{display:grid}.gmail-compose-form label{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;border-bottom:1px solid #edf0f5;padding:0 16px}.gmail-compose-form label span{font-size:12px;color:#64748b}.gmail-compose-form label input{border:0;outline:0;padding:13px 0;font:14px 'Inter',system-ui,sans-serif}.gmail-compose-form textarea{border:0;outline:0;resize:vertical;min-height:320px;padding:18px;font:14px/1.65 'Inter',system-ui,sans-serif;color:#172033}.gmail-compose-footer{display:flex;align-items:center;gap:14px;padding:13px 16px;border-top:1px solid #edf0f5}.gmail-compose-footer small{color:#94a3b8}

.gmail-thread-view{padding:22px 30px 10px;max-width:1040px;width:100%;margin:0 auto}.gmail-thread-subject{display:flex;align-items:center;gap:14px;margin:5px 0 22px}.gmail-thread-subject h2{margin:0;font-size:22px;line-height:1.35;color:#172033}.gmail-manuscript-action{margin-left:auto;padding:8px 11px;border-radius:10px;background:#ede9fe;color:#6d28d9;text-decoration:none;font-size:11px;font-weight:800;white-space:nowrap}.gmail-thread-message{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px}.gmail-thread-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#e9e5ff;color:#6d28d9;font-weight:800}.gmail-thread-content{min-width:0}.gmail-thread-sender{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.gmail-thread-sender strong{font-size:14px;color:#172033}.gmail-thread-sender span,.gmail-thread-sender small{color:#64748b;font-size:12px}.gmail-thread-sender small{display:block;margin-top:3px}.gmail-thread-sender time{font-size:11px;color:#94a3b8;white-space:nowrap}.gmail-thread-body{padding:22px 0 12px;font-size:14px;line-height:1.72;color:#273244;overflow-wrap:anywhere}.gmail-thread-attachments{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 20px}.gmail-thread-attachments a{display:flex;align-items:center;gap:8px;max-width:290px;padding:8px 11px;border:1px solid #e1e5ed;border-radius:10px;color:#334155;text-decoration:none;font-size:11px}.gmail-thread-attachments a span{display:grid;place-items:center;min-width:32px;height:28px;border-radius:7px;background:#fee2e2;color:#b91c1c;font-size:8px;font-weight:900}.gmail-thread-attachments a b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gmail-inline-reply{margin-top:18px;border:1px solid #dfe4ed;border-radius:14px;background:#fff;overflow:hidden}.gmail-inline-reply textarea{width:100%;border:0;outline:0;resize:vertical;min-height:120px;padding:15px 16px;font:14px/1.6 'Inter',system-ui,sans-serif}.gmail-inline-reply form>div{display:flex;align-items:center;gap:12px;padding:10px 12px;border-top:1px solid #edf0f5}.gmail-inline-reply small{color:#94a3b8}
.gmail-editorial-status{display:flex;gap:12px;align-items:center;margin:10px auto 20px;max-width:980px;padding:14px 16px;border-radius:14px}.gmail-editorial-status.success{background:#ecfdf5;color:#047857}.gmail-editorial-status>span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#d1fae5;font-weight:900}.gmail-editorial-status strong,.gmail-editorial-status small{display:block}.gmail-editorial-status small{margin-top:3px;color:#4b7665}
.gmail-intake-drawer{margin:12px auto 26px;max-width:980px;border:1px solid #e4def7;border-radius:16px;background:#fbfaff;overflow:hidden}.gmail-intake-drawer>summary{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:11px;align-items:center;padding:14px 16px;cursor:pointer;list-style:none}.gmail-intake-drawer>summary>span{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#ede9fe;color:#7c3aed}.gmail-intake-drawer>summary strong,.gmail-intake-drawer>summary small{display:block}.gmail-intake-drawer>summary strong{font-size:14px;color:#27144f}.gmail-intake-drawer>summary small{margin-top:2px;color:#8b82a8;font-size:11px}.gmail-intake-drawer>summary>b{padding:6px 9px;border-radius:999px;background:#ede9fe;color:#6d28d9;font-size:10px}.gmail-intake-form{border:0!important;border-top:1px solid #ece7fb!important;border-radius:0!important;margin:0!important;background:#fff!important}.gmail-intake-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding-top:14px;border-top:1px solid #edf0f5}.gmail-intake-footer p{margin:0;max-width:650px;color:#64748b;font-size:12px;line-height:1.55}

@media(max-width:1180px){.gmail-workspace{grid-template-columns:165px minmax(0,1fr)}.gmail-row{grid-template-columns:34px minmax(105px,145px) minmax(0,1fr) 66px 66px}.gmail-row-content span{display:none}.gmail-row-attachments i{max-width:110px}}
@media(max-width:900px){.gmail-workspace{grid-template-columns:1fr}.gmail-inner-nav{border-right:0;border-bottom:1px solid #edf0f5;padding:10px 12px}.gmail-folder-nav{display:flex;overflow-x:auto;gap:4px}.gmail-folder-nav a{grid-template-columns:auto auto auto;white-space:nowrap}.gmail-account-mini{display:none}.gmail-compose-btn{margin:0 0 9px;width:auto;justify-content:center}.gmail-row{grid-template-columns:32px minmax(110px,145px) minmax(0,1fr) 58px}.gmail-row-editorial{display:none}.gmail-row-date{padding-right:8px}.gmail-thread-view{padding:18px 20px}.gmail-intake-footer{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.gmail-row{grid-template-columns:30px minmax(0,1fr) 58px}.gmail-row-sender{display:none}.gmail-row-content{padding-right:5px}.gmail-row-content strong{display:block;overflow:hidden;text-overflow:ellipsis}.gmail-list-toolbar{align-items:stretch;flex-direction:column}.gmail-list-actions{justify-content:flex-end}.gmail-thread-message{grid-template-columns:1fr}.gmail-thread-avatar{display:none}.gmail-thread-sender{flex-direction:column;gap:5px}.gmail-thread-subject{align-items:flex-start;flex-direction:column}.gmail-manuscript-action{margin-left:0}.gmail-compose-window{width:calc(100% - 20px);margin:10px auto}.gmail-intake-drawer>summary{grid-template-columns:32px minmax(0,1fr)}.gmail-intake-drawer>summary>b{grid-column:2;justify-self:start}}

/* ===== DuxApp 2.10.20 · Chat Lectura Editorial ↔ Producción ===== */
.messages-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.staff-chat-live{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid #d9f7e7;border-radius:999px;background:#f0fdf4;color:#168254;font-size:11px;font-weight:800;white-space:nowrap}
.staff-chat-live i{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.12)}
.messages-layout-v2120{grid-template-columns:260px minmax(0,1fr);gap:16px}
.messages-sidebar-v2120{padding:14px;align-self:start}
.messages-sidebar-v2120 .card-head{margin-bottom:8px}
.messages-sidebar-v2120 .card-head h3{font-size:14px;margin:0}
.messages-sidebar-v2120 .card-head span{display:block;margin-top:3px;color:#94a3b8;font-size:10px}
.messages-sidebar-label{margin:16px 8px 6px;color:#9aa3b2;font-size:9px;font-weight:800;letter-spacing:.11em}
.messages-sidebar-v2120 .message-thread-link{grid-template-columns:38px minmax(0,1fr);gap:10px;padding:10px 9px;border:1px solid transparent;text-decoration:none}
.messages-sidebar-v2120 .message-thread-link.active{background:linear-gradient(135deg,#f5f0ff,#faf8ff);border-color:#e5d7ff}
.messages-sidebar-v2120 .message-thread-link strong{font-size:11.5px;color:#263044}
.messages-sidebar-v2120 .message-thread-link div span{font-size:9.5px}
.messages-card-v2120{padding:0;overflow:hidden;border-radius:18px}
.messages-conversation-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:center;padding:14px 18px;border-bottom:1px solid #edf0f5;background:linear-gradient(180deg,#fff,#fbfcff)}
.messages-peer-avatar{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#ede9fe,#ddd6fe);color:#6d28d9;font-weight:800}
.messages-conversation-head strong,.messages-conversation-head span{display:block}.messages-conversation-head strong{font-size:13px;color:#172033}.messages-conversation-head span{margin-top:2px;font-size:10px;color:#8b95a5}.messages-conversation-head>small{font-size:9px;color:#7c3aed;font-weight:800;padding:6px 9px;border-radius:999px;background:#f5f0ff}
.messages-window-v2120{overflow:visible;max-height:none;min-height:390px;padding:20px 18px 26px;background:linear-gradient(180deg,#fbfcff 0,#fff 90px)}
.message-bubble-v2120{max-width:min(680px,82%);padding:10px 12px;border-radius:14px 14px 14px 4px;background:#f7f8fb;border-color:#e8ebf1;box-shadow:0 2px 8px rgba(15,23,42,.025)}
.message-row.mine .message-bubble-v2120{background:linear-gradient(135deg,#f0e9ff,#f8f4ff);border-color:#e0d2fb;border-radius:14px 14px 4px 14px}
.message-bubble-v2120 strong{font-size:10px}.message-bubble-v2120 p{font-size:12px;line-height:1.58;margin:4px 0 7px}.message-bubble-v2120>span{font-size:8.5px;color:#98a1af}
.message-attachments{display:grid;gap:6px;margin:8px 0 9px}
.message-attachments a{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;align-items:center;min-width:220px;max-width:420px;padding:8px 10px;border:1px solid rgba(124,58,237,.13);border-radius:10px;background:rgba(255,255,255,.72);text-decoration:none;color:#334155}
.message-attachments a>span{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:#ede9fe;color:#7c3aed}.message-attachments svg{width:15px;height:15px}
.message-attachments b,.message-attachments small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-attachments b{font-size:10px}.message-attachments small{font-size:8.5px;color:#94a3b8;margin-top:2px}
.message-compose-v2120{grid-template-columns:auto minmax(0,1fr) auto;align-items:end;padding:13px 16px 10px;border-top:1px solid #edf0f5;background:#fff;position:relative}
.message-compose-v2120 textarea{min-height:44px;max-height:140px;border-radius:13px;font-size:12px;padding:11px 12px}
.message-attach-btn{height:44px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid #e0e4ec;border-radius:12px;background:#fafbfe;color:#64748b;font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap;transition:all .15s ease}.message-attach-btn:hover{border-color:#c4b5fd;background:#f5f0ff;color:#6d28d9}.message-attach-btn svg{width:15px;height:15px}.message-attach-btn input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.message-compose-v2120 .primary-btn{height:44px;align-items:center}
.message-upload-help{grid-column:1/-1;padding-left:2px;color:#a0a8b5;font-size:8.5px}
@media(max-width:900px){.messages-layout-v2120{grid-template-columns:1fr}.messages-sidebar-v2120{display:block}.messages-sidebar-v2120 .message-thread-link{margin-bottom:4px}}
@media(max-width:640px){.messages-page-head{align-items:flex-start;flex-direction:column}.messages-conversation-head{grid-template-columns:40px minmax(0,1fr)}.messages-conversation-head>small{grid-column:2;justify-self:start}.message-compose-v2120{grid-template-columns:1fr auto}.message-attach-btn{grid-column:1/-1;width:max-content}.message-bubble-v2120{max-width:94%}}

/* ===== DuxApp 2.10.21 · Aviso inmediato de chat interno ===== */
.dux-live-toast{
  position:fixed;right:22px;top:82px;z-index:9999;width:min(390px,calc(100vw - 28px));
  display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;
  border:1px solid #ded7f4;border-radius:16px;background:rgba(255,255,255,.98);color:#171923;
  box-shadow:0 24px 64px rgba(31,24,54,.22);padding:13px 14px;text-align:left;cursor:pointer;
  opacity:0;transform:translateY(-12px) scale(.985);transition:opacity .22s ease,transform .22s ease;
  backdrop-filter:blur(14px);
}
.dux-live-toast.show{opacity:1;transform:translateY(0) scale(1)}
.dux-live-toast:hover{border-color:#c9b7f5;box-shadow:0 28px 72px rgba(67,35,124,.25)}
.dux-live-toast-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,#7c3aed,#a855f7);color:white;font-size:18px;font-weight:800;box-shadow:0 8px 20px rgba(124,58,237,.24)}
.dux-live-toast-copy{min-width:0;display:grid;gap:3px}.dux-live-toast-copy strong{font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dux-live-toast-copy small{font-size:10.5px;line-height:1.4;color:#697386;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dux-live-toast-time{font-size:9px;font-weight:700;color:#9aa2af;align-self:start;margin-top:2px}
@media(max-width:700px){.dux-live-toast{top:68px;right:10px;left:10px;width:auto}}


/* ===== DuxApp 2.10.25 · Chat compacto, historial y fondo sutil ===== */
.messages-card-v2120{display:flex;flex-direction:column;min-height:0}
.messages-window-v2120{
  height:clamp(420px,calc(100vh - 360px),690px);
  min-height:420px;
  max-height:690px;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#cfd3dd transparent;
  background-color:#f7f7fb;
  background-image:
    radial-gradient(circle at 16px 18px,rgba(124,58,237,.032) 0 1.15px,transparent 1.35px),
    radial-gradient(circle at 48px 42px,rgba(71,85,105,.026) 0 1px,transparent 1.25px),
    linear-gradient(135deg,transparent 0 48%,rgba(124,58,237,.014) 48% 49%,transparent 49% 100%);
  background-size:72px 72px,96px 96px,118px 118px;
  background-attachment:local;
  padding:18px 20px 24px;
}
.messages-window-v2120::-webkit-scrollbar{width:8px}
.messages-window-v2120::-webkit-scrollbar-track{background:transparent}
.messages-window-v2120::-webkit-scrollbar-thumb{background:#d1d5df;border:2px solid transparent;border-radius:999px;background-clip:padding-box}
.messages-window-v2120::-webkit-scrollbar-thumb:hover{background:#b8bfcb;background-clip:padding-box}
.messages-history-control{display:flex;flex-direction:column;align-items:center;gap:5px;margin:0 auto 14px;padding:4px 10px;text-align:center}
.messages-history-control a{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border:1px solid rgba(124,58,237,.13);border-radius:999px;background:rgba(255,255,255,.88);box-shadow:0 2px 10px rgba(15,23,42,.035);color:#6d28d9;text-decoration:none;font-size:9.5px;font-weight:800;backdrop-filter:blur(6px)}
.messages-history-control a:hover{background:#fff;border-color:#c4b5fd}
.messages-history-control a span{display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#ede9fe;font-size:8.5px}
.messages-history-control small{font-size:8.5px;color:#9aa3b2}
.chat-day-separator{position:relative;display:flex;justify-content:center;align-items:center;margin:10px 0 13px;z-index:1}
.chat-day-separator span{display:inline-flex;align-items:center;min-height:24px;padding:4px 9px;border:1px solid rgba(148,163,184,.16);border-radius:999px;background:rgba(255,255,255,.86);box-shadow:0 1px 5px rgba(15,23,42,.025);color:#87909e;font-size:8.5px;font-weight:700;backdrop-filter:blur(5px)}
.message-row{position:relative;z-index:1}
.message-bubble-v2120{background:rgba(255,255,255,.91);backdrop-filter:blur(3px);box-shadow:0 2px 8px rgba(15,23,42,.035)}
.message-row.mine .message-bubble-v2120{background:linear-gradient(135deg,rgba(240,233,255,.95),rgba(248,244,255,.96))}
.message-compose-v2120{flex:0 0 auto;box-shadow:0 -8px 24px rgba(15,23,42,.025)}
@media(max-width:900px){.messages-window-v2120{height:clamp(400px,calc(100dvh - 385px),620px);min-height:400px;max-height:620px}}
@media(max-width:640px){.messages-window-v2120{height:calc(100dvh - 355px);min-height:350px;max-height:none;padding:14px 11px 18px}.messages-history-control small{display:none}}

/* ===== DuxApp 2.10.26 · Refinamiento visual Comercial + Mensajes ===== */
/* Ajustes exclusivamente visuales. No modifican lógica, formularios ni flujo de datos. */

/* ---------- Comercial: cabecera y acciones ---------- */
body[data-area="commercial"] .commercial-head{
  position:relative;
  overflow:hidden;
  align-items:center;
  margin:0 0 14px;
  padding:18px 20px;
  border:1px solid #e8e5f3;
  border-radius:18px;
  background:
    radial-gradient(circle at 92% 12%,rgba(124,58,237,.10),transparent 28%),
    linear-gradient(135deg,#ffffff 0%,#fbfaff 72%,#f7f3ff 100%);
  box-shadow:0 8px 24px rgba(25,19,45,.045);
}
body[data-area="commercial"] .commercial-head:after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:3px;
  background:linear-gradient(90deg,#6f22e6 0%,#a855f7 34%,rgba(168,85,247,0) 78%);
  opacity:.72;
}
body[data-area="commercial"] .commercial-head>div:first-child{min-width:0;position:relative;z-index:1}
body[data-area="commercial"] .commercial-head .eyebrow{color:#7c3aed;letter-spacing:.12em}
body[data-area="commercial"] .commercial-head h2{margin-top:5px;font-size:22px;letter-spacing:-.025em;color:#161b29}
body[data-area="commercial"] .commercial-head p{max-width:760px;margin-top:5px;color:#778091;line-height:1.5}
body[data-area="commercial"] .commercial-head-actions{position:relative;z-index:1;gap:9px}
body[data-area="commercial"] .commercial-head-actions .primary-btn,
body[data-area="commercial"] .commercial-head-actions .secondary-btn{
  min-height:42px;
  border-radius:12px;
  padding:10px 15px;
}
body[data-area="commercial"] .commercial-head-actions .secondary-btn{border-color:#e1ddec;box-shadow:0 2px 8px rgba(30,23,50,.025)}
body[data-area="commercial"] .commercial-head-actions .secondary-btn:hover{border-color:#cfc5e6;background:#fcfaff}

/* ---------- Comercial: KPI ---------- */
body[data-area="commercial"] .commercial-kpis{gap:12px;margin-bottom:12px}
body[data-area="commercial"] .commercial-kpis .kpi-card{
  --kpi-accent:#7c3aed;
  --kpi-soft:#f3edff;
  min-height:98px;
  align-items:center;
  gap:13px;
  padding:15px 16px;
  border:1px solid #e9ebf1;
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 18px rgba(15,23,42,.035);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
body[data-area="commercial"] .commercial-kpis .kpi-card:hover{transform:translateY(-1px);border-color:#ddd8e9;box-shadow:0 10px 26px rgba(15,23,42,.055)}
body[data-area="commercial"] .commercial-kpis .kpi-card:before{
  content:"";
  position:absolute;
  left:0;
  top:15px;
  bottom:15px;
  width:3px;
  border-radius:0 999px 999px 0;
  background:var(--kpi-accent);
  opacity:.82;
}
body[data-area="commercial"] .commercial-kpis .soft-blue{--kpi-accent:#3b82f6;--kpi-soft:#edf6ff}
body[data-area="commercial"] .commercial-kpis .soft-purple{--kpi-accent:#8b5cf6;--kpi-soft:#f3efff}
body[data-area="commercial"] .commercial-kpis .soft-green{--kpi-accent:#22a06b;--kpi-soft:#ecfaf3}
body[data-area="commercial"] .commercial-kpis .soft-orange{--kpi-accent:#e59b20;--kpi-soft:#fff6e7}
body[data-area="commercial"] .commercial-kpis .kpi-icon{
  width:40px;height:40px;border-radius:12px;
  background:var(--kpi-soft);color:var(--kpi-accent);
}
body[data-area="commercial"] .commercial-kpis .kpi-icon svg{width:18px;height:18px}
body[data-area="commercial"] .commercial-kpis .kpi-copy strong{font-size:22px;line-height:1;color:#171b28;letter-spacing:-.035em}
body[data-area="commercial"] .commercial-kpis .kpi-copy span{margin-top:6px;font-size:11.5px;color:#414958;font-weight:600}
body[data-area="commercial"] .commercial-kpis .kpi-copy small{margin-top:3px;font-size:9.5px;color:#9299a7}

/* ---------- Comercial: meta mensual ---------- */
body[data-area="commercial"] .commercial-goal-card{
  padding:15px 17px 16px;
  border-radius:16px;
  border-color:#e8e5f1;
  background:linear-gradient(180deg,#fff,#fdfcff);
  box-shadow:0 5px 18px rgba(15,23,42,.028);
}
body[data-area="commercial"] .commercial-goal-copy h3{font-size:14px;color:#252b39}
body[data-area="commercial"] .commercial-goal-copy p{font-size:10.5px;color:#87909f}
body[data-area="commercial"] .commercial-goal-number{
  min-width:58px;
  text-align:right;
  font-size:22px;
  color:#5420b6;
  letter-spacing:-.035em;
}
body[data-area="commercial"] .commercial-progress{height:8px;margin-top:13px;background:#f0edf5;box-shadow:inset 0 1px 2px rgba(15,23,42,.035)}
body[data-area="commercial"] .commercial-progress span{background:linear-gradient(90deg,#6d28d9,#9333ea 58%,#a855f7);box-shadow:0 0 10px rgba(124,58,237,.18)}

/* ---------- Comercial: pipeline y filtros ---------- */
body[data-area="commercial"] .commercial-pipeline-card{
  padding:0;
  overflow:hidden;
  border-radius:18px;
  border-color:#e7e9ef;
  box-shadow:0 8px 24px rgba(15,23,42,.035);
}
body[data-area="commercial"] .commercial-pipeline-card>.card-head{
  margin:0;
  padding:16px 18px 13px;
  border-bottom:1px solid #eff1f5;
  background:linear-gradient(180deg,#fff,#fdfdff);
}
body[data-area="commercial"] .commercial-pipeline-card>.card-head h3{font-size:15px;color:#202635}
body[data-area="commercial"] .commercial-pipeline-card>.card-head .commercial-subhead{margin-top:4px;color:#939baa}
body[data-area="commercial"] .commercial-filter-panel{
  gap:8px;
  margin:14px 14px 8px;
  padding:11px;
  border:1px solid #e8eaf0;
  border-radius:14px;
  background:#f8f9fc;
}
body[data-area="commercial"] .commercial-filter-form{gap:8px}
body[data-area="commercial"] .commercial-filter-search,
body[data-area="commercial"] .commercial-filter-form select{
  min-height:41px;
  border-color:#e0e4eb;
  border-radius:11px;
  background:#fff;
  box-shadow:0 1px 2px rgba(15,23,42,.015);
}
body[data-area="commercial"] .commercial-filter-search:focus-within,
body[data-area="commercial"] .commercial-filter-form select:focus{
  border-color:#b99cec;
  box-shadow:0 0 0 3px rgba(124,58,237,.075);
  outline:none;
}
body[data-area="commercial"] .commercial-filter-search input{font-size:11.5px;color:#293142}
body[data-area="commercial"] .commercial-filter-form select{font-size:11.5px;color:#394253}
body[data-area="commercial"] .commercial-filter-form .secondary-btn{min-height:41px;border-radius:11px;padding:9px 13px}
body[data-area="commercial"] .commercial-filter-summary{padding:1px 3px 0;font-size:10.5px}
body[data-area="commercial"] .commercial-filter-summary strong{font-size:11px;color:#586173;font-weight:600}
body[data-area="commercial"] .commercial-filter-summary span{color:#949cab}

/* ---------- Comercial: tabla ---------- */
body[data-area="commercial"] .commercial-pipeline-card>.table-wrap{padding:0 14px 12px}
body[data-area="commercial"] .commercial-table{border-collapse:separate!important;border-spacing:0!important}
body[data-area="commercial"] .commercial-table thead th{
  padding-top:10px!important;
  padding-bottom:10px!important;
  border-top:1px solid #eceef3;
  border-bottom:1px solid #e5e8ee;
  background:#f7f8fb;
  color:#8a93a4;
  font-size:8.7px!important;
  letter-spacing:.055em;
  text-transform:uppercase;
}
body[data-area="commercial"] .commercial-table thead th:first-child{border-left:1px solid #eceef3;border-radius:10px 0 0 10px}
body[data-area="commercial"] .commercial-table thead th:last-child{border-right:1px solid #eceef3;border-radius:0 10px 10px 0}
body[data-area="commercial"] .commercial-table tbody td{
  padding-top:13px!important;
  padding-bottom:13px!important;
  border-bottom:1px solid #eef0f4!important;
  color:#4a5261;
  font-size:10.5px!important;
  transition:background .14s ease;
}
body[data-area="commercial"] .commercial-table tbody tr:hover td{background:#fcfbff}
body[data-area="commercial"] .commercial-table tbody tr:last-child td{border-bottom:0!important}
body[data-area="commercial"] .commercial-table td>strong{color:#252b39;font-size:11px!important;font-weight:600}
body[data-area="commercial"] .commercial-table td>small{display:block;margin-top:3px;color:#959dab;font-size:9px!important;line-height:1.35}
body[data-area="commercial"] .commercial-table .status-pill,
body[data-area="commercial"] .commercial-table .mail-delivery-badge,
body[data-area="commercial"] .commercial-table .commercial-followup-state{
  border-radius:999px;
  padding:5px 8px;
  font-size:9px!important;
  font-weight:600;
  line-height:1.2;
}
body[data-area="commercial"] .commercial-table .mail-delivery-date{margin-top:5px;font-size:8.8px!important;color:#929baa}
body[data-area="commercial"] .commercial-table .commercial-muted{font-size:9.5px;color:#9aa2b0}
body[data-area="commercial"] .commercial-actions-cell{gap:6px!important}
body[data-area="commercial"] .commercial-actions-cell .compact-btn{
  min-height:31px;
  padding:7px 9px!important;
  border-radius:9px;
  border-color:#dedfe8;
  background:#fff;
  color:#5e6573;
  font-size:9px!important;
  box-shadow:0 1px 2px rgba(15,23,42,.018);
}
body[data-area="commercial"] .commercial-actions-cell .compact-btn:hover{border-color:#cfc5e6;background:#faf8ff;color:#6730c5}
body[data-area="commercial"] .commercial-actions-cell .compact-btn.success{border-color:#ccebd7;background:#f1fbf5;color:#247b4d}
body[data-area="commercial"] .commercial-actions-cell .compact-btn.followup{border-color:#ddcff6;background:#f7f3ff;color:#6d28d9}
body[data-area="commercial"] .commercial-followup-help{font-size:8.8px!important;color:#8a93a2!important;line-height:1.38!important}
body[data-area="commercial"] .commercial-pagination{margin:0;padding:13px 16px 16px;border-top:1px solid #eff1f5;background:#fdfdff}

/* ---------- Mensajes: encabezado de página ---------- */
.messages-page-head{
  position:relative;
  overflow:hidden;
  align-items:center;
  margin:0 0 14px;
  padding:17px 19px;
  border:1px solid #e8e5f2;
  border-radius:18px;
  background:
    radial-gradient(circle at 91% 9%,rgba(124,58,237,.09),transparent 26%),
    linear-gradient(135deg,#fff,#fbfaff 78%);
  box-shadow:0 7px 22px rgba(15,23,42,.035);
}
.messages-page-head .eyebrow{color:#7c3aed;letter-spacing:.12em}
.messages-page-head h2{margin-top:5px;font-size:21px;color:#171c29;letter-spacing:-.025em}
.messages-page-head p{max-width:820px;margin-top:5px;color:#7e8796;line-height:1.5}
.staff-chat-live{border-color:#ccebdc;background:#f2fbf6;color:#23805a;font-weight:600;box-shadow:0 2px 8px rgba(22,128,84,.035)}

/* ---------- Mensajes: listado de conversaciones ---------- */
.messages-layout-v2120{grid-template-columns:275px minmax(0,1fr);gap:14px;align-items:stretch}
.messages-sidebar-v2120{
  padding:13px;
  border-radius:18px;
  align-self:stretch;
  background:linear-gradient(180deg,#fff,#fdfdff);
  box-shadow:0 7px 22px rgba(15,23,42,.035);
}
.messages-sidebar-v2120 .card-head{padding:2px 3px 9px;margin:0 0 5px;border-bottom:1px solid #f0f1f5}
.messages-sidebar-v2120 .card-head h3{font-size:13.5px;color:#222938}
.messages-sidebar-v2120 .card-head span{font-size:9.5px;color:#9aa2af}
.messages-sidebar-v2120 .message-thread-link{
  position:relative;
  grid-template-columns:40px minmax(0,1fr);
  gap:10px;
  min-height:58px;
  padding:9px 10px;
  margin-top:5px;
  border:1px solid transparent;
  border-radius:12px;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.messages-sidebar-v2120 .message-thread-link:hover{transform:translateX(1px);background:#faf9fd;border-color:#ece9f3}
.messages-sidebar-v2120 .message-thread-link.active{
  background:linear-gradient(135deg,#f5f1ff,#fbfaff);
  border-color:#e4d8f8;
  box-shadow:0 4px 14px rgba(82,46,139,.045);
}
.messages-sidebar-v2120 .message-thread-link.active:before{
  content:"";position:absolute;left:-1px;top:11px;bottom:11px;width:3px;border-radius:0 999px 999px 0;background:#7c3aed;
}
.messages-sidebar-v2120 .message-thread-link .commercial-contact-icon{width:36px;height:36px;border-radius:11px}
.messages-sidebar-v2120 .message-thread-link strong{font-size:11px;color:#293143}
.messages-sidebar-v2120 .message-thread-link div span{margin-top:3px;font-size:9.2px;color:#949cab}
.messages-sidebar-label{margin:15px 8px 6px;color:#a1a8b4;font-size:8.4px;letter-spacing:.11em}

/* ---------- Mensajes: panel principal ---------- */
.messages-card-v2120{
  border-radius:18px;
  border-color:#e6e8ef;
  background:#fff;
  box-shadow:0 9px 28px rgba(15,23,42,.045);
}
.messages-conversation-head{
  min-height:68px;
  grid-template-columns:44px minmax(0,1fr) auto;
  gap:12px;
  padding:12px 16px;
  border-bottom:1px solid #e9ecf2;
  background:rgba(255,255,255,.97);
}
.messages-peer-avatar{
  width:42px;height:42px;border-radius:13px;
  background:linear-gradient(135deg,#ede8ff,#ddd2fb);
  color:#6d28d9;
  box-shadow:inset 0 0 0 1px rgba(124,58,237,.05);
}
.messages-conversation-head strong{font-size:12px;color:#202738}
.messages-conversation-head span{margin-top:3px;font-size:9.5px;color:#9098a6}
.messages-conversation-head>small{font-size:8.7px;font-weight:600;color:#7040c4;background:#f5f1fc;border:1px solid #e9ddfa}
.messages-window-v2120{
  height:clamp(440px,calc(100vh - 365px),700px);
  min-height:440px;
  max-height:700px;
  padding:20px 22px 25px;
  background-color:#f7f8fb;
  background-image:
    radial-gradient(circle at 18% 16%,rgba(124,58,237,.035),transparent 23%),
    radial-gradient(circle at 84% 78%,rgba(59,130,246,.025),transparent 20%),
    linear-gradient(180deg,rgba(255,255,255,.52),rgba(248,249,252,.72));
  background-size:auto;
}
.chat-day-separator{margin:5px 0 16px}
.chat-day-separator span{min-height:23px;padding:3px 9px;border-color:#e7e9ee;background:rgba(255,255,255,.91);font-size:8.3px;color:#9098a5}
.message-row{margin:10px 0}
.message-bubble-v2120{
  max-width:min(660px,72%);
  padding:10px 12px 9px;
  border:1px solid #e6e9ef;
  border-radius:14px 14px 14px 5px;
  background:rgba(255,255,255,.96);
  box-shadow:0 3px 12px rgba(15,23,42,.045);
  backdrop-filter:none;
}
.message-row.mine .message-bubble-v2120{
  border-color:#ddd0f6;
  border-radius:14px 14px 5px 14px;
  background:linear-gradient(135deg,#f0e9ff,#f8f4ff);
  box-shadow:0 3px 12px rgba(93,55,147,.045);
}
.message-bubble-v2120 strong{font-size:9.2px;color:#4d5666;font-weight:600}
.message-row.mine .message-bubble-v2120 strong{color:#5e3b99}
.message-bubble-v2120 p{margin:4px 0 7px;font-size:11.5px;line-height:1.5;color:#3e4654}
.message-bubble-v2120>span{display:block;text-align:right;font-size:8px;color:#9aa2ae}
.messages-empty{min-height:360px;color:#9aa2af}
.messages-empty svg{width:30px;height:30px;color:#ad97d8}
.messages-empty strong{font-size:11.5px;color:#626a78}
.messages-empty span{font-size:9.5px}

/* ---------- Mensajes: compositor ---------- */
.message-compose,
.message-compose-v2120{
  gap:8px;
  padding:11px 12px;
  border-top:1px solid #e9ecf1;
  background:#fff;
  box-shadow:0 -6px 20px rgba(15,23,42,.022);
}
.message-compose textarea,
.message-compose-v2120 textarea{
  min-height:44px;
  border:1px solid #dfe3ea;
  border-radius:12px;
  background:#fafbfc;
  padding:11px 12px;
  font-size:11.5px;
  color:#303847;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.message-compose textarea:focus,
.message-compose-v2120 textarea:focus{background:#fff;border-color:#b89be9;box-shadow:0 0 0 3px rgba(124,58,237,.07)}
.message-compose .primary-btn,
.message-compose-v2120 .primary-btn{height:44px;min-width:76px;border-radius:11px;box-shadow:0 5px 14px rgba(111,34,230,.16)}
.message-attach-btn{height:44px;border-radius:11px;background:#fafbfc;border-color:#e0e4ea;font-weight:600;color:#707988}
.message-upload-help{padding:0 2px 1px;color:#a0a7b2;font-size:8.2px}

/* ---------- Ajustes responsivos ---------- */
@media(max-width:1150px){
  body[data-area="commercial"] .commercial-head{align-items:flex-start}
  body[data-area="commercial"] .commercial-head-actions{justify-content:flex-end}
  .messages-layout-v2120{grid-template-columns:245px minmax(0,1fr)}
}
@media(max-width:900px){
  body[data-area="commercial"] .commercial-head{align-items:flex-start;flex-direction:column}
  body[data-area="commercial"] .commercial-head-actions{width:100%;justify-content:flex-start}
  .messages-layout-v2120{grid-template-columns:1fr}
  .messages-sidebar-v2120{align-self:auto}
  .messages-window-v2120{height:clamp(400px,calc(100dvh - 390px),620px);min-height:400px;max-height:620px}
}
@media(max-width:640px){
  body[data-area="commercial"] .commercial-head,.messages-page-head{padding:15px;border-radius:15px}
  body[data-area="commercial"] .commercial-head-actions>*{flex:1}
  body[data-area="commercial"] .commercial-pipeline-card{border-radius:15px}
  body[data-area="commercial"] .commercial-pipeline-card>.card-head{padding:14px}
  body[data-area="commercial"] .commercial-filter-panel{margin:12px 10px 6px;padding:9px}
  body[data-area="commercial"] .commercial-pipeline-card>.table-wrap{padding:0 10px 10px}
  .messages-page-head{align-items:flex-start;flex-direction:column}
  .messages-sidebar-v2120{border-radius:15px}
  .messages-card-v2120{border-radius:15px}
  .messages-conversation-head{grid-template-columns:42px minmax(0,1fr)}
  .messages-conversation-head>small{grid-column:2;justify-self:start}
  .messages-window-v2120{height:calc(100dvh - 365px);min-height:350px;max-height:none;padding:15px 11px 18px}
  .message-bubble-v2120{max-width:90%}
}

/* ===== DuxApp 2.10.27 · Comercial + Mensajes: color y compactación ===== */
/* Refinamiento visual solicitado: menos texto auxiliar, acentos más definidos y chat más compacto. */

/* ---------- Comercial: identidad más definida, sin fondos pastel ---------- */
body[data-area="commercial"] .commercial-head{
  padding:16px 18px;
  border:1px solid #dfe3eb;
  border-left:4px solid #7c3aed;
  border-radius:14px;
  background:#fff;
  box-shadow:0 6px 18px rgba(15,23,42,.04);
}
body[data-area="commercial"] .commercial-head:after{
  left:18px;
  right:18px;
  width:auto;
  height:2px;
  background:linear-gradient(90deg,#7c3aed 0%,#2563eb 42%,transparent 88%);
  opacity:.95;
}
body[data-area="commercial"] .commercial-head .eyebrow{color:#6d28d9;font-weight:800}
body[data-area="commercial"] .commercial-head-actions .primary-btn{
  background:linear-gradient(135deg,#6d28d9,#8b5cf6);
  box-shadow:0 7px 18px rgba(109,40,217,.22);
}

body[data-area="commercial"] .commercial-kpis .kpi-card{
  border-color:#dfe4ec;
  border-radius:14px;
  box-shadow:0 5px 15px rgba(15,23,42,.04);
}
body[data-area="commercial"] .commercial-kpis .kpi-card:before{
  top:12px;
  bottom:12px;
  width:4px;
  opacity:1;
}
body[data-area="commercial"] .commercial-kpis .soft-blue{--kpi-accent:#2563eb;--kpi-soft:#2563eb}
body[data-area="commercial"] .commercial-kpis .soft-purple{--kpi-accent:#7c3aed;--kpi-soft:#7c3aed}
body[data-area="commercial"] .commercial-kpis .soft-green{--kpi-accent:#059669;--kpi-soft:#059669}
body[data-area="commercial"] .commercial-kpis .soft-orange{--kpi-accent:#d97706;--kpi-soft:#d97706}
body[data-area="commercial"] .commercial-kpis .kpi-icon{
  background:var(--kpi-accent);
  color:#fff;
  box-shadow:0 5px 12px color-mix(in srgb,var(--kpi-accent) 22%,transparent);
}

body[data-area="commercial"] .commercial-goal-card{
  border-color:#dfe3eb;
  border-left:4px solid #6d28d9;
  background:#fff;
}
body[data-area="commercial"] .commercial-progress{background:#e7eaf0}
body[data-area="commercial"] .commercial-progress span{background:linear-gradient(90deg,#6d28d9,#2563eb)}
body[data-area="commercial"] .commercial-goal-number{color:#6d28d9}

body[data-area="commercial"] .commercial-filter-panel{
  border-color:#dfe4ec;
  background:#f5f7fa;
}
body[data-area="commercial"] .commercial-table thead th{
  border-top-color:#172033;
  border-bottom-color:#172033;
  background:#172033;
  color:#f8fafc;
  font-weight:700;
}
body[data-area="commercial"] .commercial-table thead th:first-child{border-left-color:#172033}
body[data-area="commercial"] .commercial-table thead th:last-child{border-right-color:#172033}
body[data-area="commercial"] .commercial-table tbody tr:hover td{background:#f8f9fc}

/* Estados con color más nítido: se conserva el significado, se elimina el aspecto pastel. */
body[data-area="commercial"] .commercial-table .status-pill.status-activa,
body[data-area="commercial"] .commercial-table .mail-delivery-sent,
body[data-area="commercial"] .commercial-table .commercial-followup-state.done{
  border-color:#047857;
  background:#047857;
  color:#fff;
}
body[data-area="commercial"] .commercial-table .status-pill.status-programada{
  border-color:#2563eb;
  background:#2563eb;
  color:#fff;
}
body[data-area="commercial"] .commercial-table .status-pill.status-pendiente{
  border-color:#6d28d9;
  background:#6d28d9;
  color:#fff;
}
body[data-area="commercial"] .commercial-table .status-pill.status-warning,
body[data-area="commercial"] .commercial-table .commercial-followup-state.waiting,
body[data-area="commercial"] .commercial-table .mail-delivery-pending{
  border-color:#d97706;
  background:#d97706;
  color:#fff;
}
body[data-area="commercial"] .commercial-table .status-pill.status-pausada,
body[data-area="commercial"] .commercial-table .commercial-followup-state.closed{
  border-color:#b91c1c;
  background:#b91c1c;
  color:#fff;
}
body[data-area="commercial"] .commercial-table .mail-delivery-date{
  color:#6b7280;
  font-weight:600;
}

/* ---------- Mensajes: encabezado convertido en una franja compacta ---------- */
.messages-page-head{
  min-height:48px;
  margin:0 0 10px;
  padding:8px 12px;
  border:0;
  border-left:4px solid #7c3aed;
  border-bottom:1px solid #d8dde6;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.messages-page-head>div{
  min-width:0;
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
}
.messages-page-head .eyebrow{
  flex:0 0 auto;
  margin:0;
  color:#6d28d9;
  font-size:8.5px;
  font-weight:800;
  letter-spacing:.11em;
  white-space:nowrap;
}
.messages-page-head h2{
  flex:0 0 auto;
  margin:0;
  padding-right:12px;
  border-right:1px solid #d7dce5;
  color:#172033;
  font-size:15px;
  letter-spacing:-.015em;
  white-space:nowrap;
}
.messages-page-head p{
  min-width:0;
  max-width:none;
  margin:0;
  color:#667085;
  font-size:10px;
  line-height:1.35;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.staff-chat-live{margin-left:auto;flex:0 0 auto}

/* ---------- Mensajes: color más sólido y menos pastel ---------- */
.messages-sidebar-v2120{
  border-color:#dfe3eb;
  background:#fff;
  box-shadow:0 6px 18px rgba(15,23,42,.04);
}
.messages-sidebar-v2120 .message-thread-link.active{
  border-color:#7c3aed;
  background:#fff;
  box-shadow:0 4px 14px rgba(109,40,217,.08);
}
.messages-sidebar-v2120 .message-thread-link.active:before{background:#7c3aed}
.messages-sidebar-v2120 .commercial-contact-icon.purple{
  background:#7c3aed;
  color:#fff;
}
.messages-sidebar-v2120 .commercial-contact-icon.blue{
  background:#2563eb;
  color:#fff;
}
.messages-card-v2120{
  border-color:#dfe3eb;
  box-shadow:0 8px 22px rgba(15,23,42,.05);
}
.messages-peer-avatar{
  background:#6d28d9;
  color:#fff;
  box-shadow:0 5px 12px rgba(109,40,217,.18);
}
.messages-window-v2120{
  height:clamp(360px,calc(100vh - 320px),620px);
  min-height:360px;
  max-height:620px;
  background:#f4f6f9;
  background-image:none;
}
.chat-day-separator span{
  border-color:#cfd5df;
  background:#fff;
  color:#667085;
}
.message-bubble-v2120{
  border-color:#d9dee7;
  border-left:3px solid #2563eb;
  background:#fff;
  box-shadow:0 3px 10px rgba(15,23,42,.05);
}
.message-row.mine .message-bubble-v2120{
  border:1px solid #6d28d9;
  background:linear-gradient(135deg,#6d28d9,#7c3aed);
  box-shadow:0 5px 14px rgba(109,40,217,.16);
}
.message-row.mine .message-bubble-v2120 strong{color:#ede9fe}
.message-row.mine .message-bubble-v2120 p{color:#fff}
.message-row.mine .message-bubble-v2120>span{color:#ddd6fe}
.message-compose,
.message-compose-v2120{
  border-top-color:#dfe3eb;
  box-shadow:0 -4px 14px rgba(15,23,42,.025);
}
.message-compose textarea,
.message-compose-v2120 textarea{background:#fff;border-color:#cfd5df}
.message-compose .primary-btn,
.message-compose-v2120 .primary-btn{
  background:linear-gradient(135deg,#6d28d9,#8b5cf6);
  box-shadow:0 6px 15px rgba(109,40,217,.2);
}

@media(max-width:900px){
  .messages-page-head>div{flex-wrap:wrap;gap:6px 10px}
  .messages-page-head p{flex-basis:100%;white-space:normal}
  .messages-window-v2120{height:clamp(350px,calc(100dvh - 330px),560px);min-height:350px;max-height:560px}
}
@media(max-width:640px){
  .messages-page-head{padding:8px 10px;border-radius:0}
  .messages-page-head h2{font-size:14px}
  .messages-page-head p{font-size:9.5px}
  .messages-window-v2120{height:calc(100dvh - 330px);min-height:320px;max-height:none}
}


/* ===== DuxApp 2.10.28 · Reading + Mensajes del lector ===== */
/* Ajustes visuales: lectura más ejecutiva, colores sólidos y chat ajustado al viewport. */

/* ---------- Mensajes del lector: el compositor permanece dentro de la pantalla ---------- */
body[data-area="reader"] .messages-layout-v2120{
  height:calc(100dvh - 176px);
  min-height:560px;
  max-height:780px;
  align-items:stretch;
}
body[data-area="reader"] .messages-sidebar-v2120,
body[data-area="reader"] .messages-card-v2120{
  height:100%;
  min-height:0;
}
body[data-area="reader"] .messages-card-v2120{overflow:hidden}
body[data-area="reader"] .messages-window-v2120{
  flex:1 1 auto;
  height:auto;
  min-height:0;
  max-height:none;
  padding:16px 18px 18px;
}
body[data-area="reader"] .message-compose-v2120{
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:8px;
  padding:9px 11px 8px;
  align-items:center;
}
body[data-area="reader"] .message-compose-v2120 textarea{
  min-height:40px;
  max-height:88px;
  height:40px;
  padding:9px 11px;
  resize:none;
}
body[data-area="reader"] .message-compose-v2120 .primary-btn,
body[data-area="reader"] .message-compose-v2120 .message-attach-btn{height:40px}
body[data-area="reader"] .message-upload-help{
  grid-column:2 / 3;
  margin-top:-3px;
  padding:0 2px;
  line-height:1.2;
}

/* ---------- Reading: cabecera compacta y con identidad fuerte ---------- */
.reading-dashboard-head{
  position:relative;
  overflow:hidden;
  min-height:78px;
  margin:0 0 12px;
  padding:15px 18px;
  align-items:center;
  border:1px solid #172033;
  border-left:5px solid #7c3aed;
  border-radius:15px;
  background:linear-gradient(118deg,#111827 0%,#172033 62%,#261442 100%);
  box-shadow:0 10px 26px rgba(15,23,42,.10);
}
.reading-dashboard-head:after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  right:-70px;
  top:-125px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(139,92,246,.48),rgba(139,92,246,0) 70%);
  pointer-events:none;
}
.reading-dashboard-head>div{position:relative;z-index:1}
.reading-dashboard-head .eyebrow{color:#a78bfa;font-weight:800;letter-spacing:.12em}
.reading-dashboard-head h2{margin-top:5px;color:#fff;font-size:21px;letter-spacing:-.025em}
.reading-dashboard-badge{
  position:relative;
  z-index:1;
  margin-left:auto;
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:7px 11px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:9.5px;
  font-weight:800;
  white-space:nowrap;
}

/* ---------- Reading: KPI sólidos, sin apariencia pastel ---------- */
.reading-kpis{gap:11px;margin-bottom:12px}
.reading-kpis .kpi-card{
  --reading-accent:#2563eb;
  position:relative;
  min-height:88px;
  gap:12px;
  align-items:center;
  padding:13px 14px;
  border:1px solid #dfe4ec;
  border-radius:14px;
  background:#fff;
  box-shadow:0 5px 15px rgba(15,23,42,.04);
}
.reading-kpis .kpi-card:before{
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:4px;
  border-radius:0 999px 999px 0;
  background:var(--reading-accent);
}
.reading-kpis .soft-blue{--reading-accent:#2563eb}
.reading-kpis .soft-orange{--reading-accent:#d97706}
.reading-kpis .soft-green{--reading-accent:#059669}
.reading-kpis .soft-purple{--reading-accent:#b91c1c}
.reading-kpis .kpi-icon{
  width:38px;
  height:38px;
  border-radius:11px;
  background:var(--reading-accent)!important;
  color:#fff!important;
  box-shadow:0 5px 12px rgba(15,23,42,.10);
}
.reading-kpis .kpi-copy strong{font-size:21px;line-height:1;color:#161b29;letter-spacing:-.035em}
.reading-kpis .kpi-copy span{margin-top:5px;font-size:11px;font-weight:700;color:#3d4655}
.reading-kpis .kpi-copy small{margin-top:3px!important;font-size:9px!important;line-height:1.3;color:#7b8492!important}

/* ---------- Reading: cola de evaluación ---------- */
.reading-queue-card{
  padding:0;
  overflow:hidden;
  border:1px solid #dfe4ec;
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 24px rgba(15,23,42,.045);
}
.reading-queue-card>.card-head{
  margin:0;
  padding:14px 16px 12px;
  border-bottom:1px solid #e8ecf2;
  background:#fff;
}
.reading-queue-card>.card-head h3{font-size:14.5px;color:#202738}
.reading-queue-card>.table-wrap{padding:0 14px 14px}
.reading-table thead th{
  border-top:1px solid #172033!important;
  border-bottom:1px solid #172033!important;
  background:#172033!important;
  color:#f8fafc!important;
  font-weight:700!important;
}
.reading-table thead th:first-child{border-left:1px solid #172033!important;border-radius:9px 0 0 9px}
.reading-table thead th:last-child{border-right:1px solid #172033!important;border-radius:0 9px 9px 0}
.reading-table tbody tr{transition:background .15s ease}
.reading-table tbody tr:hover td{background:#f7f9fc}
.reading-table .status-pill,
.reading-table .mail-delivery-badge,
.reading-table .sla-badge{
  border-width:1px;
  font-weight:800;
  box-shadow:none;
}
.reading-table .status-pill.status-activa,
.reading-table .mail-delivery-sent,
.reading-table .sla-success{background:#047857!important;border-color:#047857!important;color:#fff!important}
.reading-table .status-pill.status-pendiente{background:#6d28d9!important;border-color:#6d28d9!important;color:#fff!important}
.reading-table .status-pill.status-programada{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important}
.reading-table .status-pill.status-warning,
.reading-table .mail-delivery-pending,
.reading-table .sla-warning{background:#d97706!important;border-color:#d97706!important;color:#fff!important}
.reading-table .status-pill.status-pausada,
.reading-table .sla-danger{background:#b91c1c!important;border-color:#b91c1c!important;color:#fff!important}
.reading-table .compact-btn{
  border-color:#172033;
  background:#172033;
  color:#fff;
}
.reading-table .compact-btn:hover{background:#6d28d9;border-color:#6d28d9;color:#fff}
.reading-table .manuscript-file-link{
  border-color:#d7dde7;
  background:#fff;
  box-shadow:0 2px 8px rgba(15,23,42,.035);
}
.reading-table .manuscript-file-link>span{background:#6d28d9;color:#fff}
.reading-table .tiny-upload-btn{color:#6d28d9;font-weight:800}

/* ---------- Formulario de lectura: menos explicación interna, más foco ---------- */
.reading-form-hero{
  min-height:118px;
  padding:18px 22px!important;
  border-radius:17px;
  border-left:5px solid #7c3aed;
  background:linear-gradient(118deg,#0f172a 0%,#172033 64%,#2b1450 100%);
  box-shadow:0 12px 30px rgba(15,23,42,.12);
}
.reading-form-hero:after{
  content:"ESTUDIO EDITORIAL";
  right:22px;
  bottom:18px;
  border-color:rgba(255,255,255,.16);
  background:rgba(255,255,255,.07);
  color:#ddd6fe;
}
.reading-form-hero h2{font-size:21px!important}
.reading-form-hero p{max-width:780px!important;margin-top:7px!important;color:#cbd5e1!important;font-size:11.5px!important;line-height:1.55!important}
.reading-form-placeholder{
  margin-top:12px;
  border:1px solid #dfe4ec;
  border-radius:16px;
  box-shadow:0 7px 20px rgba(15,23,42,.04);
}
.reading-form-empty{
  padding:18px;
  border:0;
  border-left:4px solid #7c3aed;
  border-radius:12px;
  background:#fff;
}
.reading-form-empty>span,
.reading-form-empty span{
  width:42px;
  height:42px;
  border-radius:12px;
  background:#6d28d9;
  color:#fff;
  box-shadow:0 5px 12px rgba(109,40,217,.18);
}
.reading-form-empty strong{font-size:16px;color:#202738}
.reading-form-empty p{margin-top:4px;font-size:10.5px;color:#737d8d}

/* El formulario activo conserva su estructura, pero con acentos más definidos. */
.reading-case-card{
  border-color:#dfe4ec!important;
  border-left:4px solid #7c3aed!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(15,23,42,.055)!important;
}
.reading-case-details>div{border-color:#dfe4ec;background:#f8fafc;box-shadow:none}
.reading-completion-strip{border-color:#dfe4ec;background:#fff;box-shadow:0 7px 20px rgba(15,23,42,.04)}
.reading-form-section{
  border-color:#dfe4ec!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(15,23,42,.045)!important;
}
.reading-form-section:hover{border-color:#cfc5ff!important;box-shadow:0 10px 30px rgba(15,23,42,.06)!important}
.reading-form-section:before{background:#6d28d9;border-color:#6d28d9;color:#fff;box-shadow:none}
.reading-form-section:after{background:linear-gradient(90deg,#6d28d9,#2563eb,transparent 80%);opacity:1}
.inline-check:has(input:checked),.study-check-list label:has(input:checked){border-color:#6d28d9!important;background:#fff!important;box-shadow:0 0 0 2px rgba(109,40,217,.08)!important}
.decision-card.active{border-color:#6d28d9!important;box-shadow:0 0 0 2px rgba(109,40,217,.08)!important}
.decision-card.active:after{background:#6d28d9}

@media(max-width:1100px){
  body[data-area="reader"] .messages-layout-v2120{height:auto;min-height:0;max-height:none}
  body[data-area="reader"] .messages-sidebar-v2120,
  body[data-area="reader"] .messages-card-v2120{height:auto}
  body[data-area="reader"] .messages-window-v2120{height:clamp(360px,calc(100dvh - 330px),560px);min-height:360px;max-height:560px}
}
@media(max-width:760px){
  .reading-dashboard-head{min-height:70px;padding:13px 14px;align-items:flex-start;gap:10px}
  .reading-dashboard-head h2{font-size:18px}
  .reading-dashboard-badge{margin-left:0}
  .reading-form-hero{min-height:auto;padding:16px!important}
  .reading-queue-card>.table-wrap{padding:0 10px 10px}
  body[data-area="reader"] .message-upload-help{display:none}
  body[data-area="reader"] .message-compose-v2120{grid-template-columns:auto minmax(0,1fr) auto}
}

/* ========================================================================
   DuxApp 2.10.29 · Reader polish + functional rollback-safe presentation
   Solo presentación. No modifica flujos de Reading, formulario o historial.
   ======================================================================== */

/* ---------- Reader · Inicio ---------- */
body[data-area="reader"] .dashboard-welcome{
  position:relative;
  overflow:hidden;
  align-items:center;
  min-height:92px;
  margin-bottom:14px;
  padding:18px 20px;
  border:1px solid #172033;
  border-left:5px solid #7c3aed;
  border-radius:16px;
  background:linear-gradient(118deg,#0f172a 0%,#172033 62%,#2a1548 100%);
  box-shadow:0 12px 30px rgba(15,23,42,.10);
}
body[data-area="reader"] .dashboard-welcome:after{
  content:"";
  position:absolute;
  width:240px;
  height:240px;
  right:-70px;
  top:-145px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(139,92,246,.48),rgba(139,92,246,0) 70%);
  pointer-events:none;
}
body[data-area="reader"] .dashboard-welcome>div{position:relative;z-index:1}
body[data-area="reader"] .dashboard-welcome h2{color:#fff;font-size:22px;letter-spacing:-.03em}
body[data-area="reader"] .dashboard-welcome p{color:#cbd5e1;font-size:12px;line-height:1.45}
body[data-area="reader"] .dashboard-welcome .welcome-date{
  position:relative;
  z-index:1;
  border-color:rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  color:#fff;
  box-shadow:none;
}

body[data-area="reader"] .dashboard-welcome + .kpi-grid{gap:11px;margin-bottom:14px}
body[data-area="reader"] .dashboard-welcome + .kpi-grid .kpi-card{
  --reader-kpi:#6d28d9;
  position:relative;
  min-height:92px;
  gap:12px;
  align-items:center;
  padding:14px 15px;
  overflow:hidden;
  border:1px solid #dfe4ec;
  border-radius:14px;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(15,23,42,.045);
}
body[data-area="reader"] .dashboard-welcome + .kpi-grid .kpi-card:before{
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:4px;
  border-radius:0 999px 999px 0;
  background:var(--reader-kpi);
}
body[data-area="reader"] .dashboard-welcome + .kpi-grid .kpi-card:nth-child(1){--reader-kpi:#d97706}
body[data-area="reader"] .dashboard-welcome + .kpi-grid .kpi-card:nth-child(2){--reader-kpi:#6d28d9}
body[data-area="reader"] .dashboard-welcome + .kpi-grid .kpi-card:nth-child(3){--reader-kpi:#047857}
body[data-area="reader"] .dashboard-welcome + .kpi-grid .kpi-card:nth-child(4){--reader-kpi:#b91c1c}
body[data-area="reader"] .dashboard-welcome + .kpi-grid .kpi-icon{
  width:40px;
  height:40px;
  border-radius:11px;
  background:var(--reader-kpi)!important;
  color:#fff!important;
  box-shadow:0 5px 12px rgba(15,23,42,.12);
}
body[data-area="reader"] .dashboard-welcome + .kpi-grid .kpi-copy strong{font-size:22px;color:#111827}
body[data-area="reader"] .dashboard-welcome + .kpi-grid .kpi-copy span{font-size:11px;font-weight:750;color:#343d4c}
body[data-area="reader"] .dashboard-welcome + .kpi-grid .kpi-copy small{font-size:9px;color:#7c8594}

body[data-area="reader"] .dashboard-welcome ~ .dashboard-card{
  border:1px solid #dfe4ec;
  border-radius:16px;
  box-shadow:0 8px 24px rgba(15,23,42,.045);
}
body[data-area="reader"] .dashboard-welcome ~ .dashboard-card>.card-head{
  padding-bottom:11px;
  border-bottom:1px solid #e8ecf2;
}
body[data-area="reader"] .dashboard-welcome ~ .dashboard-card .card-link{color:#6d28d9;font-weight:800}
body[data-area="reader"] .dashboard-welcome ~ .dashboard-card .mini-table thead th{
  padding:10px 9px;
  background:#172033;
  color:#f8fafc;
  border-bottom-color:#172033;
  font-weight:700;
}
body[data-area="reader"] .dashboard-welcome ~ .dashboard-card .mini-table thead th:first-child{border-radius:9px 0 0 9px}
body[data-area="reader"] .dashboard-welcome ~ .dashboard-card .mini-table thead th:last-child{border-radius:0 9px 9px 0}
body[data-area="reader"] .dashboard-welcome ~ .dashboard-card .mini-table tbody tr:hover td{background:#f7f9fc}

/* ---------- Reader · Reading ---------- */
body[data-area="reader"] .ad-head:not(.reading-form-hero):not(.reading-history-head){
  position:relative;
  overflow:hidden;
  min-height:76px;
  margin-bottom:12px;
  padding:15px 18px;
  align-items:center;
  border:1px solid #172033;
  border-left:5px solid #7c3aed;
  border-radius:15px;
  background:linear-gradient(118deg,#0f172a 0%,#172033 62%,#2a1548 100%);
  box-shadow:0 10px 26px rgba(15,23,42,.10);
}
body[data-area="reader"] .ad-head:not(.reading-form-hero):not(.reading-history-head):after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  right:-70px;
  top:-130px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(139,92,246,.48),rgba(139,92,246,0) 70%);
  pointer-events:none;
}
body[data-area="reader"] .ad-head:not(.reading-form-hero):not(.reading-history-head)>div{position:relative;z-index:1}
body[data-area="reader"] .ad-head:not(.reading-form-hero):not(.reading-history-head) .eyebrow{color:#a78bfa}
body[data-area="reader"] .ad-head:not(.reading-form-hero):not(.reading-history-head) h2{color:#fff;margin-top:4px}
/* Texto operativo redundante: se oculta visualmente sin tocar PHP. */
body[data-area="reader"] .ad-head:not(.reading-form-hero):not(.reading-history-head) p{display:none!important}
body[data-area="reader"] [data-live-region="reading-main"] + .workflow-connection-note{display:none!important}
body[data-area="reader"] .reading-kpis .kpi-card:nth-child(1) small,
body[data-area="reader"] .reading-kpis .kpi-card:nth-child(3) small,
body[data-area="reader"] .reading-kpis .kpi-card:nth-child(4) small{display:none}

/* ---------- Reader · Formulario ---------- */
body[data-area="reader"] .reading-form-hero{
  min-height:92px!important;
  margin-bottom:14px!important;
  padding:16px 20px!important;
}
body[data-area="reader"] .reading-form-hero h2{font-size:21px!important}
/* Oculta explicación técnica/operativa del empleado sin alterar el formulario. */
body[data-area="reader"] .reading-form-hero p{display:none!important}
body[data-area="reader"] .reading-form-placeholder + .workflow-connection-note,
body[data-area="reader"] .reading-study-layout + .workflow-connection-note{display:none!important}

/* La barra de acciones siempre expone TODAS las acciones del PHP original. */
body[data-area="reader"] .actions-section{
  background:linear-gradient(135deg,#0f172a 0%,#172033 65%,#2a1548 100%)!important;
  border-color:#24324b!important;
}
body[data-area="reader"] .reading-actions-toolbar{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:9px!important;
  align-items:center!important;
}
body[data-area="reader"] .reading-actions-toolbar .primary-btn,
body[data-area="reader"] .reading-actions-toolbar .secondary-btn{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  min-height:38px;
  align-items:center;
  justify-content:center;
}
body[data-area="reader"] .reading-actions-toolbar .primary-btn{
  background:linear-gradient(135deg,#7c3aed,#9333ea)!important;
  border:1px solid #8b5cf6!important;
}
body[data-area="reader"] .reading-actions-toolbar .secondary-btn{
  background:#fff!important;
  border:1px solid #d8deea!important;
  color:#263142!important;
}
body[data-area="reader"] .reading-actions-toolbar .secondary-btn:hover{
  border-color:#8b5cf6!important;
  background:#f7f5ff!important;
  color:#5b21b6!important;
}
body[data-area="reader"] .actions-section .mail-last-status{color:#cbd5e1!important}

/* ---------- Reader · Historial ---------- */
body[data-area="reader"] .reading-history-head{
  position:relative;
  overflow:hidden;
  min-height:92px;
  margin-bottom:14px;
  padding:17px 20px;
  align-items:center!important;
  border:1px solid #172033;
  border-left:5px solid #7c3aed;
  border-radius:16px;
  background:linear-gradient(118deg,#0f172a 0%,#172033 62%,#2a1548 100%);
  box-shadow:0 12px 30px rgba(15,23,42,.10);
}
body[data-area="reader"] .reading-history-head:after{
  content:"";
  position:absolute;
  width:250px;
  height:250px;
  right:-80px;
  top:-150px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(139,92,246,.5),rgba(139,92,246,0) 70%);
  pointer-events:none;
}
body[data-area="reader"] .reading-history-head>div,
body[data-area="reader"] .reading-history-head>.primary-btn{position:relative;z-index:1}
body[data-area="reader"] .reading-history-head .eyebrow{color:#a78bfa}
body[data-area="reader"] .reading-history-head h2{color:#fff}
body[data-area="reader"] .reading-history-head p{margin-top:5px;color:#cbd5e1;max-width:720px;font-size:11.5px;line-height:1.45}
body[data-area="reader"] .reading-history-head .primary-btn{
  background:#fff;
  color:#4c1d95;
  border:1px solid rgba(255,255,255,.6);
  box-shadow:0 6px 18px rgba(0,0,0,.12);
}

body[data-area="reader"] .history-summary-grid{gap:11px;margin-bottom:14px}
body[data-area="reader"] .history-summary-card{
  --history-accent:#2563eb;
  position:relative;
  overflow:hidden;
  min-height:92px;
  padding:15px 17px 14px 19px;
  border:1px solid #dfe4ec!important;
  border-radius:14px;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(15,23,42,.045);
}
body[data-area="reader"] .history-summary-card:before{
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:4px;
  border-radius:0 999px 999px 0;
  background:var(--history-accent);
}
body[data-area="reader"] .history-summary-card:nth-child(1){--history-accent:#2563eb}
body[data-area="reader"] .history-summary-approved{--history-accent:#047857}
body[data-area="reader"] .history-summary-review{--history-accent:#d97706}
body[data-area="reader"] .history-summary-rejected{--history-accent:#b91c1c}
body[data-area="reader"] .history-summary-card span{color:#667085;font-weight:800}
body[data-area="reader"] .history-summary-card strong{color:var(--history-accent);font-size:28px}

body[data-area="reader"] .reading-history-card{
  border:1px solid #dfe4ec;
  box-shadow:0 9px 26px rgba(15,23,42,.05);
}
body[data-area="reader"] .history-toolbar{
  margin:-2px -2px 12px;
  padding:10px;
  border:1px solid #e3e7ee;
  border-radius:13px;
  background:#f8fafc;
}
body[data-area="reader"] .history-search-field input,
body[data-area="reader"] .history-status-filter,
body[data-area="reader"] .history-page-size-form select{
  min-height:40px;
  border-color:#d7dde7!important;
  background:#fff!important;
}
body[data-area="reader"] .history-search-modern>.secondary-btn{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
body[data-area="reader"] .history-search-modern>button.secondary-btn{
  border-color:#6d28d9;
  background:#6d28d9;
  color:#fff;
}
body[data-area="reader"] .history-search-modern>button.secondary-btn:hover{background:#5b21b6}
body[data-area="reader"] .history-reading-page-table thead th{
  padding:10px 9px!important;
  background:#172033!important;
  color:#f8fafc!important;
  border-bottom-color:#172033!important;
  font-weight:700!important;
}
body[data-area="reader"] .history-reading-page-table thead th:first-child{border-radius:9px 0 0 9px}
body[data-area="reader"] .history-reading-page-table thead th:last-child{border-radius:0 9px 9px 0}
body[data-area="reader"] .history-reading-page-table tbody tr:hover td{background:#f7f9fc}
body[data-area="reader"] .history-reading-page-table .compact-btn{
  border:1px solid #172033;
  background:#172033;
  color:#fff;
}
body[data-area="reader"] .history-reading-page-table .compact-btn:hover{border-color:#6d28d9;background:#6d28d9;color:#fff}
body[data-area="reader"] .reading-history-card + .workflow-connection-note{display:none!important}

/* Estados Reading/Historial: color sólido y mejor contraste. */
body[data-area="reader"] .status-pill.status-activa{background:#047857!important;color:#fff!important}
body[data-area="reader"] .status-pill.status-programada{background:#2563eb!important;color:#fff!important}
body[data-area="reader"] .status-pill.status-pendiente{background:#6d28d9!important;color:#fff!important}
body[data-area="reader"] .status-pill.status-warning{background:#d97706!important;color:#fff!important}
body[data-area="reader"] .status-pill.status-pausada{background:#b91c1c!important;color:#fff!important}

/* ---------- Reader · Mensajes: mantener todo dentro del viewport ---------- */
@media(min-width:1101px){
  body[data-area="reader"] .messages-layout-v2120{
    height:calc(100dvh - 166px)!important;
    min-height:500px!important;
    max-height:calc(100dvh - 166px)!important;
  }
  body[data-area="reader"] .messages-window-v2120{min-height:0!important}
}

@media(max-width:900px){
  body[data-area="reader"] .reading-history-head{align-items:flex-start!important;gap:12px}
  body[data-area="reader"] .dashboard-welcome{align-items:flex-start}
}

/* ===== DuxApp 2.10.30 · Productor Editorial ===== */
/* Solo presentación: Inicio de Producción + chat ajustado al viewport. */

/* ---------- Productor · Mensajes: compositor siempre dentro de la pantalla ---------- */
@media (min-width:1101px){
  body[data-area="producer"] .messages-layout-v2120{
    height:calc(100dvh - 166px)!important;
    min-height:500px!important;
    max-height:calc(100dvh - 166px)!important;
    align-items:stretch!important;
  }
  body[data-area="producer"] .messages-sidebar-v2120,
  body[data-area="producer"] .messages-card-v2120{
    height:100%!important;
    min-height:0!important;
  }
  body[data-area="producer"] .messages-card-v2120{
    overflow:hidden!important;
  }
  body[data-area="producer"] .messages-window-v2120{
    flex:1 1 auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:16px 18px 18px;
  }
  body[data-area="producer"] .message-compose-v2120{
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:8px;
    padding:9px 11px 8px;
    align-items:center;
  }
  body[data-area="producer"] .message-compose-v2120 textarea{
    min-height:40px;
    max-height:88px;
    height:40px;
    padding:9px 11px;
    resize:none;
  }
  body[data-area="producer"] .message-compose-v2120 .primary-btn,
  body[data-area="producer"] .message-compose-v2120 .message-attach-btn{
    height:40px;
  }
  body[data-area="producer"] .message-upload-help{
    grid-column:2 / 3;
    margin-top:-3px;
    padding:0 2px;
    line-height:1.2;
  }
}

/* ---------- Productor · Inicio: mayor contraste y color, sin alterar estructura ---------- */
body[data-area="producer"] .dashboard-welcome{
  position:relative;
  overflow:hidden;
  padding:17px 19px;
  border:1px solid #172033;
  border-left:5px solid #7c3aed;
  border-radius:16px;
  background:linear-gradient(118deg,#111827 0%,#172033 60%,#271343 100%);
  box-shadow:0 10px 28px rgba(15,23,42,.10);
}
body[data-area="producer"] .dashboard-welcome:after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-55px;
  top:-92px;
  border-radius:50%;
  background:rgba(124,58,237,.18);
  pointer-events:none;
}
body[data-area="producer"] .dashboard-welcome h2{color:#fff;letter-spacing:-.025em}
body[data-area="producer"] .dashboard-welcome p{color:#c8d0dd}
body[data-area="producer"] .dashboard-welcome .welcome-date{
  position:relative;
  z-index:1;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.09);
  color:#fff;
  box-shadow:none;
}
body[data-area="producer"] .dashboard-welcome .welcome-date svg{color:#c4b5fd}

body[data-area="producer"] .kpi-grid{
  gap:12px;
}
body[data-area="producer"] .kpi-card{
  position:relative;
  overflow:hidden;
  min-height:100px;
  border:1px solid #dde3ec;
  border-radius:15px;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(15,23,42,.045);
}
body[data-area="producer"] .kpi-card:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:#7c3aed;
}
body[data-area="producer"] .kpi-card:nth-child(1):before{background:#7c3aed}
body[data-area="producer"] .kpi-card:nth-child(2):before{background:#e88900}
body[data-area="producer"] .kpi-card:nth-child(3):before{background:#2563eb}
body[data-area="producer"] .kpi-card:nth-child(4):before{background:#059669}
body[data-area="producer"] .kpi-card:nth-child(5):before{background:#dc2626}
body[data-area="producer"] .kpi-card:nth-child(6):before{background:#0891b2}
body[data-area="producer"] .kpi-card .kpi-icon{
  color:#fff!important;
  box-shadow:0 6px 14px rgba(15,23,42,.12);
}
body[data-area="producer"] .kpi-card:nth-child(1) .kpi-icon{background:#7c3aed!important}
body[data-area="producer"] .kpi-card:nth-child(2) .kpi-icon{background:#e88900!important}
body[data-area="producer"] .kpi-card:nth-child(3) .kpi-icon{background:#2563eb!important}
body[data-area="producer"] .kpi-card:nth-child(4) .kpi-icon{background:#059669!important}
body[data-area="producer"] .kpi-card:nth-child(5) .kpi-icon{background:#dc2626!important}
body[data-area="producer"] .kpi-card:nth-child(6) .kpi-icon{background:#0891b2!important}
body[data-area="producer"] .kpi-card .kpi-copy strong{color:#101828}
body[data-area="producer"] .kpi-card .kpi-copy span{color:#344054;font-weight:700}
body[data-area="producer"] .kpi-card .kpi-copy small{color:#7b8493}

body[data-area="producer"] .dashboard-card{
  border-color:#dfe4ec;
  box-shadow:0 7px 20px rgba(15,23,42,.045);
}
body[data-area="producer"] .dashboard-card .card-head h3{color:#172033}
body[data-area="producer"] .dashboard-card .card-link{
  color:#6d28d9;
  font-weight:700;
}
body[data-area="producer"] .dashboard-card .card-link:hover{color:#4c1d95}

body[data-area="producer"] .dashboard-card .tabs{
  border-bottom-color:#e4e7ec;
}
body[data-area="producer"] .dashboard-card .tab{
  color:#667085;
  font-weight:600;
}
body[data-area="producer"] .dashboard-card .tab.active{
  color:#6d28d9;
  border-bottom-color:#6d28d9;
}

body[data-area="producer"] .mini-table thead th{
  background:#172033;
  color:#f8fafc;
  border-bottom-color:#172033;
  font-weight:700;
}
body[data-area="producer"] .mini-table thead th:first-child{border-radius:8px 0 0 8px}
body[data-area="producer"] .mini-table thead th:last-child{border-radius:0 8px 8px 0}
body[data-area="producer"] .mini-table tbody tr:hover td{background:#f8fafc}

body[data-area="producer"] .priority.high{
  background:#dc2626!important;
  color:#fff!important;
}
body[data-area="producer"] .priority.medium{
  background:#d97706!important;
  color:#fff!important;
}
body[data-area="producer"] .status-pill.orange{
  background:#d97706!important;
  color:#fff!important;
}
body[data-area="producer"] .status-pill.gray{
  background:#475467!important;
  color:#fff!important;
}
body[data-area="producer"] .mini-table .status-pill:not(.orange):not(.gray){
  background:#6d28d9;
  color:#fff;
}

body[data-area="producer"] .timeline-tag{
  border:0;
  background:#6d28d9;
  color:#fff;
}
body[data-area="producer"] .timeline-tag.orange{background:#d97706;color:#fff}
body[data-area="producer"] .timeline-tag.blue{background:#2563eb;color:#fff}
body[data-area="producer"] .timeline-time{color:#475467;font-weight:700}

body[data-area="producer"] .alert-icon{
  background:#dc2626;
  color:#fff;
}
body[data-area="producer"] .alert-icon.blue{background:#2563eb;color:#fff}
body[data-area="producer"] .alert-icon.orange{background:#d97706;color:#fff}
body[data-area="producer"] .alert-icon.purple{background:#7c3aed;color:#fff}

body[data-area="producer"] .flow-stage .flow-stage-icon{
  border:1px solid #d9dee7;
  background:#f7f8fa;
  color:#667085;
}
body[data-area="producer"] .flow-stage.done .flow-stage-icon{
  border-color:#059669;
  background:#059669;
  color:#fff;
}
body[data-area="producer"] .flow-stage.active .flow-stage-icon{
  border-color:#7c3aed;
  background:#7c3aed;
  color:#fff;
  box-shadow:0 5px 13px rgba(124,58,237,.18);
}
body[data-area="producer"] .flow-stage.active strong{color:#6d28d9}

body[data-area="producer"] .quick-action{
  border-color:#dfe3ea;
  background:#fff;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}
body[data-area="producer"] .quick-action:hover{
  transform:translateY(-1px);
  border-color:#a78bfa;
  box-shadow:0 7px 18px rgba(109,40,217,.08);
}
body[data-area="producer"] .quick-action .quick-action-icon{
  background:#6d28d9;
  color:#fff;
}
body[data-area="producer"] .quick-action:nth-child(2) .quick-action-icon{background:#2563eb}
body[data-area="producer"] .quick-action:nth-child(3) .quick-action-icon{background:#d97706}
body[data-area="producer"] .quick-action:nth-child(4) .quick-action-icon{background:#059669}

@media(max-width:1100px){
  body[data-area="producer"] .messages-layout-v2120{height:auto;min-height:0;max-height:none}
  body[data-area="producer"] .messages-sidebar-v2120,
  body[data-area="producer"] .messages-card-v2120{height:auto}
  body[data-area="producer"] .messages-window-v2120{height:clamp(360px,calc(100dvh - 330px),560px);min-height:360px;max-height:560px}
}

/* ========================================================================== */
/* DuxApp v2.10.31 · Contratos editoriales / Form                            */
/* ========================================================================== */
.contract-page{display:grid;gap:14px;max-width:1460px;margin:0 auto}
.contract-flash{margin:0;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.contract-hero,.contract-history-head{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;border-radius:18px;background:linear-gradient(120deg,#0d172b 0%,#15223e 52%,#3b176f 100%);color:#fff;box-shadow:0 16px 38px rgba(15,23,42,.13)}
.contract-hero:after,.contract-history-head:after{content:"";position:absolute;right:-80px;top:-145px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(139,92,246,.42),rgba(139,92,246,0) 68%);pointer-events:none}
.contract-hero-copy,.contract-history-head>div,.contract-hero-side,.contract-history-head>a{position:relative;z-index:1}.contract-kicker{display:block;color:#c4b5fd;font-size:9px;font-weight:800;letter-spacing:.12em;margin-bottom:7px}.contract-hero h2,.contract-history-head h2{font-size:22px;letter-spacing:-.03em;margin:0 0 6px}.contract-hero p,.contract-history-head p{max-width:820px;margin:0;color:#c4ccdb;font-size:11.5px;line-height:1.6}.contract-hero-side{display:grid;justify-items:end;gap:10px;min-width:170px}.contract-back-link{font-size:10px;color:#d8ddef;font-weight:650}.contract-back-link:hover{color:#fff}
.contract-status{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.02em;border:1px solid transparent;white-space:nowrap}.contract-status.draft{background:#334155;color:#fff;border-color:#475569}.contract-status.ready{background:#2563eb;color:#fff}.contract-status.sent{background:#d97706;color:#fff}.contract-status.signed{background:#059669;color:#fff}.contract-status.cancelled{background:#dc2626;color:#fff}.contract-status.small{padding:6px 9px;font-size:9.5px}
.contract-expedient-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:#fff;border:1px solid #e2e7ef;border-radius:14px;box-shadow:0 8px 24px rgba(15,23,42,.045);overflow:hidden}.contract-expedient-bar>div{padding:13px 15px;border-right:1px solid #edf0f5;min-width:0}.contract-expedient-bar>div:last-child{border-right:0}.contract-expedient-bar small{display:block;color:#8992a2;font-size:8px;font-weight:750;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.contract-expedient-bar strong{display:block;color:#1e293b;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.contract-locked-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #b8e3cf;background:#ecfdf5;border-left:4px solid #059669;border-radius:12px}.contract-locked-banner>div:first-child{display:grid;gap:3px}.contract-locked-banner strong{font-size:12px;color:#076a4c}.contract-locked-banner span{font-size:10px;color:#557269}.contract-locked-actions{display:flex;gap:8px;align-items:center}
.contract-form-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.contract-card{background:#fff;border:1px solid #e2e7ef;border-radius:15px;padding:17px;box-shadow:0 8px 24px rgba(15,23,42,.035);min-width:0}.contract-card-legal,.contract-card-finance{grid-column:1/-1}.contract-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:13px;margin-bottom:14px;border-bottom:1px solid #edf0f5}.contract-card-head>div{min-width:0}.contract-card-head h3{display:inline;margin:0;color:#182234;font-size:14px;letter-spacing:-.015em}.contract-card-head p{margin:4px 0 0 38px;color:#7a8495;font-size:9.5px;line-height:1.45}.contract-step{display:inline-grid;place-items:center;width:28px;height:28px;margin-right:8px;border-radius:8px;background:#6d28d9;color:#fff;font-size:8.5px;font-weight:900;vertical-align:middle;box-shadow:0 6px 14px rgba(109,40,217,.18)}.contract-step.blue{background:#2563eb}.contract-step.green{background:#059669}.contract-step.amber{background:#d97706}.contract-step.cyan{background:#0891b2}.contract-head-chip{padding:6px 8px;border-radius:999px;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.contract-head-chip.required{background:#fee2e2;color:#b91c1c}.contract-head-chip.legal{background:#fef3c7;color:#a16207}
.contract-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.contract-upload-box{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;padding:13px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc;min-height:78px;cursor:pointer;transition:.16s}.contract-upload-box:hover{border-color:#7c3aed;background:#faf8ff}.contract-upload-box.has-file{border-style:solid;border-color:#86d5b5;background:#f0fdf8}.contract-upload-box input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.contract-upload-icon{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;color:#fff;background:#6d28d9}.contract-upload-icon.optional{background:#2563eb}.contract-upload-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}.contract-upload-box strong{display:block;font-size:10.5px;color:#273244}.contract-upload-box small{display:block;margin-top:3px;font-size:8.5px;color:#8b94a3}.contract-upload-box em{grid-column:2;font-style:normal;font-size:8.5px;font-weight:700;color:#047857;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-file-links{display:flex;gap:12px;margin-top:9px}.contract-file-links a{font-size:9px;font-weight:700;color:#6d28d9}.contract-file-links a:hover{text-decoration:underline}
.contract-fields{display:grid;gap:10px}.contract-fields.three{grid-template-columns:repeat(3,minmax(0,1fr))}.contract-fields label{display:grid;gap:5px;min-width:0;color:#4d5869;font-size:9px;font-weight:700}.contract-fields label>span{display:flex;align-items:center;gap:5px}.contract-fields label>span small{font-size:8px;color:#98a1af;font-weight:500}.contract-fields .span-2{grid-column:span 2}.contract-fields input,.contract-fields select{width:100%;height:39px;border:1px solid #dce2ea;border-radius:9px;background:#fff;color:#1f2937;padding:0 11px;font:inherit;font-size:10.5px;outline:none;transition:.16s}.contract-fields input:focus,.contract-fields select:focus,.contract-calendar-row input:focus{border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.09)}.contract-fields input[readonly]{background:#f4f6f8;color:#6b7280}.contract-fields input:disabled,.contract-fields select:disabled,.contract-calendar-row input:disabled{background:#f5f6f8;color:#7d8795;cursor:not-allowed}.contract-field-help{display:block!important;font-size:7.8px!important;color:#929baa!important;font-weight:500!important;line-height:1.35}
.contract-legal-note{display:flex;align-items:flex-start;gap:13px;margin:-1px 0 14px;padding:11px 13px;border-radius:10px;background:#fff8e8;border:1px solid #f6d58b;border-left:4px solid #d97706}.contract-legal-note strong{flex:0 0 125px;color:#92400e;font-size:9.5px}.contract-legal-note span{font-size:9px;line-height:1.5;color:#785d35}
.contract-payment-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:17px 0 9px}.contract-payment-head>div{display:grid;gap:2px}.contract-payment-head strong{font-size:11.5px;color:#172033}.contract-payment-head span{font-size:8.7px;color:#8891a0}.contract-generate-dates{border-color:#b9c9ed!important;color:#1d4ed8!important;background:#f8fbff!important}.contract-payment-table{border:1px solid #dfe5ed;border-radius:11px;overflow:hidden}.contract-payment-columns,.contract-payment-row{display:grid;grid-template-columns:120px minmax(160px,1fr) minmax(160px,1fr);align-items:center}.contract-payment-columns{background:#101b32;color:#dbe5f6;padding:8px 12px;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.contract-payment-row{padding:8px 12px;border-top:1px solid #edf0f4;background:#fff;gap:10px}.contract-payment-row strong{font-size:9.5px;color:#293548}.contract-payment-row>label{position:relative}.contract-payment-row input{width:100%;height:34px;border:1px solid #dce2ea;border-radius:8px;padding:0 10px;font-size:9.5px;outline:none}.contract-payment-row>label input{padding-left:48px}.currency-prefix{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:8px;color:#64748b;font-weight:800;pointer-events:none}.contract-payment-total{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:10px 12px;background:#f6f8fb;border-top:1px solid #e4e9f0}.contract-payment-total span{font-size:9px;color:#657083}.contract-payment-total strong{font-size:12px;color:#172033}
.contract-calendar-row{display:grid;grid-template-columns:42px minmax(0,1fr);gap:11px;align-items:center}.contract-calendar-icon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:#0891b2;color:#fff}.contract-calendar-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.contract-calendar-row label{display:grid;gap:5px;color:#4d5869;font-size:9px;font-weight:700}.contract-calendar-row label>span small{color:#98a1af;font-weight:500}.contract-calendar-row input{height:39px;border:1px solid #dce2ea;border-radius:9px;padding:0 11px;font-size:10px;outline:none}.contract-calendar-row label>small{font-size:8px;color:#8a94a4;font-weight:500;line-height:1.45}
.contract-action-bar{position:sticky;bottom:10px;z-index:12;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:13px;padding:13px 15px;background:rgba(15,23,42,.96);color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:13px;box-shadow:0 16px 36px rgba(15,23,42,.22);backdrop-filter:blur(10px)}.contract-action-bar>div:first-child{display:grid;gap:3px}.contract-action-bar strong{font-size:10.5px}.contract-action-bar span{font-size:8.5px;color:#adb7c9}.contract-action-buttons{display:flex;gap:8px;align-items:center}.contract-action-buttons .secondary-btn{background:#fff}.contract-action-buttons .primary-btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}
.contract-output-card{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border:1px solid #c9d9f6;border-left:4px solid #2563eb;border-radius:13px;padding:14px 16px;box-shadow:0 8px 24px rgba(15,23,42,.04)}.contract-output-card>div:first-child{display:flex;align-items:center;gap:11px}.contract-output-icon{width:38px;height:38px;border-radius:10px;background:#2563eb;color:#fff;display:grid;place-items:center}.contract-output-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.contract-output-card small{display:block;font-size:7.5px;color:#64748b;font-weight:850;letter-spacing:.08em}.contract-output-card strong{display:block;font-size:12px;color:#182234;margin-top:2px}.contract-output-card p{margin:3px 0 0;font-size:8.7px;color:#7c8696}.contract-output-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.contract-output-actions form{margin:0}.contract-send-btn{background:linear-gradient(135deg,#047857,#059669)!important;box-shadow:0 7px 17px rgba(5,150,105,.18)!important}.contract-sent-confirm{font-size:9px;font-weight:800;color:#047857;background:#ecfdf5;border:1px solid #b9e7d4;border-radius:9px;padding:8px 10px}
.reading-contract-btn{border-color:#7c3aed!important;background:#6d28d9!important;color:#fff!important;font-weight:750!important;box-shadow:0 5px 12px rgba(109,40,217,.14)}.reading-contract-btn:hover{background:#5b21b6!important;border-color:#5b21b6!important}.reading-contract-btn.is-signed{background:#059669!important;border-color:#059669!important}
.contract-history-head{padding:20px 22px}.contract-history-head .primary-btn{background:#fff;color:#5b21b6;box-shadow:none;white-space:nowrap}.contract-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.contract-summary{position:relative;overflow:hidden;min-height:102px;padding:15px 16px;border-radius:13px;color:#fff;box-shadow:0 9px 22px rgba(15,23,42,.08)}.contract-summary:after{content:"";position:absolute;right:-26px;top:-40px;width:110px;height:110px;border-radius:50%;background:rgba(255,255,255,.11)}.contract-summary.navy{background:linear-gradient(135deg,#101827,#243553)}.contract-summary.purple{background:linear-gradient(135deg,#5b21b6,#7c3aed)}.contract-summary.amber{background:linear-gradient(135deg,#b45309,#e58a0a)}.contract-summary.green{background:linear-gradient(135deg,#047857,#059669)}.contract-summary span{display:block;font-size:8px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:rgba(255,255,255,.72)}.contract-summary strong{display:block;font-size:24px;line-height:1;margin:11px 0 5px}.contract-summary small{font-size:8.5px;color:rgba(255,255,255,.78)}
.contract-history-card{background:#fff;border:1px solid #e1e6ee;border-radius:14px;padding:14px;box-shadow:0 8px 24px rgba(15,23,42,.035)}.contract-history-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) 210px auto;gap:9px}.contract-search-field{position:relative}.contract-search-field>span{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;color:#8791a2}.contract-search-field svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}.contract-search-field input,.contract-history-toolbar select{width:100%;height:39px;border:1px solid #dce2ea;border-radius:10px;background:#fff;padding:0 11px;font-size:10px;color:#283345;outline:none}.contract-search-field input{padding-left:37px}.contract-history-count{font-size:8.5px;color:#8c95a4;margin:9px 2px}.contract-history-wrap{border:1px solid #e6eaf0;border-radius:11px}.contract-history-table{min-width:1020px}.contract-history-table th{background:#101b32!important;color:#dbe5f6!important;border:0!important;padding:10px!important}.contract-history-table td{padding:11px 10px!important}.contract-history-table tr:hover td{background:#fafbfe}.contract-imprint-chip{display:inline-flex;padding:6px 8px;border-radius:8px;font-size:9px;font-weight:750}.contract-imprint-chip.universo_lux{background:#ede9fe;color:#5b21b6;border:1px solid #d8ccfb}.contract-imprint-chip.volta_editorial{background:#e0f2fe;color:#075985;border:1px solid #bae6fd}.contract-pdf-btn{margin-left:4px;border-color:#fecaca!important;color:#b91c1c!important;background:#fff7f7!important}
@media(max-width:1180px){.contract-expedient-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.contract-expedient-bar>div:nth-child(3){border-right:0}.contract-expedient-bar>div:nth-child(n+4){border-top:1px solid #edf0f5}.contract-fields.three{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-fields .span-2{grid-column:span 2}}
@media(max-width:900px){.contract-form-columns{grid-template-columns:1fr}.contract-card-legal,.contract-card-finance{grid-column:auto}.contract-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-upload-grid{grid-template-columns:1fr}.contract-history-toolbar{grid-template-columns:1fr 180px auto}.contract-action-bar{position:static}.contract-output-card{align-items:flex-start;flex-direction:column}.contract-output-actions{justify-content:flex-start}}
@media(max-width:680px){.contract-hero,.contract-history-head{align-items:flex-start;flex-direction:column}.contract-hero-side{justify-items:start;min-width:0}.contract-expedient-bar{grid-template-columns:1fr}.contract-expedient-bar>div{border-right:0!important;border-top:1px solid #edf0f5!important}.contract-expedient-bar>div:first-child{border-top:0!important}.contract-fields.three{grid-template-columns:1fr}.contract-fields .span-2{grid-column:auto}.contract-summary-grid{grid-template-columns:1fr}.contract-history-toolbar{grid-template-columns:1fr}.contract-payment-columns{display:none}.contract-payment-row{grid-template-columns:1fr}.contract-payment-row>strong{color:#6d28d9}.contract-legal-note{display:grid;gap:4px}.contract-legal-note strong{flex:auto}.contract-payment-head,.contract-locked-banner,.contract-action-bar{align-items:stretch;flex-direction:column}.contract-action-buttons,.contract-locked-actions{width:100%}.contract-action-buttons>*{flex:1}.contract-calendar-row{grid-template-columns:1fr}.contract-calendar-icon{display:none}}

/* ========================================================================== */
/* DuxApp v2.10.32 · Ajustes legales: correcciones, agenda general y contrato  */
/* ========================================================================== */
.contract-card-meeting-info{border-left:4px solid #0891b2;background:linear-gradient(135deg,#fff,#f7fdff)}
.contract-card-meeting-info .contract-head-chip{background:#0891b2;color:#fff;border-color:#0891b2}
.contract-correction-banner{display:flex;align-items:flex-start;gap:14px;padding:12px 14px;border:1px solid #f1c27a;border-left:4px solid #d97706;border-radius:12px;background:#fffaf0;box-shadow:0 6px 18px rgba(146,64,14,.05)}
.contract-correction-banner strong{flex:0 0 190px;color:#92400e;font-size:10px}
.contract-correction-banner span{color:#785d35;font-size:9px;line-height:1.55}
.contract-edit-btn{border-color:#c4b5fd!important;background:#faf8ff!important;color:#6d28d9!important;font-weight:750!important}
.contract-edit-btn:hover{border-color:#7c3aed!important;background:#f4efff!important;color:#5b21b6!important}
.contract-calendar-admin{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(420px,1.2fr);gap:22px;align-items:center;padding:17px 18px;border:1px solid #cdd9ea;border-left:4px solid #2563eb;border-radius:14px;background:linear-gradient(135deg,#fff 0%,#f7faff 100%);box-shadow:0 8px 24px rgba(15,23,42,.035)}
.contract-calendar-admin h3{margin:0 0 4px;color:#172033;font-size:13px}
.contract-calendar-admin p{margin:0;color:#6f7a8a;font-size:9px;line-height:1.5}
.contract-calendar-admin form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center}
.contract-calendar-admin input{width:100%;height:40px;border:1px solid #d7deea;border-radius:10px;background:#fff;padding:0 12px;color:#253044;font-size:9.5px;outline:none}
.contract-calendar-admin input:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.09)}
.contract-calendar-admin .primary-btn{white-space:nowrap;background:#2563eb!important;box-shadow:0 7px 16px rgba(37,99,235,.16)!important}
@media(max-width:900px){.contract-calendar-admin{grid-template-columns:1fr}.contract-calendar-admin form{grid-template-columns:1fr}.contract-correction-banner{display:grid;gap:5px}.contract-correction-banner strong{flex:auto}}

/* ========================================================================== */
/* DuxApp v2.10.37 · Reuniones del Productor Editorial                        */
/* ========================================================================== */
.meetings-page{display:grid;gap:14px;max-width:1460px;margin:0 auto}
.meetings-hero{display:flex;align-items:center;gap:16px;padding:18px 20px;background:#fff;border:1px solid #dfe4ec;border-radius:16px;box-shadow:0 8px 24px rgba(15,23,42,.04)}
.meetings-hero-icon{width:48px;height:48px;flex:0 0 48px;border-radius:13px;display:grid;place-items:center;background:#111b31;color:#fff;box-shadow:0 8px 18px rgba(15,23,42,.14)}
.meetings-hero-icon svg,.meetings-status-icon svg,.meetings-hero-actions svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}
.meetings-hero-copy{min-width:0}.meetings-kicker{display:block;margin-bottom:5px;font-size:8px;font-weight:850;letter-spacing:.11em;color:#7c3aed}.meetings-hero h2{margin:0;color:#172033;font-size:20px;letter-spacing:-.025em}.meetings-hero p{margin:5px 0 0;color:#758091;font-size:10.5px;line-height:1.55}
.meetings-hero-actions{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.meetings-hero-actions a{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.meetings-booking-btn{background:#6d28d9!important;box-shadow:0 7px 16px rgba(109,40,217,.16)!important}.meetings-open-btn{background:#fff!important}
.meetings-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.meetings-status-card{display:flex;align-items:center;gap:12px;padding:14px 15px;border-radius:13px;color:#fff;box-shadow:0 8px 20px rgba(15,23,42,.08);min-width:0}.meetings-status-card.navy{background:linear-gradient(135deg,#111827,#243553)}.meetings-status-card.purple{background:linear-gradient(135deg,#5b21b6,#7c3aed)}.meetings-status-card.green{background:linear-gradient(135deg,#047857,#059669)}.meetings-status-icon{width:38px;height:38px;flex:0 0 38px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.14)}.meetings-status-card div:last-child{min-width:0}.meetings-status-card small{display:block;font-size:7.5px;letter-spacing:.08em;font-weight:800;color:rgba(255,255,255,.72)}.meetings-status-card strong{display:block;margin-top:3px;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meetings-status-card span{display:block;margin-top:2px;font-size:8.5px;color:rgba(255,255,255,.78)}
.meetings-calendar-card{background:#fff;border:1px solid #dfe4ec;border-radius:16px;overflow:hidden;box-shadow:0 10px 28px rgba(15,23,42,.045)}.meetings-calendar-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:15px 17px;border-bottom:1px solid #e8ecf2}.meetings-calendar-head span{font-size:7.5px;color:#7c3aed;font-weight:850;letter-spacing:.1em}.meetings-calendar-head h3{margin:3px 0 0;color:#172033;font-size:14px}.meetings-calendar-head p{margin:4px 0 0;color:#7c8696;font-size:9px;line-height:1.45}.meetings-calendar-head a{font-size:9px;color:#6d28d9;font-weight:750;white-space:nowrap}.meetings-calendar-head a:hover{text-decoration:underline}
.meetings-calendar-frame{height:clamp(470px,calc(100dvh - 365px),720px);min-height:470px;background:#f7f8fb}.meetings-calendar-frame iframe{display:block;width:100%;height:100%;border:0;background:#fff}.meetings-calendar-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 14px;border-top:1px solid #e8ecf2;background:#fafbfc}.meetings-calendar-foot span{display:flex;align-items:center;gap:7px;color:#344054;font-size:8.5px;font-weight:700}.meetings-calendar-foot span i{width:7px;height:7px;border-radius:50%;background:#12b76a;box-shadow:0 0 0 3px rgba(18,183,106,.12)}.meetings-calendar-foot small{font-size:8px;color:#8b94a3;text-align:right}
@media(max-width:980px){.meetings-hero{align-items:flex-start;flex-wrap:wrap}.meetings-hero-actions{width:100%;margin-left:64px;justify-content:flex-start}.meetings-status-grid{grid-template-columns:1fr}.meetings-calendar-frame{height:560px}.meetings-calendar-foot{align-items:flex-start;flex-direction:column}.meetings-calendar-foot small{text-align:left}}
@media(max-width:640px){.meetings-hero{display:grid;grid-template-columns:48px 1fr}.meetings-hero-actions{grid-column:1/-1;margin-left:0}.meetings-hero-actions a{flex:1;justify-content:center}.meetings-calendar-head{align-items:flex-start;flex-direction:column}.meetings-calendar-frame{height:520px;min-height:520px}}
.contract-calendar-fixed-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.contract-calendar-fixed-actions>span{min-width:0;max-width:430px;padding:10px 12px;border:1px solid #d7deea;border-radius:10px;background:#fff;color:#64748b;font-size:8.8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-calendar-fixed-actions .primary-btn{white-space:nowrap;background:#2563eb!important;box-shadow:0 7px 16px rgba(37,99,235,.16)!important}@media(max-width:900px){.contract-calendar-fixed-actions{align-items:stretch;flex-direction:column}.contract-calendar-fixed-actions>span{max-width:none}.contract-calendar-fixed-actions .primary-btn{text-align:center}}

/* v2.10.38 · Comercial: compactar Acción y redistribuir espacio */
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(1),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(1){width:16%!important}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(2),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(2){width:10%!important}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(3),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(3){width:10%!important}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(4),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(4){width:14%!important}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(5),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(5){width:12%!important}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(6),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(6){width:9%!important}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(7),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(7){width:14%!important}
body[data-area="commercial"] .commercial-table:not(.reading-table) th:nth-child(8),
body[data-area="commercial"] .commercial-table:not(.reading-table) td:nth-child(8){width:15%!important}

/* ========================================================================== */
/* DuxApp v2.10.39 · Seguimiento de firma contractual                         */
/* ========================================================================== */
.contract-followup-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:18px;padding:17px 18px;border:1px solid #dfe5ee;border-left:4px solid #7c3aed;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.04)}
.contract-followup-main{display:grid;gap:12px}.contract-followup-title{display:flex;align-items:center;gap:11px}.contract-followup-title h3{margin:2px 0 0;font-size:13px;color:#172033}.contract-followup-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#6d28d9;color:#fff;box-shadow:0 7px 16px rgba(109,40,217,.16)}.contract-followup-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}
.contract-followup-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.contract-followup-metrics>div{padding:10px 11px;border:1px solid #e5e9f0;border-radius:10px;background:#fafbfc}.contract-followup-metrics small{display:block;font-size:7.4px;letter-spacing:.05em;text-transform:uppercase;color:#7d8797;font-weight:800}.contract-followup-metrics strong{display:block;margin-top:4px;font-size:11px;color:#182234}
.contract-reminder-auto-note,.contract-reminder-sent-note{padding:10px 12px;border-radius:10px;font-size:8.9px;line-height:1.5}.contract-reminder-auto-note{background:#f7f5ff;border:1px solid #ddd6fe;color:#5b4a7a}.contract-reminder-sent-note{background:#ecfdf5;border:1px solid #bbf7d0;color:#047857;font-weight:700}
.contract-followup-actions{display:grid;gap:10px;align-content:start}.contract-signed-upload,.contract-close-form{display:grid;gap:8px;padding:12px;border:1px solid #e1e6ee;border-radius:11px;background:#fafbfc}.contract-signed-upload label{display:grid;gap:5px}.contract-signed-upload label>span{font-size:8px;color:#475569;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.contract-signed-upload input[type=file]{width:100%;font-size:8.7px;color:#64748b}.contract-close-form input{width:100%;height:36px;border:1px solid #d8dee8;border-radius:9px;background:#fff;padding:0 10px;font-size:9px;color:#253044;outline:none}.contract-close-form input:focus{border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.08)}
.contract-received-btn{background:linear-gradient(135deg,#047857,#059669)!important;box-shadow:0 7px 16px rgba(5,150,105,.16)!important}.contract-stop-btn{border-color:#fecaca!important;background:#fff7f7!important;color:#b42318!important}.contract-stop-btn:hover{border-color:#ef4444!important;background:#fef2f2!important}
.contract-sent-confirm.is-signed{background:#ecfdf5;border-color:#bbf7d0;color:#047857}.contract-sent-confirm.is-closed{background:#fff1f2;border-color:#fecdd3;color:#be123c}
.contract-signed-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid #cce9dc;border-left:4px solid #059669;border-radius:14px;background:linear-gradient(135deg,#fff,#f7fffb);box-shadow:0 8px 24px rgba(15,23,42,.035)}.contract-signed-copy{display:flex;align-items:center;gap:12px;min-width:0}.contract-signed-copy h3{margin:2px 0 3px;font-size:13px;color:#172033}.contract-signed-copy p{margin:0;font-size:9px;color:#667085;line-height:1.5}.contract-signed-icon{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;border-radius:11px;background:#059669;color:#fff}.contract-signed-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9}.contract-signed-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.contract-signed-actions form{margin:0}.contract-reception-confirmed{display:inline-flex;padding:8px 10px;border-radius:9px;background:#ecfdf5;border:1px solid #bbf7d0;color:#047857;font-size:8.8px;font-weight:800}
.contract-closed-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px;border:1px solid #fecdd3;border-left:4px solid #e11d48;border-radius:13px;background:#fff7f8}.contract-closed-card h3{margin:2px 0 3px;font-size:12.5px;color:#881337}.contract-closed-card p{margin:0;font-size:9px;color:#7f1d1d;line-height:1.5}.contract-closed-card>span{font-size:8.5px;color:#9f1239;white-space:nowrap}
@media(max-width:980px){.contract-followup-card{grid-template-columns:1fr}.contract-followup-actions{grid-template-columns:1fr 1fr}.contract-signed-card{align-items:flex-start;flex-direction:column}.contract-signed-actions{justify-content:flex-start}}
@media(max-width:680px){.contract-followup-metrics{grid-template-columns:1fr}.contract-followup-actions{grid-template-columns:1fr}.contract-closed-card{align-items:flex-start;flex-direction:column}}

/* ========================================================================== */
/* DuxApp v2.10.40 · Administración / Contabilidad · contratos firmados       */
/* ========================================================================== */
.accounting-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:14px;padding:20px 22px;border:1px solid #dfe5ee;border-left:4px solid #2563eb;border-radius:15px;background:linear-gradient(135deg,#fff 0%,#f7f9ff 100%);box-shadow:0 9px 28px rgba(15,23,42,.04)}.accounting-hero-copy{min-width:0}.accounting-hero h2{margin:4px 0 5px;font-size:20px;color:#111827;letter-spacing:-.02em}.accounting-hero p{margin:0;max-width:820px;color:#687386;font-size:9.5px;line-height:1.55}.accounting-hero-badge{display:flex;align-items:center;gap:8px;flex:0 0 auto;padding:9px 12px;border:1px solid #bbf7d0;border-radius:999px;background:#f0fdf4;color:#047857;font-size:8.8px;font-weight:800}.accounting-hero-badge i{width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.1)}
.accounting-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.accounting-kpi{display:flex;align-items:center;gap:12px;min-height:98px;padding:14px 15px;border-radius:13px;color:#fff;box-shadow:0 9px 22px rgba(15,23,42,.07);overflow:hidden;position:relative}.accounting-kpi:after{content:"";position:absolute;width:100px;height:100px;border-radius:50%;right:-34px;top:-42px;background:rgba(255,255,255,.09)}.accounting-kpi.navy{background:linear-gradient(135deg,#111827,#27364f)}.accounting-kpi.green{background:linear-gradient(135deg,#047857,#059669)}.accounting-kpi.blue{background:linear-gradient(135deg,#1d4ed8,#2563eb)}.accounting-kpi.amber{background:linear-gradient(135deg,#b45309,#d97706)}.accounting-kpi-icon{width:38px;height:38px;flex:0 0 38px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.14)}.accounting-kpi-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.accounting-kpi>div:last-child{min-width:0}.accounting-kpi small{display:block;font-size:7.2px;letter-spacing:.08em;font-weight:850;color:rgba(255,255,255,.72)}.accounting-kpi strong{display:block;margin:5px 0 3px;font-size:17px;line-height:1.08;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.accounting-kpi span{display:block;font-size:8.2px;color:rgba(255,255,255,.78)}
.accounting-board{border:1px solid #dfe4ec;border-radius:15px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.04);overflow:hidden}.accounting-board-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:16px 18px;border-bottom:1px solid #e8ecf2;background:#fbfcfe}.accounting-board-head>div:first-child{min-width:0}.accounting-board-head span{font-size:7.3px;color:#2563eb;font-weight:850;letter-spacing:.1em}.accounting-board-head h3{margin:3px 0 0;font-size:14px;color:#172033}.accounting-board-head p{margin:4px 0 0;font-size:8.7px;color:#7c8696;line-height:1.45}.accounting-board-count{flex:0 0 auto;padding:7px 10px;border-radius:9px;background:#eef4ff;color:#1d4ed8;font-size:8.5px;font-weight:800}.accounting-case-list{display:grid;gap:12px;padding:14px}.accounting-case-card{border:1px solid #e1e6ed;border-radius:13px;background:#fff;overflow:hidden;box-shadow:0 6px 18px rgba(15,23,42,.025)}.accounting-case-head{display:flex;align-items:center;gap:12px;padding:13px 14px;border-bottom:1px solid #edf0f4;background:#fcfcfd}.accounting-author-mark{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:10px;background:#172554;color:#fff;font-size:13px;font-weight:850}.accounting-case-title{min-width:0;flex:1}.accounting-case-title>span{display:block;font-size:7.2px;font-weight:850;letter-spacing:.06em;color:#7c3aed}.accounting-case-title h3{margin:2px 0 2px;font-size:12.5px;color:#182234}.accounting-case-title p{margin:0;font-size:8.4px;color:#7b8493;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.accounting-case-status{display:grid;justify-items:end;gap:4px}.accounting-case-status small{font-size:7.8px;color:#7f8897}.accounting-status{display:inline-flex;padding:6px 8px;border-radius:8px;font-size:8px;font-weight:800}.accounting-status.signed{background:#ecfdf5;color:#047857;border:1px solid #bbf7d0}
.accounting-case-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid #edf0f4}.accounting-case-summary>div{padding:10px 13px;border-right:1px solid #edf0f4}.accounting-case-summary>div:last-child{border-right:0}.accounting-case-summary small{display:block;font-size:6.9px;letter-spacing:.06em;font-weight:850;color:#8b94a3}.accounting-case-summary strong{display:block;margin-top:4px;font-size:10.5px;color:#253044}.accounting-installments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px 14px;background:#fafbfc}.accounting-installment{display:grid;grid-template-columns:30px minmax(0,1fr) minmax(90px,.7fr) auto;align-items:center;gap:9px;padding:9px 10px;border:1px solid #e3e7ee;border-radius:10px;background:#fff}.accounting-installment.primary{border-color:#bfd4ff;box-shadow:0 0 0 2px rgba(37,99,235,.035)}.accounting-installment-no{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#eef2ff;color:#4338ca;font-size:9px;font-weight:850}.accounting-installment small{display:block;font-size:6.8px;color:#8b94a3;font-weight:800;letter-spacing:.05em}.accounting-installment strong{display:block;margin-top:2px;font-size:9.4px;color:#263244}.accounting-payment-status{display:inline-flex;justify-content:center;padding:5px 7px;border-radius:7px;font-size:7.5px;font-weight:800;white-space:nowrap}.accounting-payment-status.amber{background:#fff7e6;color:#a85b00}.accounting-payment-status.blue{background:#eff6ff;color:#1d4ed8}.accounting-payment-status.green{background:#ecfdf5;color:#047857}.accounting-payment-status.red{background:#fff1f2;color:#be123c}.accounting-payment-status.gray{background:#f3f4f6;color:#667085}
.accounting-first-payment{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(420px,1.25fr);gap:18px;align-items:end;padding:14px;border-top:1px solid #e8ecf2;background:#fff}.accounting-payment-copy h4{margin:3px 0 4px;font-size:11.5px;color:#182234}.accounting-payment-copy p{margin:0;font-size:8.5px;color:#727d8d;line-height:1.5}.accounting-payment-copy>small{display:block;margin-top:5px;color:#2563eb;font-size:7.8px;font-weight:750}.accounting-payment-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.accounting-payment-form label{display:grid;gap:5px;min-width:0}.accounting-payment-form label>span{font-size:7.4px;font-weight:800;color:#566173;text-transform:uppercase;letter-spacing:.05em}.accounting-payment-form input{width:100%;height:38px;border:1px solid #d8dee8;border-radius:9px;padding:0 11px;font-size:9.2px;color:#253044;outline:none}.accounting-payment-form input:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.08)}.accounting-send-payment{height:38px!important;white-space:nowrap;background:linear-gradient(135deg,#1d4ed8,#2563eb)!important;box-shadow:0 7px 16px rgba(37,99,235,.16)!important}.accounting-send-payment svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.accounting-empty{display:grid;place-items:center;text-align:center;padding:48px 20px;color:#667085}.accounting-empty>span{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:#ecfdf5;color:#059669}.accounting-empty svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}.accounting-empty h3{margin:10px 0 3px;font-size:12px;color:#253044}.accounting-empty p{margin:0;font-size:8.6px}.accounting-next-stage{display:flex;align-items:center;gap:12px;margin-top:12px;padding:12px 14px;border:1px solid #ddd6fe;border-radius:12px;background:#faf8ff}.accounting-next-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:#7c3aed;color:#fff}.accounting-next-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}.accounting-next-stage strong{display:block;font-size:9.5px;color:#4c1d95}.accounting-next-stage p{margin:3px 0 0;font-size:8.3px;color:#6d5d83;line-height:1.45}
@media(max-width:1180px){.accounting-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.accounting-installments{grid-template-columns:1fr}.accounting-first-payment{grid-template-columns:1fr}.accounting-payment-form{grid-template-columns:1fr auto}}@media(max-width:760px){.accounting-hero{align-items:flex-start;flex-direction:column}.accounting-kpis{grid-template-columns:1fr}.accounting-case-head{align-items:flex-start;flex-wrap:wrap}.accounting-case-status{justify-items:start}.accounting-case-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.accounting-case-summary>div:nth-child(2){border-right:0}.accounting-case-summary>div:nth-child(n+3){border-top:1px solid #edf0f4}.accounting-payment-form{grid-template-columns:1fr}.accounting-installment{grid-template-columns:30px 1fr 1fr}.accounting-payment-status{grid-column:2/-1;justify-self:start}.accounting-board-head{align-items:flex-start;flex-direction:column}}

/* =========================================================
   DuxApp 2.10.41 · Contabilidad compacta / alto volumen
   ========================================================= */
.accounting-hero-compact{padding:16px 20px;margin-bottom:10px}.accounting-hero-compact h2{font-size:18px}.accounting-kpis-compact{margin-bottom:10px}.accounting-kpis-compact .accounting-kpi{min-height:82px;padding:11px 13px}.accounting-kpis-compact .accounting-kpi-icon{width:34px;height:34px;flex-basis:34px}.accounting-kpis-compact .accounting-kpi strong{font-size:16px}
.accounting-board-compact{overflow:visible}.accounting-board-head.compact{padding:13px 16px}.accounting-board-head.compact h3{font-size:13px}.accounting-board-head.compact p{font-size:8.2px}
.accounting-toolbar{display:grid;grid-template-columns:minmax(300px,1fr) 180px 140px auto auto;gap:8px;align-items:center;padding:11px 14px;border-bottom:1px solid #e8ecf2;background:#fff}.accounting-search-field{height:36px;display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid #dce2ea;border-radius:9px;background:#fff}.accounting-search-field svg{width:15px;height:15px;flex:0 0 15px;fill:none;stroke:#7d8796;stroke-width:1.8}.accounting-search-field input{min-width:0;width:100%;border:0;outline:0;background:transparent;font-size:9.2px;color:#253044}.accounting-toolbar select{height:36px;border:1px solid #dce2ea;border-radius:9px;background:#fff;padding:0 9px;font-size:8.8px;color:#344054;outline:none}.accounting-filter-btn{height:36px!important;padding:0 15px!important}.accounting-clear-filter{font-size:8.4px;font-weight:750;color:#6d28d9;text-decoration:none;white-space:nowrap}.accounting-list-meta{display:flex;justify-content:space-between;gap:12px;padding:8px 14px;font-size:7.8px;color:#8a94a3;background:#fafbfc;border-bottom:1px solid #eceff3}
.accounting-compact-table{background:#fff}.accounting-compact-head,.accounting-row-summary{display:grid;grid-template-columns:minmax(220px,1.6fr) minmax(115px,.75fr) minmax(110px,.7fr) minmax(125px,.8fr) minmax(100px,.68fr) minmax(120px,.8fr) 90px;align-items:center;column-gap:10px}.accounting-compact-head{min-height:34px;padding:0 14px;background:#111c32;color:#dce5f4;font-size:6.9px;font-weight:850;letter-spacing:.06em}.accounting-compact-row{border-bottom:1px solid #edf0f4;background:#fff}.accounting-compact-row:last-child{border-bottom:0}.accounting-compact-row[open]{background:#fbfcff}.accounting-row-summary{min-height:58px;padding:7px 14px;cursor:pointer;list-style:none;transition:background .15s ease}.accounting-row-summary::-webkit-details-marker{display:none}.accounting-row-summary:hover{background:#f8faff}.accounting-compact-row[open]>.accounting-row-summary{background:#f5f8ff;border-bottom:1px solid #e1e8f3}.accounting-row-author{display:flex;align-items:center;gap:9px;min-width:0}.accounting-row-avatar{width:31px;height:31px;flex:0 0 31px;display:grid;place-items:center;border-radius:8px;background:#172554;color:#fff;font-size:10px;font-weight:850}.accounting-row-author>span:last-child{min-width:0}.accounting-row-author strong,.accounting-row-contract strong,.accounting-row-current strong,.accounting-row-due strong,.accounting-row-commercial strong{display:block;font-size:9.3px;color:#263244}.accounting-row-author small,.accounting-row-contract small,.accounting-row-current small{display:block;margin-top:2px;font-size:7.4px;color:#8a94a3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.accounting-row-contract small{color:#7c3aed;font-weight:700}.accounting-row-commercial{min-width:0}.accounting-row-commercial strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.accounting-row-due{display:flex;align-items:center;gap:7px;min-width:0}.accounting-row-due strong{white-space:nowrap}.due-chip{display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:4px 6px;border-radius:999px;font-size:6.8px;font-weight:800;white-space:nowrap}.due-chip.neutral{background:#f2f4f7;color:#667085}.due-chip.soon{background:#eff6ff;color:#1d4ed8}.due-chip.warning{background:#fff7e6;color:#a85b00}.due-chip.danger{background:#fff1f2;color:#be123c}.accounting-row-action{display:flex;align-items:center;justify-content:flex-end;gap:5px;color:#2563eb;font-size:8.1px;font-weight:800}.accounting-row-caret{display:inline-block;font-size:13px;line-height:1;font-weight:700;transition:transform .15s ease}.accounting-compact-row[open] .accounting-row-caret{transform:rotate(180deg)}
.accounting-row-detail{padding:11px 14px 13px;background:#fbfcff}.accounting-detail-installments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:9px}.accounting-mini-installment{display:grid;grid-template-columns:27px minmax(0,1fr) minmax(82px,.72fr) auto;align-items:center;gap:8px;min-height:48px;padding:7px 9px;border:1px solid #e2e7ee;border-radius:9px;background:#fff}.accounting-mini-installment.primary{border-color:#bfdbfe;box-shadow:0 0 0 2px rgba(37,99,235,.025)}.accounting-mini-no{width:26px;height:26px;display:grid;place-items:center;border-radius:7px;background:#eef2ff;color:#4338ca;font-size:8px;font-weight:850}.accounting-mini-installment small{display:block;font-size:6.5px;color:#8a94a3;font-weight:800;letter-spacing:.04em}.accounting-mini-installment strong{display:block;margin-top:2px;font-size:8.8px;color:#283548}.accounting-detail-payment{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(460px,1.3fr);gap:16px;align-items:end;padding:10px 11px;border:1px solid #e3e8ef;border-radius:10px;background:#fff}.compact-copy h4{font-size:10.5px}.compact-copy p{font-size:8px}.compact-form{grid-template-columns:minmax(0,1fr) auto}.compact-form input{height:35px}.compact-form .accounting-send-payment{height:35px!important;padding:0 14px!important;font-size:8.5px!important}.compact-empty{padding:34px 20px}
.accounting-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 14px;border-top:1px solid #e8ecf2;background:#fbfcfe;font-size:8.4px;color:#667085}.accounting-pagination a{color:#1d4ed8;text-decoration:none;font-weight:800}.accounting-pagination .disabled{color:#c0c6d0}.accounting-pagination strong{color:#172033}
@media(max-width:1300px){.accounting-compact-head,.accounting-row-summary{grid-template-columns:minmax(200px,1.5fr) 105px 105px 120px 95px 105px 78px}.accounting-toolbar{grid-template-columns:minmax(240px,1fr) 160px 130px auto}.accounting-clear-filter{display:none}}
@media(max-width:1080px){.accounting-compact-head{display:none}.accounting-row-summary{grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(105px,.7fr)) 85px}.accounting-row-summary>div:nth-child(5),.accounting-row-summary>div:nth-child(6){display:none}.accounting-row-action{display:flex!important}.accounting-detail-installments{grid-template-columns:1fr}.accounting-detail-payment{grid-template-columns:1fr}.accounting-toolbar{grid-template-columns:1fr 1fr 130px auto}}
@media(max-width:760px){.accounting-toolbar{grid-template-columns:1fr}.accounting-row-summary{grid-template-columns:1fr auto;row-gap:7px}.accounting-row-summary>div{display:none!important}.accounting-row-summary>.accounting-row-author,.accounting-row-summary>.accounting-row-action{display:flex!important}.accounting-row-action{align-self:center}.accounting-detail-payment{padding:9px}.compact-form{grid-template-columns:1fr}.accounting-pagination{flex-wrap:wrap}.accounting-pagination>span:nth-child(2){order:-1;width:100%;text-align:center}}

/* =========================================================
   DuxApp 2.10.42 · Cargo de procesamiento por transacción
   ========================================================= */
.accounting-mini-installment em{display:block;margin-top:2px;font-style:normal;font-size:6.5px;line-height:1.35;color:#2563eb;font-weight:700}.accounting-row-current small{max-width:150px}.compact-copy p+p{margin-top:3px}

/* DuxApp v2.10.43 · dLocal Go */
.accounting-dlocal-ready{display:flex;flex-direction:column;gap:4px;min-width:260px;padding:10px 12px;border:1px solid #bbf7d0;background:#f0fdf4;border-radius:12px}.accounting-dlocal-ready strong{font-size:12px;color:#047857}.accounting-dlocal-ready span{font-size:11px;color:#64748b}.dlocal-ready-form{align-items:center}.dlocal-missing{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px dashed #f59e0b;background:#fffbeb;border-radius:12px;padding:12px 14px}.dlocal-missing>div{display:flex;flex-direction:column;gap:3px}.dlocal-missing strong{font-size:12px;color:#92400e}.dlocal-missing span{font-size:11px;color:#78716c}.dlocal-missing button[disabled]{opacity:.5;cursor:not-allowed}

/* v2.10.46 · Contabilidad: rutas de cobro por país + cuotas automáticas */
.accounting-payment-settings{margin:0 0 10px;border:1px solid #dfe5ee;border-radius:13px;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.035);overflow:hidden}.accounting-payment-settings>summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:48px;padding:9px 14px;cursor:pointer;background:#fbfcfe}.accounting-payment-settings>summary::-webkit-details-marker{display:none}.accounting-payment-settings>summary>span{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#eef2ff;color:#4338ca;flex:0 0 30px}.accounting-payment-settings>summary svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}.accounting-payment-settings>summary>div{min-width:0;flex:1}.accounting-payment-settings>summary strong{display:block;font-size:9.7px;color:#263244}.accounting-payment-settings>summary small{display:block;margin-top:2px;font-size:7.6px;color:#7c8797}.accounting-payment-settings>summary>b{font-size:8px;color:#2563eb;font-weight:800}.accounting-payment-settings[open]>summary{border-bottom:1px solid #e8ecf2;background:#f8faff}
.accounting-payment-settings-form{padding:12px 14px 14px}.accounting-payment-settings-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.accounting-bank-card{border:1px solid #e3e7ee;border-radius:10px;background:#fcfcfd;padding:10px}.accounting-bank-card.ready{border-color:#bbf7d0;background:#fbfffd}.accounting-bank-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.accounting-bank-card-head strong{display:block;font-size:9px;color:#263244}.accounting-bank-card-head small{display:block;margin-top:2px;font-size:7.2px;color:#8a94a3}.accounting-bank-card-head>span{width:21px;height:21px;display:grid;place-items:center;border-radius:999px;background:#fff7e6;color:#a85b00;font-size:8px;font-weight:900}.accounting-bank-card.ready .accounting-bank-card-head>span{background:#ecfdf5;color:#047857}.accounting-bank-fields{display:grid;grid-template-columns:1fr 1fr;gap:7px}.accounting-bank-fields label{display:grid;gap:4px}.accounting-bank-fields label.wide{grid-column:1/-1}.accounting-bank-fields span{font-size:6.7px;color:#667085;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.accounting-bank-fields input,.accounting-bank-fields textarea{width:100%;border:1px solid #dce2ea;border-radius:8px;background:#fff;padding:8px 9px;font-size:8.2px;color:#253044;outline:none}.accounting-bank-fields input{height:32px}.accounting-bank-fields textarea{resize:vertical;min-height:62px;line-height:1.45}.accounting-bank-fields input:focus,.accounting-bank-fields textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.06)}.accounting-settings-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:2px}.accounting-settings-actions p{margin:0;font-size:7.8px;color:#667085}.accounting-settings-actions .primary-btn{height:34px!important;padding:0 14px!important;font-size:8.3px!important;white-space:nowrap}
.accounting-local-ready{display:flex;flex-direction:column;gap:4px;min-width:260px;padding:10px 12px;border:1px solid #bbf7d0;background:#f0fdf4;border-radius:12px}.accounting-local-ready strong{font-size:12px;color:#047857}.accounting-local-ready span{font-size:11px;color:#64748b}.local-ready-form{align-items:center}.local-missing{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px dashed #f59e0b;background:#fffbeb;border-radius:12px;padding:12px 14px}.local-missing>div{display:flex;flex-direction:column;gap:3px}.local-missing strong{font-size:11px;color:#92400e}.local-missing span{font-size:8px;color:#78716c}.local-missing .secondary-btn{height:34px!important;display:inline-flex;align-items:center;padding:0 12px!important;text-decoration:none;font-size:8px!important;white-space:nowrap}
.accounting-manual-payment-box{margin-top:9px;border:1px solid #e3e8ef;border-radius:10px;background:#fff;overflow:hidden}.accounting-manual-payment-box>summary{list-style:none}.accounting-manual-payment-box>summary::marker{display:none;content:""}.accounting-manual-payment-box>summary::-webkit-details-marker{display:none}.accounting-manual-trigger{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;min-height:46px!important;padding:8px 10px 8px 12px!important;cursor:pointer!important;background:#fbfcfe!important}.accounting-manual-trigger-copy{min-width:0;flex:1}.accounting-manual-trigger-copy strong{display:block;font-size:8.8px;color:#263244}.accounting-manual-trigger-copy small{display:block;margin-top:2px;font-size:7.2px;color:#7f8998}.accounting-manual-trigger-action{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;height:30px!important;min-width:92px!important;padding:0 11px!important;border-radius:8px!important;background:#047857!important;color:#fff!important;font-size:7.8px!important;font-weight:800!important;line-height:1!important;white-space:nowrap!important;flex:0 0 auto!important}.accounting-manual-payment-box[open]>.accounting-manual-trigger{border-bottom:1px solid #e8ecf2;background:#f7fffb!important}.accounting-manual-payment-box[open]>.accounting-manual-trigger .accounting-manual-trigger-action{background:#334155!important}.accounting-manual-payment-box[open]>.accounting-manual-trigger .accounting-manual-trigger-action:after{content:" · abierto"}.accounting-manual-payment-form{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;align-items:end;padding:10px 11px}.accounting-manual-payment-form label{display:grid;gap:4px}.accounting-manual-payment-form label.wide{grid-column:span 2}.accounting-manual-payment-form label>span{font-size:6.6px;color:#667085;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.accounting-manual-payment-form input{width:100%;height:32px;border:1px solid #dce2ea;border-radius:8px;padding:0 8px;font-size:8px;color:#253044;outline:none}.accounting-manual-payment-form input[type=file]{padding:6px 7px;height:32px}.accounting-manual-payment-form .primary-btn{height:32px!important;padding:0 11px!important;font-size:7.8px!important;white-space:nowrap}.accounting-proof-link{display:inline-block;margin:0 11px 10px;font-size:7.8px;font-weight:800;color:#2563eb;text-decoration:none}
.accounting-row-current small{max-width:170px}.accounting-mini-installment em{color:#64748b}.accounting-mini-installment.primary em{color:#2563eb}
@media(max-width:1180px){.accounting-payment-settings-form{grid-template-columns:1fr}.accounting-bank-card{padding:11px}.accounting-manual-payment-form{grid-template-columns:repeat(3,minmax(0,1fr))}.accounting-manual-payment-form label.wide{grid-column:span 2}}
@media(max-width:760px){.accounting-bank-fields{grid-template-columns:1fr}.accounting-bank-fields label.wide{grid-column:auto}.accounting-settings-actions{align-items:flex-start;flex-direction:column}.accounting-manual-payment-form{grid-template-columns:1fr 1fr}.accounting-manual-payment-form label.wide{grid-column:1/-1}.accounting-manual-payment-form .primary-btn{grid-column:1/-1}.accounting-payment-settings>summary small{display:none}}

/* v2.10.47 · Rutas de cobro institucionales: compactas y sin panel de configuración */
.accounting-route-strip{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 10px;padding:7px 9px;border:1px solid #e2e8f0;border-radius:11px;background:#fff;box-shadow:0 6px 18px rgba(15,23,42,.025)}
.accounting-route-strip span{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border:1px solid #e8edf4;border-radius:999px;background:#f8fafc;font-size:7.6px;line-height:1;color:#667085;white-space:nowrap}
.accounting-route-strip strong{font-size:7.8px;color:#263244}
@media(max-width:760px){.accounting-route-strip{gap:5px}.accounting-route-strip span{font-size:7.2px}.accounting-route-strip strong{font-size:7.4px}}

@media(max-width:760px){.accounting-manual-trigger{align-items:flex-start!important}.accounting-manual-trigger-action{min-width:82px!important}.accounting-manual-trigger-copy small{line-height:1.35}}

/* =========================================================
   DuxApp 2.10.49 · Refinamiento visual cobro local + pago manual
   ========================================================= */
.local-ready-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
.accounting-local-ready{display:flex;align-items:center;gap:12px;min-width:0;min-height:56px;padding:12px 14px;border:1px solid #d9efe3;border-radius:12px;background:linear-gradient(135deg,#f7fffb 0%,#f8fbff 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}
.accounting-local-ready-badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;height:26px;padding:0 10px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:7.4px;font-weight:850;letter-spacing:.04em;text-transform:uppercase;border:1px solid #bbf7d0}
.accounting-local-ready-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.accounting-local-ready-copy strong{display:block;font-size:10.3px;color:#14532d;line-height:1.2}
.accounting-local-ready-copy span{display:block;font-size:8px;color:#64748b;line-height:1.45}
.local-ready-form .accounting-send-payment{height:38px!important;padding:0 16px!important;font-size:8.4px!important;white-space:nowrap}

.accounting-manual-payment-box{margin-top:10px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 8px 20px rgba(15,23,42,.035)}
.accounting-manual-payment-box>summary{list-style:none}
.accounting-manual-payment-box>summary::marker,.accounting-manual-payment-box>summary::-webkit-details-marker{display:none;content:""}
.accounting-manual-trigger{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;min-height:52px!important;padding:10px 13px!important;cursor:pointer!important;background:#fbfcfe!important}
.accounting-manual-trigger-copy{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.accounting-manual-trigger-copy strong{display:block;font-size:9.5px;color:#172033;line-height:1.2}
.accounting-manual-trigger-copy small{display:block;font-size:7.8px;color:#7b8797;line-height:1.45}
.accounting-manual-trigger-action{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;height:32px!important;padding:0 12px!important;border-radius:9px!important;background:#eef2ff!important;border:1px solid #dbe4ff!important;color:#4338ca!important;font-size:7.8px!important;font-weight:850!important;white-space:nowrap!important}
.accounting-manual-payment-box[open]>.accounting-manual-trigger{border-bottom:1px solid #e8edf3;background:#f8fbff!important}
.accounting-manual-payment-box[open]>.accounting-manual-trigger .accounting-manual-trigger-action{background:#4338ca!important;border-color:#4338ca!important;color:#fff!important}
.accounting-manual-payment-box[open]>.accounting-manual-trigger .accounting-manual-trigger-action:after{content:" · abierto"}
.accounting-manual-shell{display:grid;gap:12px;padding:12px 13px 13px;background:linear-gradient(180deg,#fbfcff 0%,#ffffff 100%)}
.accounting-manual-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #e7ecf3;border-radius:10px;background:#f8fafc}
.accounting-manual-header-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.accounting-manual-header-copy strong{display:block;font-size:9.4px;color:#172033}
.accounting-manual-header-copy span{display:block;font-size:7.8px;color:#7b8797;line-height:1.45}
.accounting-manual-header-badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:28px;padding:0 11px;border-radius:999px;background:#eef2ff;border:1px solid #dbe4ff;color:#4338ca;font-size:7.6px;font-weight:850;white-space:nowrap}
.accounting-manual-payment-form{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;align-items:end}
.accounting-manual-payment-form label{display:grid;gap:5px;min-width:0}
.accounting-manual-payment-form label>span{font-size:6.8px;color:#667085;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.accounting-manual-payment-form input{width:100%;height:38px;border:1px solid #d7e0ea;border-radius:10px;background:#fff;padding:0 10px;font-size:8.4px;color:#253044;outline:none;box-shadow:0 1px 2px rgba(15,23,42,.02)}
.accounting-manual-payment-form input:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.08)}
.accounting-manual-payment-form input[type=file]{height:38px;padding:8px 10px;font-size:8px}
.accounting-field-span-2{grid-column:span 2}
.accounting-field-span-4{grid-column:span 4}
.accounting-manual-submit{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:2px}
.accounting-proof-link{display:inline-flex;align-items:center;gap:6px;height:36px;margin:0;padding:0 12px;border:1px solid #dbeafe;border-radius:9px;background:#f8fbff;color:#2563eb;font-size:7.8px;font-weight:850;text-decoration:none;white-space:nowrap}
.accounting-manual-submit .primary-btn{height:38px!important;padding:0 16px!important;font-size:8.4px!important;white-space:nowrap}

@media(max-width:1180px){
  .accounting-manual-payment-form{grid-template-columns:repeat(4,minmax(0,1fr))}
  .accounting-field-span-4{grid-column:span 4}
}
@media(max-width:760px){
  .local-ready-form{grid-template-columns:1fr}
  .accounting-local-ready{align-items:flex-start;flex-direction:column}
  .accounting-manual-trigger{align-items:flex-start!important;flex-direction:column!important}
  .accounting-manual-trigger-action{min-width:0!important}
  .accounting-manual-header{align-items:flex-start;flex-direction:column}
  .accounting-manual-payment-form{grid-template-columns:1fr 1fr}
  .accounting-field-span-2,.accounting-field-span-4{grid-column:1/-1}
  .accounting-manual-submit{align-items:stretch;flex-direction:column}
  .accounting-manual-submit .primary-btn,.accounting-proof-link{width:100%;justify-content:center}
}

/* =========================================================
   DuxApp 2.10.50 · Modal de éxito + cache visual contabilidad
   ========================================================= */
.accounting-success-modal{z-index:300;background:rgba(15,23,42,.46);backdrop-filter:blur(3px)}
.accounting-success-card{position:relative;width:min(390px,calc(100vw - 32px));padding:24px 24px 22px!important;border:1px solid #e3e8ef;border-radius:16px!important;text-align:center;box-shadow:0 28px 80px rgba(15,23,42,.22)!important;overflow:visible!important}
.accounting-success-close{position:absolute;right:14px;top:14px}
.accounting-success-icon{width:52px;height:52px;display:grid;place-items:center;margin:2px auto 12px;border-radius:50%;background:#ecfdf5;color:#059669;font-size:24px;font-weight:900;box-shadow:0 0 0 8px #f4fbf7}
.accounting-success-kicker{display:block;margin-bottom:6px;font-size:7.2px;letter-spacing:.12em;font-weight:900;color:#7c3aed}
.accounting-success-card h3{margin:0!important;font-size:17px!important;color:#172033}
.accounting-success-card p{margin:8px auto 17px;max-width:310px;font-size:9px;line-height:1.55;color:#667085}
.accounting-success-ok{min-width:112px;height:36px!important;padding:0 18px!important;font-size:8.5px!important}

/* Fuerza el estilo de los bloques nuevos aun si había CSS antiguo en caché */
.accounting-route-strip{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important;margin:0 0 10px!important;padding:7px 9px!important;border:1px solid #e2e8f0!important;border-radius:11px!important;background:#fff!important;box-shadow:0 6px 18px rgba(15,23,42,.025)!important}
.accounting-route-strip>span{display:inline-flex!important;align-items:center!important;gap:4px!important;padding:5px 8px!important;border:1px solid #e8edf4!important;border-radius:999px!important;background:#f8fafc!important;font-size:7.6px!important;line-height:1!important;color:#667085!important;white-space:nowrap!important}
.accounting-route-strip>span>strong{font-size:7.8px!important;color:#263244!important}
.accounting-local-ready-icon{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:9px;background:#ecfdf5;border:1px solid #bbf7d0;color:#059669;font-size:11px;font-weight:900}
.accounting-manual-payment-box>.accounting-manual-trigger{display:flex!important}
.accounting-manual-payment-box>.accounting-manual-shell{display:block}
.accounting-manual-payment-box:not([open])>.accounting-manual-shell{display:none}

/* ===== DuxApp 2.10.51 · Comercial: chat dentro del viewport ===== */
/* Ajuste aislado: la conversación hace scroll internamente y el compositor permanece visible. */
@media (min-width:1101px){
  body[data-area="commercial"] .messages-layout-v2120{
    height:calc(100dvh - 166px)!important;
    min-height:500px!important;
    max-height:calc(100dvh - 166px)!important;
    align-items:stretch!important;
  }
  body[data-area="commercial"] .messages-sidebar-v2120,
  body[data-area="commercial"] .messages-card-v2120{
    height:100%!important;
    min-height:0!important;
  }
  body[data-area="commercial"] .messages-card-v2120{
    overflow:hidden!important;
  }
  body[data-area="commercial"] .messages-window-v2120{
    flex:1 1 auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:16px 18px 18px;
  }
  body[data-area="commercial"] .message-compose{
    flex:0 0 auto!important;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
    align-items:center;
    padding:9px 11px 8px;
  }
  body[data-area="commercial"] .message-compose textarea{
    min-height:40px;
    max-height:88px;
    height:40px;
    padding:9px 11px;
    resize:none;
  }
  body[data-area="commercial"] .message-compose .primary-btn{
    height:40px;
  }
}
@media (max-width:1100px){
  body[data-area="commercial"] .messages-layout-v2120{height:auto;min-height:0;max-height:none}
  body[data-area="commercial"] .messages-sidebar-v2120,
  body[data-area="commercial"] .messages-card-v2120{height:auto}
  body[data-area="commercial"] .messages-window-v2120{height:clamp(360px,calc(100dvh - 330px),560px);min-height:360px;max-height:560px;overflow-y:auto}
}


/* ========================================================================== */
/* DUXSUITE · ESTABILIZACIÓN PRE-FASE 6                                      */
/* Portal Editor compacto + Portal Autor por secciones                       */
/* ========================================================================== */
.editor-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.editor-work-count{flex:0 0 auto;padding:8px 12px;border:1px solid #e4def4;border-radius:999px;background:#faf7ff;color:#6d28d9;font-size:10px;font-weight:700}
.editor-assignment-list{display:grid;gap:10px}
.editor-work-item{border:1px solid #e2e5eb;border-radius:13px;background:#fff;box-shadow:0 7px 18px rgba(15,23,42,.035);overflow:hidden}
.editor-work-item[open]{border-color:#d9c9f7;box-shadow:0 9px 24px rgba(76,29,149,.07)}
.editor-work-summary{list-style:none;display:grid;grid-template-columns:minmax(280px,1.7fr) minmax(120px,.65fr) minmax(100px,.5fr) auto 20px;align-items:center;gap:14px;padding:13px 15px;cursor:pointer;user-select:none;background:#fff}
.editor-work-summary::-webkit-details-marker{display:none}
.editor-work-summary:hover{background:#fbfbfd}
.editor-summary-main{display:flex;align-items:center;gap:10px;min-width:0}
.editor-summary-icon{width:34px;height:34px;flex:0 0 34px;border-radius:9px;display:grid;place-items:center;background:#efe8ff;color:#6d28d9}
.editor-summary-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.editor-summary-main>div{min-width:0}.editor-summary-main strong{display:block;font-size:11.5px;color:#1d2534;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-summary-main small{display:block;margin-top:2px;font-size:8.7px;color:#8992a0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.editor-summary-meta{display:grid;gap:1px}.editor-summary-meta small{font-size:6.8px;font-weight:800;letter-spacing:.07em;color:#9aa2af;text-transform:uppercase}.editor-summary-meta strong{font-size:9.8px;color:#263244}.editor-summary-meta span{font-size:7.8px;color:#8b94a1}
.editor-summary-chevron{font-size:17px;color:#8f97a4;transition:transform .18s ease}.editor-work-item[open] .editor-summary-chevron{transform:rotate(180deg)}
.editor-work-body{border-top:1px solid #edf0f4;padding:15px;background:#fcfcfd}
.editor-file-box{border:1px solid #eceef2;border-radius:10px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff}.editor-file-box strong{display:block;font-size:12px}.editor-file-box small{display:block;margin-top:3px;color:#8a94a3}

.author-content-v2{max-width:1500px;width:100%;margin:0 auto}
.author-topbar{background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}
.author-nav-list .nav-item{position:relative}.author-nav-alert{margin-left:auto;min-width:17px;height:17px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:#ef4444;color:#fff;font-size:8px;font-weight:800}
.author-context-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;padding:11px 14px;border:1px solid #e3e6ec;border-radius:12px;background:#fff;box-shadow:0 5px 16px rgba(15,23,42,.025)}
.author-context-bar>div:first-child{min-width:0;display:grid;gap:2px}.author-context-bar>div:first-child>span{font-size:7px;font-weight:800;letter-spacing:.11em;color:#7c3aed}.author-context-bar>div:first-child>strong{font-size:12px;color:#202838}.author-context-bar>div:first-child>small{font-size:8.5px;color:#9199a5}
.author-project-switcher{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.author-project-switcher a{padding:6px 9px;border:1px solid #e4e7ec;border-radius:8px;background:#fafbfc;color:#687386;font-size:8px;text-decoration:none}.author-project-switcher a.current{border-color:#d8c3fa;background:#f8f3ff;color:#6d28d9;font-weight:700}
.author-hero-premium{position:relative;overflow:hidden;padding:22px;border-radius:16px;background:linear-gradient(135deg,#11182a 0%,#221642 58%,#4c1d95 100%);color:#fff;align-items:center;box-shadow:0 14px 32px rgba(31,22,59,.12)}
.author-hero-premium:after{content:"";position:absolute;right:-70px;top:-100px;width:230px;height:230px;border-radius:50%;background:rgba(255,255,255,.07)}
.author-hero-premium h2{color:#fff;font-size:24px;margin-top:3px}.author-hero-premium p{color:#cec8dc;max-width:720px}.author-kicker{font-size:7px;letter-spacing:.13em;font-weight:800;color:#c7a9ff}.author-hero-premium .welcome-date{position:relative;z-index:1;border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:#fff}
.author-book-premium{margin-top:10px;border:1px solid rgba(255,255,255,.03);background:linear-gradient(135deg,#151b2c,#212b43)}
.author-progress-line{height:6px;border-radius:999px;background:#eceff4;overflow:hidden}.author-book-copy .author-progress-line{max-width:520px;margin-top:12px;background:rgba(255,255,255,.11)}.author-progress-line span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7c3aed,#9f67ef,#10b981)}
.author-review-callout{display:flex;align-items:center;gap:12px;margin:10px 0;padding:13px 15px;border:1px solid #ccebd9;border-radius:12px;background:linear-gradient(135deg,#f3fff8,#effcf5);text-decoration:none;color:#1f2937}.author-review-callout>span{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#0f9f6e;color:#fff}.author-review-callout>span svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}.author-review-callout>div{min-width:0;flex:1}.author-review-callout strong{display:block;font-size:10.5px}.author-review-callout small{display:block;margin-top:2px;font-size:8.8px;color:#6f7a76}.author-review-callout b{font-size:9px;color:#087a56;white-space:nowrap}
.author-menu-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:10px}.author-menu-grid a{min-height:112px;padding:14px;border:1px solid #e4e7ec;border-radius:12px;background:#fff;text-decoration:none;color:#252c39;box-shadow:0 5px 16px rgba(15,23,42,.025);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.author-menu-grid a:hover{transform:translateY(-2px);border-color:#d7c3fa;box-shadow:0 10px 22px rgba(76,29,149,.07)}.author-menu-grid a>span{width:33px;height:33px;border-radius:9px;display:grid;place-items:center;background:#f2ebff;color:#6d28d9}.author-menu-grid a>span svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}.author-menu-grid strong{display:block;margin-top:10px;font-size:10.5px}.author-menu-grid small{display:block;margin-top:4px;font-size:8.4px;line-height:1.45;color:#89919d}
.author-section-head{margin-bottom:12px;padding:18px 20px;border-radius:14px;background:linear-gradient(135deg,#fff,#faf8ff);border:1px solid #e5dff0}.author-section-head>span{font-size:7px;letter-spacing:.12em;font-weight:800;color:#7c3aed}.author-section-head h2{margin:4px 0 4px;font-size:20px;color:#202634}.author-section-head p{margin:0;font-size:9.5px;color:#7d8592}
.author-stage-board{padding:4px 16px 10px}.author-stage-progress{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:18px;padding:13px 0 11px;border-bottom:1px solid #eef0f3}.author-stage-progress>div:first-child strong{display:block;font-size:21px;color:#2a3140}.author-stage-progress>div:first-child span{font-size:8px;color:#9098a5}.author-stage-row{padding:12px 0}.author-stage-state{display:inline-flex;padding:5px 8px;border-radius:8px;background:#f2f3f5;color:#777f8b;font-size:7.5px;font-weight:750}.author-stage-state.active{background:#f1eaff;color:#6d28d9}.author-stage-state.done{background:#ecfdf5;color:#047857}
.author-review-card{border-color:#dcd0f5;box-shadow:0 10px 26px rgba(76,29,149,.05)}.author-download-btn{display:inline-flex;align-items:center;padding:7px 10px;border-radius:8px;background:#6d28d9;color:#fff!important;text-decoration:none;white-space:nowrap}.author-producer-note{margin-top:12px;background:#f7f8fa;border:1px solid #eceef2;border-radius:10px;padding:12px;font-size:10px;color:#5f6775;line-height:1.65}.author-producer-note strong{display:block;color:#202532;margin-bottom:4px}
.author-document-row{padding:15px 4px}.author-payment-kpis{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}.author-coming-card{display:flex;align-items:flex-start;gap:15px;min-height:150px;padding:20px}.author-coming-card>span{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#f2ebff;color:#6d28d9}.author-coming-card>span svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.author-coming-card h3{margin:1px 0 5px;font-size:13px}.author-coming-card p,.author-empty-state p{margin:0;font-size:9.5px;line-height:1.65;color:#727b88}.author-empty-state{padding:24px}

@media(max-width:1100px){.editor-work-summary{grid-template-columns:minmax(230px,1.5fr) minmax(105px,.65fr) auto 20px}.editor-summary-meta:nth-of-type(3){display:none}.author-menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.editor-work-summary{grid-template-columns:minmax(0,1fr) auto 18px}.editor-summary-meta{display:none}.editor-work-summary>.status-pill{font-size:7px}.editor-work-body{padding:10px}.author-context-bar{align-items:flex-start;flex-direction:column}.author-project-switcher{justify-content:flex-start}.author-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.author-stage-progress{grid-template-columns:1fr}.author-payment-kpis{grid-template-columns:1fr}.author-review-callout{align-items:flex-start;flex-wrap:wrap}.author-review-callout b{width:100%;padding-left:48px}}

/* DuxSuite · producción unificada y portal del autor */
.production-kpis{margin-bottom:12px}.production-search-card{padding:10px 12px;margin-bottom:12px}.production-search-form{display:flex;align-items:center;gap:8px}.production-search-form input{flex:1;min-width:0;border:1px solid #dfe3ea;border-radius:10px;padding:10px 12px;font:inherit;background:#fff}.production-project-list{display:grid;gap:9px}.production-project{scroll-margin-top:90px}.production-summary{list-style:none;display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(108px,.55fr) minmax(108px,.55fr) minmax(108px,.55fr) minmax(130px,.65fr) 20px;align-items:center;gap:12px;padding:13px 15px;cursor:pointer;background:#fff}.production-summary::-webkit-details-marker{display:none}.production-summary:hover{background:#fbfbfd}.production-stage-chip small,.production-current small{display:block;font-size:7.5px;text-transform:uppercase;letter-spacing:.045em;color:#9aa1ad;margin-bottom:4px}.production-current strong{display:block;font-size:10px;color:#28303d}.production-current span{display:block;font-size:8px;color:#7b8491;margin-top:2px}.production-body{padding:13px}.production-stage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.production-stage-card{border:1px solid #e7e9ef;border-radius:12px;background:#fff;padding:13px}.production-stage-card-wide{grid-column:1/-1}.production-stage-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:11px}.production-stage-head>div{display:flex;align-items:center;gap:8px}.production-stage-head>div>span{width:27px;height:27px;border-radius:8px;background:#f2ebff;color:#6d28d9;display:grid;place-items:center;font-size:8px;font-weight:800}.production-stage-head h3{margin:0;font-size:12px}.production-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 11px}.production-facts>div{padding:9px 10px;border-radius:9px;background:#f8f9fb}.production-facts small{display:block;font-size:7.5px;color:#939ba7;text-transform:uppercase;margin-bottom:3px}.production-facts strong{display:block;font-size:9px;color:#303744;overflow-wrap:anywhere}.production-action-split{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}.production-action-split form,.production-comment-form{border-top:1px solid #edf0f4;padding-top:10px}.production-stage-card label{display:block;font-size:8.5px;font-weight:700;color:#48515f;margin-bottom:8px}.production-stage-card textarea,.production-stage-card input[type=file]{width:100%;margin-top:5px}.production-next-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.production-next-stages>div{display:flex;align-items:center;justify-content:space-between;gap:7px;border:1px solid #edf0f4;border-radius:9px;padding:8px 9px}.production-next-stages>div>span{font-size:8.5px;font-weight:650;color:#434b58}.production-muted{margin:0;color:#7d8591;font-size:10px;line-height:1.65}
/* Producción unificada: KPI compactos sin heredar la columna de icono de .stat-card. */
.production-kpis .stat-card{display:block;grid-template-columns:none;min-height:88px;padding:14px 16px;overflow:hidden}
.production-kpis .stat-card>div{display:grid;grid-template-columns:minmax(0,1fr);gap:3px;min-width:0}
.production-kpis .stat-card span,.production-kpis .stat-card strong,.production-kpis .stat-card small{min-width:0;overflow-wrap:anywhere}
.production-kpis .stat-card strong{line-height:1.08}
.production-summary>*{min-width:0}
.production-stage-chip .status-pill{max-width:100%;white-space:normal;line-height:1.25;text-align:center}
.production-current{min-width:0}
.production-dossier-note{grid-column:1/-1;margin:2px 0 0;color:#7d8591;font-size:9px;line-height:1.5}
@media(max-width:1100px){.production-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.production-kpis{grid-template-columns:1fr}}
.author-process-list{display:grid;gap:7px;padding:10px 0}.author-process-item{border-bottom:1px solid #edf0f3}.author-process-item:last-child{border-bottom:0}.author-process-item>summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:10px;padding:11px 2px;cursor:pointer}.author-process-item>summary::-webkit-details-marker{display:none}.author-process-main{display:flex;align-items:center;gap:10px;min-width:0}.author-process-icon{width:34px;height:34px;border-radius:10px;background:#f3edff;color:#6d28d9;display:grid;place-items:center;flex:0 0 auto}.author-process-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}.author-process-main strong{display:block;font-size:10.5px;color:#252b36}.author-process-main small{display:block;font-size:8px;color:#8b94a2;margin-top:2px}.author-process-chevron{color:#9aa1ad;transition:transform .18s ease}.author-process-item[open] .author-process-chevron{transform:rotate(180deg)}.author-process-body{padding:4px 2px 14px 44px}.author-inline-review-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}.author-inline-review-head h3{margin:0;font-size:11.5px}.author-inline-review-head span{font-size:8px;color:#7c8694}.author-inline-actions{align-items:start;margin-top:12px}.author-inline-actions>.dashboard-card{margin:0;box-shadow:none;padding:12px}.author-inline-actions label{display:block;font-size:8.5px;font-weight:700;color:#425064}.author-inline-actions textarea,.author-inline-actions input[type=file]{width:100%;margin-top:6px}.author-inline-actions label+label{margin-top:10px}.author-action-right{display:flex;justify-content:flex-end;margin-top:12px}.author-process-placeholder{background:#f8f9fb;border-radius:9px;padding:11px}.author-process-placeholder strong{font-size:9px}.author-process-placeholder p{margin:3px 0 0;font-size:8.5px;color:#7f8894;line-height:1.6}
@media(max-width:1180px){.production-summary{grid-template-columns:minmax(230px,1.5fr) minmax(105px,.55fr) minmax(105px,.55fr) minmax(130px,.65fr) 18px}.production-stage-chip:nth-of-type(4){display:none}.production-next-stages{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.production-summary{grid-template-columns:minmax(0,1fr) auto 18px}.production-stage-chip,.production-current{display:none}.production-stage-grid,.production-action-split{grid-template-columns:1fr}.production-facts{grid-template-columns:1fr}.production-next-stages{grid-template-columns:1fr}.production-search-form{align-items:stretch;flex-direction:column}.author-process-body{padding-left:0}.author-inline-review-head{flex-direction:column}}
.production-assign-form{display:flex;align-items:end;gap:8px;border-top:1px solid #edf0f4;padding-top:10px;margin-top:10px}.production-assign-form label{flex:1;margin:0}.production-assign-form select{width:100%;margin-top:5px;border:1px solid #dfe3ea;border-radius:9px;padding:8px 9px;background:#fff;font:inherit}
@media(max-width:820px){.production-assign-form{align-items:stretch;flex-direction:column}}
.status-pill.blue{background:#e8f0ff;color:#2563eb}

/* ========================================================================== */
/* DUXSUITE · PORTAL DEL AUTOR · PRODUCCIÓN PREMIUM + ADJUNTOS MÚLTIPLES     */
/* Ajuste aislado sobre Fase 7. No altera los módulos internos de Producción. */
/* ========================================================================== */
.author-process-alert{margin-bottom:12px}
.author-production-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:24px;align-items:center;margin-bottom:12px;padding:26px 28px;border-radius:18px;background:linear-gradient(135deg,#111827 0%,#1f1740 54%,#5b21b6 100%);color:#fff;box-shadow:0 18px 42px rgba(52,31,105,.16)}
.author-production-hero:before{content:"";position:absolute;right:110px;top:-90px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.13),rgba(255,255,255,0) 68%)}
.author-production-hero:after{content:"";position:absolute;left:43%;bottom:-110px;width:260px;height:190px;border-radius:50%;background:rgba(139,92,246,.13);filter:blur(10px)}
.author-production-hero-copy{position:relative;z-index:1;min-width:0}
.author-production-kicker{display:inline-flex;align-items:center;gap:6px;margin-bottom:7px;font-size:7.5px;font-weight:800;letter-spacing:.14em;color:#d9c7ff}
.author-production-hero h2{margin:0;color:#fff;font-size:26px;line-height:1.08;letter-spacing:-.03em}
.author-production-hero p{max-width:720px;margin:8px 0 0;color:#d8d4e3;font-size:10px;line-height:1.65}
.author-production-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:760px;margin-top:20px}
.author-production-meta>div{padding:10px 12px;border:1px solid rgba(255,255,255,.11);border-radius:11px;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}
.author-production-meta span{display:block;margin-bottom:3px;font-size:7px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#bdb6ce}
.author-production-meta strong{display:block;font-size:10px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.author-progress-ring{position:relative;z-index:1;width:124px;height:124px;margin:auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#a78bfa calc(var(--author-progress-pct) * 3.6deg),rgba(255,255,255,.14) 0);box-shadow:0 0 0 1px rgba(255,255,255,.12),0 12px 28px rgba(0,0,0,.12)}
.author-progress-ring:before{content:"";position:absolute;inset:9px;border-radius:50%;background:linear-gradient(145deg,#17182a,#2b1f4d);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.author-progress-ring>div{position:relative;z-index:1;text-align:center}.author-progress-ring strong{display:block;font-size:24px;line-height:1;color:#fff}.author-progress-ring span{display:block;margin-top:5px;font-size:7px;text-transform:uppercase;letter-spacing:.06em;color:#c8c1d5}
.author-attention-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:12px;padding:12px 14px;border:1px solid #ead9ff;border-radius:14px;background:linear-gradient(135deg,#fbf8ff,#f5efff);box-shadow:0 7px 20px rgba(76,29,149,.05)}
.author-attention-card.is-calm{border-color:#d7eee4;background:linear-gradient(135deg,#f8fffb,#f3fbf7)}
.author-attention-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#7c3aed;color:#fff;box-shadow:0 7px 16px rgba(124,58,237,.18)}
.author-attention-card.is-calm .author-attention-icon{background:#0f9f6e;box-shadow:0 7px 16px rgba(15,159,110,.15)}
.author-attention-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}
.author-attention-card strong{display:block;font-size:10.5px;color:#262c38}.author-attention-card p{margin:2px 0 0;font-size:8.6px;line-height:1.5;color:#7d8592}
.author-attention-card>a{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border-radius:9px;background:#6d28d9;color:#fff;text-decoration:none;font-size:8.5px;font-weight:750;white-space:nowrap}.author-attention-card>a svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8}
.author-stage-board-premium{padding:0;border:1px solid #e2e5eb;border-radius:16px;overflow:hidden;box-shadow:0 12px 30px rgba(15,23,42,.045)}
.author-stage-board-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px 14px;background:linear-gradient(180deg,#fff,#fcfbff)}
.author-stage-board-head>div:first-child>span{font-size:7px;font-weight:800;letter-spacing:.12em;color:#7c3aed}.author-stage-board-head h3{margin:4px 0 3px;font-size:15px;color:#202634}.author-stage-board-head p{margin:0;font-size:8.8px;color:#7d8592}
.author-stage-legend{display:flex;align-items:center;gap:10px;padding-top:3px;white-space:nowrap}.author-stage-legend span{display:flex;align-items:center;gap:4px;font-size:7.5px;color:#7f8793}.author-stage-legend i{width:7px;height:7px;border-radius:50%;background:#d9dde4}.author-stage-legend i.done{background:#10b981}.author-stage-legend i.active{background:#8b5cf6}
.author-stage-progress-premium{margin:0 20px;padding:11px 0 14px;border-bottom:1px solid #eef0f4}.author-stage-progress-premium>div:first-child strong{font-size:18px}.author-stage-progress-premium .author-progress-line{height:7px}
.author-process-list-premium{gap:0;padding:0 14px 14px}
.author-process-list-premium .author-process-item{position:relative;margin:8px 0 0;border:1px solid #e7e9ef;border-radius:13px;background:#fff;overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.author-process-list-premium .author-process-item:hover{border-color:#ddd5ec;box-shadow:0 7px 18px rgba(31,41,55,.04)}
.author-process-list-premium .author-process-item[open]{border-color:#d8c6f8;box-shadow:0 10px 24px rgba(76,29,149,.065)}
.author-process-list-premium .author-process-item.is-done{border-color:#deeee7}.author-process-list-premium .author-process-item.is-active{border-color:#ddcff8}.author-process-list-premium .author-process-item.has-action{box-shadow:0 0 0 2px rgba(124,58,237,.06),0 10px 24px rgba(76,29,149,.07)}
.author-process-list-premium .author-process-item>summary{grid-template-columns:34px minmax(0,1fr) auto 18px;gap:11px;padding:12px 13px;background:#fff}
.author-process-list-premium .author-process-item[open]>summary{background:linear-gradient(90deg,#fbf9ff,#fff)}
.author-process-step{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#f4f5f7;color:#8b93a0;font-size:7.5px;font-weight:800;letter-spacing:.04em}
.author-process-item.is-done .author-process-step{background:#ecfdf5;color:#047857}.author-process-item.is-active .author-process-step{background:#f1eaff;color:#6d28d9}
.author-process-list-premium .author-process-main{gap:9px}.author-process-list-premium .author-process-icon{width:38px;height:38px;border-radius:11px}.author-process-item.is-done .author-process-icon{background:#ecfdf5;color:#059669}.author-process-item.is-pending .author-process-icon{background:#f5f6f8;color:#9ca3af}
.author-process-list-premium .author-process-main strong{font-size:10.8px}.author-process-list-premium .author-process-main small{max-width:640px;font-size:8.2px;line-height:1.45}
.author-process-summary-meta{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:190px}.author-process-summary-meta>small{font-size:7px;color:#9aa1ad;white-space:nowrap}
.author-action-badge{padding:5px 7px;border-radius:8px;background:#7c3aed;color:#fff;font-size:7px;font-weight:800;letter-spacing:.02em;white-space:nowrap;box-shadow:0 5px 12px rgba(124,58,237,.14)}
.author-process-list-premium .author-stage-state{font-size:7.2px;white-space:nowrap}.author-process-list-premium .author-process-chevron{font-size:16px}
.author-process-list-premium .author-process-body{padding:18px 18px 18px 82px;border-top:1px solid #eee9f6;background:#fcfbfe}
.author-review-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.author-review-eyebrow{display:block;margin-bottom:4px;font-size:7px;font-weight:800;letter-spacing:.11em;color:#7c3aed}.author-review-header h3{margin:0;font-size:14px;color:#202634}.author-review-header p{max-width:760px;margin:5px 0 0;font-size:8.8px;line-height:1.55;color:#7a8390}.author-version-pill{flex:0 0 auto;padding:7px 9px;border-radius:9px;background:#f1eaff;color:#6d28d9;font-size:8px;font-weight:800;white-space:nowrap}
.author-delivery-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid #e6e9ef;border-radius:12px;background:#fff;box-shadow:0 5px 14px rgba(15,23,42,.025)}.author-delivery-card.compact{margin-top:10px}
.author-delivery-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:#eee7ff;color:#6d28d9}.author-delivery-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.author-delivery-card>div{min-width:0}.author-delivery-card strong{display:block;font-size:10.3px;color:#27303e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-delivery-card span:not(.author-delivery-icon){display:block;margin-top:2px;font-size:7.8px;color:#8a93a0}.author-primary-download{display:inline-flex;align-items:center;gap:6px}.author-primary-download svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8}
.author-review-actions-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:12px;margin-top:12px}.author-review-action-card{display:flex;flex-direction:column;min-height:100%;padding:15px;border:1px solid #e5e8ee;border-radius:13px;background:#fff;box-shadow:0 5px 16px rgba(15,23,42,.025)}.author-review-action-card.is-approval{border-color:#d6ede2;background:linear-gradient(145deg,#fff,#f8fffb)}
.author-action-card-head{display:flex;align-items:flex-start;gap:9px;margin-bottom:12px}.author-action-card-head>span{width:34px;height:34px;flex:0 0 34px;border-radius:10px;display:grid;place-items:center;background:#f1eaff;color:#6d28d9}.author-review-action-card.is-approval .author-action-card-head>span{background:#eafaf2;color:#079669}.author-action-card-head svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}.author-action-card-head h4{margin:0;font-size:11px;color:#252c38}.author-action-card-head p{margin:3px 0 0;font-size:8.3px;line-height:1.5;color:#818a97}
.author-review-action-card>label{display:block;margin-top:9px;font-size:8.5px;font-weight:750;color:#465061}.author-review-action-card>label:first-of-type{margin-top:0}.author-review-action-card textarea{width:100%;margin-top:6px;border:1px solid #dfe3ea;border-radius:10px;padding:10px 11px;background:#fff;font:inherit;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.author-review-action-card textarea:focus{outline:none;border-color:#a78bfa;box-shadow:0 0 0 3px rgba(124,58,237,.08)}.author-review-action-card input[type=file]{width:100%;margin-top:6px}
.author-action-explainer{display:grid;gap:4px;margin:6px 0 14px;padding:12px;border:1px solid #dceee5;border-radius:11px;background:#f5fcf8}.author-action-explainer strong{font-size:8.5px;color:#176f53}.author-action-explainer span{font-size:8.3px;line-height:1.55;color:#5f756d}
.author-action-button{width:100%;justify-content:center;margin-top:auto;min-height:36px}.author-action-button svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8}
.author-upload-zone{position:relative;display:flex!important;align-items:center;gap:10px;min-height:70px;margin-top:10px!important;padding:11px 12px;border:1.5px dashed #cdb8f5;border-radius:12px;background:#faf7ff;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.author-upload-zone:hover{border-color:#8b5cf6;background:#f6f0ff;transform:translateY(-1px)}.author-upload-zone input{position:absolute!important;inset:0;width:100%!important;height:100%;margin:0!important;opacity:0;cursor:pointer}.author-upload-zone-icon{width:34px;height:34px;flex:0 0 34px;border-radius:10px;display:grid;place-items:center;background:#7c3aed;color:#fff}.author-upload-zone-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}.author-upload-zone-copy{min-width:0}.author-upload-zone-copy strong{display:block;font-size:9px;color:#3c3151}.author-upload-zone-copy small{display:block;margin-top:3px;font-size:7.6px;font-weight:500;line-height:1.5;color:#81768f}
.author-completed-panel,.author-waiting-panel{display:flex;align-items:flex-start;gap:11px;padding:13px 14px;border-radius:12px}.author-completed-panel{border:1px solid #cfeadf;background:#f3fdf8}.author-waiting-panel{border:1px solid #e5ddf6;background:#faf7ff}.author-completed-panel>span,.author-waiting-panel>span{width:34px;height:34px;flex:0 0 34px;border-radius:10px;display:grid;place-items:center}.author-completed-panel>span{background:#10b981;color:#fff}.author-waiting-panel>span{background:#8b5cf6;color:#fff}.author-completed-panel svg,.author-waiting-panel svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}.author-completed-panel strong,.author-waiting-panel strong{display:block;font-size:10px;color:#28313e}.author-completed-panel p,.author-waiting-panel p{margin:3px 0 0;font-size:8.5px;line-height:1.55;color:#74807d}
.author-sent-files{margin-top:11px}.author-sent-files>span{display:block;margin-bottom:7px;font-size:7px;font-weight:800;letter-spacing:.09em;color:#8b5cf6}.author-sent-files>div{display:flex;flex-wrap:wrap;gap:7px}.author-sent-files a{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:7px;max-width:360px;padding:8px 10px;border:1px solid #e4d9f8;border-radius:10px;background:#fff;color:#394253;text-decoration:none}.author-sent-files a svg{width:14px;height:14px;fill:none;stroke:#7c3aed;stroke-width:1.8}.author-sent-files a strong{font-size:8.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-sent-files a small{font-size:7px;color:#7c3aed;font-weight:750}
.author-process-list-premium .author-process-placeholder{padding:13px 14px;border:1px solid #eceef2;background:#fff}.author-process-list-premium .author-process-placeholder strong{font-size:9.3px}.author-process-list-premium .author-process-placeholder p{font-size:8.3px}
.layout-author-attachment-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.layout-author-attachment{display:inline-flex!important;align-items:center;gap:5px;padding:6px 8px;border:1px solid rgba(239,68,68,.18);border-radius:8px;background:rgba(255,255,255,.65)}.layout-author-attachment svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.8}

@media(max-width:980px){
  .author-production-hero{grid-template-columns:minmax(0,1fr) 120px;padding:22px}.author-progress-ring{width:108px;height:108px}.author-production-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.author-production-meta>div:last-child{grid-column:1/-1}.author-review-actions-grid{grid-template-columns:1fr}.author-process-summary-meta>small{display:none}
}
@media(max-width:760px){
  .author-production-hero{grid-template-columns:1fr;padding:19px 17px}.author-production-hero h2{font-size:22px}.author-progress-ring{width:94px;height:94px;margin:0}.author-progress-ring strong{font-size:20px}.author-production-meta{grid-template-columns:1fr}.author-production-meta>div:last-child{grid-column:auto}.author-attention-card{grid-template-columns:38px minmax(0,1fr)}.author-attention-card>a{grid-column:2;width:max-content}.author-stage-board-head{flex-direction:column;padding:15px}.author-stage-legend{padding:0}.author-stage-progress-premium{margin:0 15px}.author-process-list-premium{padding:0 8px 8px}.author-process-list-premium .author-process-item>summary{grid-template-columns:28px minmax(0,1fr) 18px;padding:11px 9px}.author-process-summary-meta{grid-column:2;justify-content:flex-start;min-width:0;flex-wrap:wrap}.author-process-chevron{grid-column:3;grid-row:1/3}.author-process-list-premium .author-process-body{padding:14px 10px}.author-review-header{flex-direction:column}.author-delivery-card{grid-template-columns:38px minmax(0,1fr)}.author-delivery-card>a{grid-column:1/-1;justify-content:center}.author-review-actions-grid{grid-template-columns:1fr}.author-stage-legend span{font-size:7px}
}
@media(max-width:480px){
  .author-production-meta{gap:6px}.author-production-meta>div{padding:9px 10px}.author-attention-card{padding:11px}.author-stage-board-head p{line-height:1.5}.author-process-list-premium .author-process-main small{display:none}.author-process-list-premium .author-process-icon{width:34px;height:34px}.author-process-list-premium .author-process-item>summary{grid-template-columns:26px minmax(0,1fr) 16px}.author-process-step{width:25px;height:25px}.author-sent-files a{max-width:100%;width:100%}
}

/* === DuxSuite Fase 8 · Portada + continuidad visual del Portal del Autor === */
/* Mantiene el fondo oscuro de la columna lateral hasta el final del documento, incluso cuando Producción supera 100vh. */
.author-shell{background:linear-gradient(90deg,#0b1221 0 238px,#f7f8fb 238px 100%)}
@media(max-width:1050px){.author-shell{background:linear-gradient(90deg,#0b1221 0 210px,#f7f8fb 210px 100%)}}
@media(max-width:820px){.author-shell{background:#f7f8fb}}

.designer-process-stack{display:grid;gap:12px}
.designer-stage-block{border:1px solid #e5e8ee;border-radius:14px;background:#fff;overflow:hidden}
.designer-stage-block>summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:12px;padding:13px 15px;cursor:pointer;background:#fbfcfe}
.designer-stage-block>summary::-webkit-details-marker{display:none}
.designer-stage-block[open]>summary{background:linear-gradient(90deg,#faf7ff,#fff);border-bottom:1px solid #ece8f3}
.designer-stage-block>summary>div:first-child{display:flex;align-items:center;gap:10px;min-width:0}
.designer-stage-block>summary strong{display:block;font-size:11px;color:#252b36}
.designer-stage-block>summary small{display:block;margin-top:2px;font-size:8.5px;color:#8b94a2}
.designer-stage-number{width:30px;height:30px;flex:0 0 30px;border-radius:9px;display:grid;place-items:center;background:#efe8ff;color:#6d28d9;font-size:8px;font-weight:800}
.designer-stage-cover .designer-stage-number{background:#eafaf2;color:#0f8f67}
.designer-stage-body{padding:15px}
.designer-next-stage-placeholder{display:flex;align-items:center;gap:11px;padding:14px 15px;border:1px dashed #dfe3ea;border-radius:13px;background:#fafbfc;color:#677181}
.designer-next-stage-placeholder>span{width:36px;height:36px;flex:0 0 36px;border-radius:10px;display:grid;place-items:center;background:#f1eaff;color:#7c3aed}
.designer-next-stage-placeholder>span svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.designer-next-stage-placeholder strong{display:block;font-size:10px;color:#303744}
.designer-next-stage-placeholder p{margin:3px 0 0;font-size:8.5px;line-height:1.5}
.author-cover-delivery .author-delivery-icon{background:linear-gradient(145deg,#f2eaff,#e9dcff)}
@media(max-width:760px){.designer-stage-block>summary{grid-template-columns:minmax(0,1fr) 18px}.designer-stage-block>summary>.status-pill{grid-column:1;margin-left:40px;width:max-content}.designer-stage-block>summary>.editor-summary-chevron{grid-column:2;grid-row:1/3}.designer-stage-body{padding:12px}}
.author-cover-preview{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:16px;align-items:center;margin:0 0 12px;padding:14px;border:1px solid #e6e0f2;border-radius:14px;background:linear-gradient(135deg,#fbf9ff,#fff)}
.author-cover-preview img{display:block;width:100%;max-height:360px;object-fit:contain;border-radius:10px;background:#f2f3f6;box-shadow:0 10px 24px rgba(15,23,42,.08)}
.author-cover-preview>div>span{display:block;margin-bottom:5px;font-size:7px;font-weight:800;letter-spacing:.11em;color:#7c3aed}.author-cover-preview>div>strong{display:block;font-size:12px;color:#252c38}.author-cover-preview>div>p{margin:5px 0 0;font-size:8.5px;line-height:1.55;color:#7f8794}
@media(max-width:760px){.author-cover-preview{grid-template-columns:1fr}.author-cover-preview img{max-height:320px}}

/* Fase 8 · portada completa + frente y portada aprobada vinculada al expediente */
.approved-cover-thumb{width:40px;height:56px;flex:0 0 40px;border-radius:6px;overflow:hidden;background:#f0f2f6;border:1px solid #e0e4eb;box-shadow:0 6px 14px rgba(15,23,42,.10);display:block}
.approved-cover-thumb img{width:100%;height:100%;display:block;object-fit:cover}
.production-approved-cover-thumb{width:38px;height:52px;flex-basis:38px}.designer-approved-cover-thumb{width:42px;height:58px;flex-basis:42px}
.approved-cover-showcase{display:grid;grid-template-columns:128px minmax(0,1fr);gap:18px;align-items:center;margin:0 0 14px;padding:16px;border:1px solid #e4e0ef;border-radius:16px;background:linear-gradient(135deg,#fbf9ff,#fff);box-shadow:0 8px 22px rgba(34,24,64,.05)}
.approved-cover-art{display:block;width:128px;height:182px;border-radius:9px;overflow:hidden;background:#eef0f4;box-shadow:0 12px 26px rgba(15,23,42,.14)}
.approved-cover-art img{width:100%;height:100%;display:block;object-fit:cover}
.approved-cover-showcase>div>span{display:block;margin-bottom:5px;font-size:7.5px;font-weight:800;letter-spacing:.11em;color:#7c3aed}.approved-cover-showcase h3{margin:0;font-size:16px;color:#202636}.approved-cover-showcase p{max-width:700px;margin:7px 0 12px;color:#737c8a;font-size:9.5px;line-height:1.6}.approved-cover-actions{display:flex;align-items:center;gap:11px;flex-wrap:wrap}
.production-approved-cover-showcase{grid-template-columns:112px minmax(0,1fr);margin-top:12px}.production-approved-cover-showcase .approved-cover-art{width:112px;height:160px}
.designer-approved-cover-showcase{grid-template-columns:112px minmax(0,1fr)}.designer-approved-cover-showcase .approved-cover-art{width:112px;height:160px}
.designer-cover-upload-form{gap:10px}.designer-cover-upload-help{display:flex!important;align-items:center;gap:9px;padding:10px 11px;border-radius:10px;background:#faf8ff;border:1px solid #ece4ff;color:#4c3b75}.designer-cover-upload-help>span{width:29px;height:29px;flex:0 0 29px;border-radius:8px;display:grid;place-items:center;background:#efe8ff;color:#7c3aed}.designer-cover-upload-help strong{display:block;font-size:9px}.designer-cover-upload-help small{display:block;margin-top:2px;font-size:8px;font-weight:400;color:#85809a;line-height:1.45}
.designer-cover-ready-card{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:12px;padding:11px 12px;border:1px solid #e8e1f6;border-radius:13px;background:linear-gradient(135deg,#fbf8ff,#fff)}.designer-cover-ready-card>img{width:54px;height:76px;display:block;object-fit:cover;border-radius:6px;box-shadow:0 7px 16px rgba(15,23,42,.10)}.designer-cover-ready-card>div>span{display:block;font-size:7px;font-weight:800;letter-spacing:.09em;color:#7c3aed}.designer-cover-ready-card>div>strong{display:block;margin-top:3px;font-size:10px;color:#2b3140}.designer-cover-ready-card>div>small{display:block;margin-top:3px;font-size:8px;color:#8b93a0}.designer-cover-ready-card form{margin:0}
.cover-history-front{display:inline-flex;align-items:center;gap:7px;color:#6d28d9;text-decoration:none}.cover-history-front img{width:28px;height:40px;object-fit:cover;border-radius:4px;border:1px solid #e4e6eb}.cover-history-front span{max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:8px}
.author-context-bar.has-approved-cover{justify-content:flex-start}.author-context-bar.has-approved-cover>div:first-of-type{min-width:0;display:grid;gap:2px}.author-context-bar.has-approved-cover>div:first-of-type>span{font-size:7px;font-weight:800;letter-spacing:.11em;color:#7c3aed}.author-context-bar.has-approved-cover>div:first-of-type>strong{font-size:12px;color:#202838}.author-context-bar.has-approved-cover>div:first-of-type>small{font-size:8.5px;color:#9199a5}.author-context-bar.has-approved-cover .author-project-switcher{margin-left:auto}
.author-context-cover{width:42px;height:58px;flex:0 0 42px;border-radius:6px;overflow:hidden;background:#eef0f4;box-shadow:0 6px 15px rgba(15,23,42,.11)}.author-context-cover img{width:100%;height:100%;display:block;object-fit:cover}
.author-cover-image{padding:0!important;overflow:hidden;background:#eef0f4!important}.author-cover-image img{width:100%;height:100%;display:block;object-fit:cover}.author-book-premium.has-real-cover .author-cover{border-radius:7px}
.author-production-hero.has-approved-cover{grid-template-columns:minmax(0,1fr) 88px 150px;gap:18px}.author-hero-approved-cover{position:relative;z-index:1;display:grid;gap:6px;justify-items:center;text-decoration:none}.author-hero-approved-cover img{width:76px;height:108px;display:block;object-fit:cover;border-radius:7px;box-shadow:0 12px 26px rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.14)}.author-hero-approved-cover span{font-size:7px;font-weight:700;color:#ddd6fe;text-transform:uppercase;letter-spacing:.08em;text-align:center}
.author-cover-preview-front>a{display:block}.author-cover-preview-front>a img{max-height:390px}.author-cover-download-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.author-approved-cover-showcase{grid-template-columns:150px minmax(0,1fr);padding:18px}.author-approved-cover-showcase .approved-cover-art{width:150px;height:214px}.author-approved-cover-showcase h3{font-size:18px}
@media(max-width:980px){.author-production-hero.has-approved-cover{grid-template-columns:minmax(0,1fr) 76px 120px}.author-hero-approved-cover img{width:66px;height:94px}.author-approved-cover-showcase{grid-template-columns:120px minmax(0,1fr)}.author-approved-cover-showcase .approved-cover-art{width:120px;height:171px}}
@media(max-width:760px){.approved-cover-showcase,.production-approved-cover-showcase,.designer-approved-cover-showcase,.author-approved-cover-showcase{grid-template-columns:92px minmax(0,1fr);gap:12px}.approved-cover-art,.production-approved-cover-showcase .approved-cover-art,.designer-approved-cover-showcase .approved-cover-art,.author-approved-cover-showcase .approved-cover-art{width:92px;height:131px}.designer-cover-ready-card{grid-template-columns:46px minmax(0,1fr)}.designer-cover-ready-card>img{width:46px;height:65px}.designer-cover-ready-card form,.designer-cover-ready-card>.status-pill{grid-column:1/-1}.designer-cover-ready-card .primary-btn{width:100%;justify-content:center}.author-production-hero.has-approved-cover{grid-template-columns:minmax(0,1fr) 84px}.author-hero-approved-cover{grid-column:2;grid-row:1}.author-progress-ring{grid-column:1/-1}.author-context-bar.has-approved-cover{display:grid;grid-template-columns:42px minmax(0,1fr)}.author-context-bar.has-approved-cover .author-project-switcher{grid-column:1/-1;margin-left:0}.author-cover-download-actions{grid-column:1/-1;justify-content:stretch}.author-cover-download-actions a{flex:1;justify-content:center}.cover-history-front span{display:none}}
@media(max-width:520px){.approved-cover-showcase,.production-approved-cover-showcase,.designer-approved-cover-showcase,.author-approved-cover-showcase{grid-template-columns:1fr}.approved-cover-art,.production-approved-cover-showcase .approved-cover-art,.designer-approved-cover-showcase .approved-cover-art,.author-approved-cover-showcase .approved-cover-art{width:120px;height:171px}.approved-cover-actions{align-items:stretch;flex-direction:column}.approved-cover-actions>*{justify-content:center}.author-production-hero.has-approved-cover{grid-template-columns:1fr}.author-hero-approved-cover{grid-column:1;grid-row:auto;justify-self:start}.author-progress-ring{grid-column:1}}

/* ========================================================================== */
/* DuxSuite · Fase 9 · Mockups + ISBN + distribución + impresión             */
/* ========================================================================== */
.approved-cover-thumb.is-review{opacity:.92;box-shadow:0 0 0 2px #dbeafe,0 6px 14px rgba(15,23,42,.10)}
.production-approved-cover-showcase.is-review{border-color:#dbeafe;background:linear-gradient(135deg,#f7fbff,#fff)}
.production-approved-cover-showcase.is-review>div>span{color:#2563eb}

.designer-work-summary{grid-template-columns:minmax(240px,1.45fr) minmax(105px,.55fr) minmax(105px,.55fr) minmax(105px,.55fr) auto 20px}
.designer-stage-mockups .designer-stage-number{background:#e8fbf3;color:#0f8f67}
.designer-mockup-cover-base{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;padding:12px;border:1px solid #e5e8ee;border-radius:12px;background:#fff}
.designer-mockup-cover-base img{width:72px;height:102px;object-fit:cover;border-radius:7px;box-shadow:0 8px 20px rgba(15,23,42,.12)}
.designer-mockup-cover-base strong{display:block;font-size:11px;color:#252c38}.designer-mockup-cover-base small{display:block;margin:4px 0 7px;font-size:8.5px;line-height:1.5;color:#7d8795}
.designer-mockup-version{margin-top:14px;padding:13px;border:1px solid #e8eaf0;border-radius:13px;background:#fff}
.designer-mockup-version-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.designer-mockup-version-head>div>span{display:block;font-size:7px;font-weight:800;letter-spacing:.1em;color:#7c3aed}.designer-mockup-version-head>div>strong{display:block;margin-top:2px;font-size:11px;color:#273040}.designer-mockup-version-head>div>small{display:block;margin-top:3px;font-size:8px;color:#858d99}
.designer-mockup-gallery,.production-mockup-gallery,.author-mockup-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:9px}
.designer-mockup-gallery>a,.production-mockup-gallery>a,.author-mockup-card{min-width:0;display:flex;flex-direction:column;border:1px solid #e7e9ee;border-radius:10px;background:#fff;overflow:hidden;text-decoration:none;color:#344054;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.designer-mockup-gallery>a:hover,.production-mockup-gallery>a:hover,.author-mockup-card:hover{transform:translateY(-1px);border-color:#d7c8f4;box-shadow:0 8px 18px rgba(65,37,112,.07)}
.designer-mockup-gallery>a img,.production-mockup-gallery>a img,.author-mockup-card img{display:block;width:100%;height:132px;object-fit:cover;background:#f3f4f6}
.designer-mockup-gallery>a>span,.production-mockup-gallery>a>span,.author-mockup-file-icon{height:82px;display:grid;place-items:center;background:#f8f7fb;color:#7c3aed}
.designer-mockup-gallery>a>span svg,.production-mockup-gallery>a>span svg,.author-mockup-file-icon svg{width:22px;height:22px}
.designer-mockup-gallery>a small,.production-mockup-gallery>a small{display:block;padding:7px 8px;font-size:7.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.author-mockup-gallery{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin-top:12px}
.author-mockup-card>span:last-child{display:grid;gap:2px;padding:8px 9px}.author-mockup-card>span:last-child strong{font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-mockup-card>span:last-child small{font-size:7.5px;color:#7c3aed}
.author-stage-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.author-stage-facts>div{padding:10px 11px;border:1px solid #eceef2;border-radius:10px;background:#fafbfc}.author-stage-facts span{display:block;font-size:7px;text-transform:uppercase;letter-spacing:.06em;color:#929aa6}.author-stage-facts strong{display:block;margin-top:3px;font-size:9.5px;color:#2d3440;overflow-wrap:anywhere}
.author-completed-panel.is-neutral{background:#f8fafc;border-color:#e2e8f0}

.production-phase9-card{padding:0;overflow:hidden}.production-phase9-card>.production-stage-head{padding:13px 13px 0}.production-phase9-card>.production-dossier-note{padding:0 13px 12px}
.production-downstream-list{border-top:1px solid #edf0f4}
.production-downstream-item{border-bottom:1px solid #edf0f4;background:#fff}.production-downstream-item:last-child{border-bottom:0}.production-downstream-item[open]{background:#fcfcfe}.production-downstream-item.is-active{box-shadow:inset 3px 0 0 #7c3aed}
.production-downstream-item>summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto 18px;gap:10px;align-items:center;padding:11px 13px;cursor:pointer}.production-downstream-item>summary::-webkit-details-marker{display:none}.production-downstream-item>summary>div:first-child{display:flex;align-items:center;gap:9px;min-width:0}.production-downstream-item>summary strong{display:block;font-size:9.5px;color:#303744}.production-downstream-item>summary small{display:block;margin-top:2px;font-size:7.7px;line-height:1.4;color:#8b94a2}
.production-downstream-icon{width:30px;height:30px;flex:0 0 30px;border-radius:9px;display:grid;place-items:center;background:#f3effc;color:#7c3aed}.production-downstream-icon svg{width:14px;height:14px}
.production-downstream-body{padding:0 13px 13px 52px}.production-stage-files{display:flex;gap:7px;flex-wrap:wrap;margin:9px 0}.production-stage-files a{display:inline-flex;align-items:center;gap:4px;padding:6px 8px;border:1px solid #e6e9ef;border-radius:8px;background:#fff;text-decoration:none}.production-stage-files a svg{width:12px;height:12px}
.production-stage-form{margin-top:10px;padding:12px;border:1px solid #e8e2f4;border-radius:11px;background:linear-gradient(135deg,#fbf9ff,#fff)}
.production-stage-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.production-stage-form-grid label{margin:0}.production-stage-form-grid label>span{font-weight:400;color:#8a94a3}.production-stage-form-grid input[type=text],.production-stage-form-grid textarea,.production-stage-form-grid input[type=file]{width:100%;margin-top:5px;border:1px solid #dfe3ea;border-radius:9px;background:#fff;padding:9px 10px;font:inherit}.production-stage-form-grid input[type=file]{padding:7px}.production-stage-form-grid .span-2{grid-column:1/-1}.production-stage-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.production-stage-closed-note{margin-top:6px;padding:9px 10px;border-radius:9px;background:#f7f8fa;color:#737c89;font-size:8.5px}

@media(max-width:1220px){.designer-work-summary{grid-template-columns:minmax(220px,1.5fr) minmax(100px,.55fr) minmax(100px,.55fr) auto 18px}.designer-work-summary .editor-summary-meta:nth-of-type(4){display:none}}
@media(max-width:820px){.designer-work-summary{grid-template-columns:minmax(0,1fr) auto 18px}.designer-work-summary .editor-summary-meta{display:none}.designer-mockup-version-head{align-items:stretch;flex-direction:column}.designer-mockup-version-head form .primary-btn{width:100%;justify-content:center}.production-downstream-body{padding-left:13px}.production-stage-form-grid,.author-stage-facts{grid-template-columns:1fr}.production-stage-form-grid .span-2{grid-column:auto}.production-stage-form-actions{align-items:stretch;flex-direction:column}.production-stage-form-actions button{width:100%;justify-content:center}}

/* Fase 9 · kit promocional y acceso anticipado a Marketing */
.designer-marketing-kit-intro,
.designer-marketing-kit-note,
.designer-existing-author-photo{
  display:flex;align-items:center;gap:12px;border:1px solid #e7ddff;background:#faf8ff;border-radius:14px;padding:14px 16px
}
.designer-marketing-kit-intro>span,
.designer-marketing-kit-note>span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#efe7ff;color:#7627e8;flex:0 0 auto}
.designer-marketing-kit-intro strong{display:block;font-size:13px;color:#26174a;margin-bottom:3px}
.designer-marketing-kit-intro small,
.designer-marketing-kit-note small{display:block;color:#6e7480;line-height:1.55}
.designer-existing-author-photo{background:#fff;border-color:#e8ebf1}
.designer-existing-author-photo img{width:58px;height:58px;object-fit:cover;border-radius:14px;border:1px solid #e8ebf1}
.designer-existing-author-photo strong,.designer-existing-author-photo small{display:block}
.designer-existing-author-photo small{margin-top:4px;color:#8b92a0}

.marketing-page-head{align-items:flex-end}
.marketing-kpis{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}
.marketing-empty-state{display:flex;gap:16px;align-items:center;padding:28px}
.marketing-empty-state>span{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#f2eaff;color:#7928ed;flex:0 0 auto}
.marketing-empty-state h3{margin:0 0 6px}.marketing-empty-state p{margin:0;color:#747d8b;line-height:1.6}
.marketing-project-list{display:grid;gap:14px}
.marketing-project-card{background:#fff;border:1px solid #e7e1f6;border-radius:18px;box-shadow:0 8px 26px rgba(47,26,90,.05);overflow:hidden}
.marketing-project-card>summary{list-style:none;display:grid;grid-template-columns:minmax(0,1.6fr) 150px 160px auto 20px;align-items:center;gap:18px;padding:15px 18px;cursor:pointer}
.marketing-project-card>summary::-webkit-details-marker{display:none}
.marketing-project-summary-main{display:flex;align-items:center;gap:14px;min-width:0}
.marketing-cover-thumb{width:48px;height:68px;border-radius:8px;overflow:hidden;background:#f0edf6;box-shadow:0 5px 14px rgba(28,16,56,.14);flex:0 0 auto}
.marketing-cover-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.marketing-project-summary-main>div{min-width:0}
.marketing-project-summary-main strong,.marketing-project-summary-main small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.marketing-project-summary-main strong{font-size:13px;color:#1d2430;margin-top:2px}.marketing-project-summary-main small{font-size:10px;color:#9198a5;margin-top:4px}
.marketing-upcoming-label{font-size:8px;font-weight:800;letter-spacing:.12em;color:#7e2dea}
.marketing-project-summary-meta small,.marketing-project-summary-meta strong,.marketing-project-summary-meta span{display:block}
.marketing-project-summary-meta small{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#a0a7b3}.marketing-project-summary-meta strong{font-size:12px;color:#252b34;margin-top:3px}.marketing-project-summary-meta span{font-size:9px;color:#9aa1ac;margin-top:3px}
.marketing-project-body{border-top:1px solid #ece9f3;background:#fcfbff;padding:18px}
.marketing-kit-identity{display:grid;grid-template-columns:135px 110px minmax(0,1fr);gap:22px;align-items:center;background:linear-gradient(135deg,#13172d 0%,#2d1b52 58%,#7425c9 100%);border-radius:18px;padding:20px;color:#fff}
.marketing-kit-cover img{width:135px;height:195px;object-fit:cover;border-radius:10px;display:block;box-shadow:0 16px 32px rgba(0,0,0,.25)}
.marketing-kit-author-photo{text-align:center}.marketing-kit-author-photo img{width:92px;height:92px;object-fit:cover;border-radius:50%;border:4px solid rgba(255,255,255,.25);display:block;margin:0 auto 8px}.marketing-kit-author-photo small{font-size:9px;color:#ddd7eb}
.marketing-kit-identity-copy>span{font-size:8px;font-weight:800;letter-spacing:.13em;color:#d5b5ff}.marketing-kit-identity-copy h3{font-size:24px;margin:6px 0 3px}.marketing-kit-identity-copy>strong{font-size:12px}.marketing-kit-identity-copy p{font-size:11px;line-height:1.65;color:#ddd8ea;max-width:680px}.marketing-kit-identity-copy .secondary-btn{background:#fff;color:#3a235f;border-color:#fff}
.marketing-copy-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.marketing-copy-grid .dashboard-card{margin:0}.marketing-long-copy{font-size:11px;line-height:1.75;color:#555f6d;margin-top:10px;white-space:normal}
.marketing-mockups-card{margin-top:14px}.marketing-mockup-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:14px}
.marketing-mockup-item{display:flex;flex-direction:column;text-decoration:none;color:inherit;border:1px solid #e8e9ef;border-radius:13px;overflow:hidden;background:#fff;min-height:120px;transition:.18s ease}.marketing-mockup-item:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(35,29,54,.08)}
.marketing-mockup-item img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;background:#f4f4f7}.marketing-mockup-item>div{padding:10px}.marketing-mockup-item strong{display:block;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.marketing-mockup-item small{display:block;font-size:9px;color:#8f96a2;margin-top:4px}.marketing-file-icon{min-height:96px;display:grid;place-items:center;background:#f5f1fb;color:#7928ed}.marketing-file-icon svg{width:30px;height:30px}

.author-marketing-hero{display:grid;grid-template-columns:150px minmax(0,1fr) 130px;gap:24px;align-items:center;background:linear-gradient(135deg,#14182d 0%,#291a4d 56%,#7226c8 100%);border-radius:20px;padding:22px;color:#fff;box-shadow:0 14px 38px rgba(42,25,75,.12)}
.author-marketing-cover img{width:150px;height:218px;object-fit:cover;border-radius:10px;display:block;box-shadow:0 15px 30px rgba(0,0,0,.27)}
.author-marketing-hero-copy>span{font-size:9px;font-weight:800;letter-spacing:.14em;color:#d6b9ff}.author-marketing-hero-copy h2{font-size:26px;margin:6px 0 2px}.author-marketing-hero-copy>strong{font-size:12px}.author-marketing-hero-copy p{font-size:11px;line-height:1.7;color:#ddd9e8;max-width:640px}.author-marketing-hero-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.author-marketing-hero .secondary-btn{background:#fff;color:#3b235e;border-color:#fff}
.author-marketing-photo{text-align:center}.author-marketing-photo img{width:104px;height:104px;object-fit:cover;border-radius:50%;border:4px solid rgba(255,255,255,.25);display:block;margin:0 auto 8px}.author-marketing-photo small{font-size:9px;color:#ddd8e9}
.author-marketing-copy-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.author-marketing-copy-grid .dashboard-card{margin:0}.author-marketing-copy{font-size:11px;line-height:1.75;color:#59616d;margin-top:10px}.author-marketing-mockup-gallery{margin-top:14px}.author-mockups-published{margin:0 0 14px}

@media (max-width:980px){
  .marketing-project-card>summary{grid-template-columns:minmax(0,1fr) auto 20px}.marketing-project-summary-meta{display:none}.marketing-kit-identity{grid-template-columns:110px minmax(0,1fr)}.marketing-kit-cover img{width:110px;height:160px}.marketing-kit-author-photo{display:none}.marketing-copy-grid{grid-template-columns:1fr}
  .author-marketing-hero{grid-template-columns:115px minmax(0,1fr)}.author-marketing-cover img{width:115px;height:168px}.author-marketing-photo{display:none}.author-marketing-copy-grid{grid-template-columns:1fr}
}
@media (max-width:640px){
  .marketing-kpis{grid-template-columns:1fr}.marketing-project-card>summary{grid-template-columns:minmax(0,1fr) auto 18px;padding:12px}.marketing-project-card>summary>.status-pill{display:none}.marketing-kit-identity{grid-template-columns:1fr;text-align:center}.marketing-kit-cover{display:flex;justify-content:center}.marketing-kit-identity-copy p{margin-left:auto;margin-right:auto}.marketing-mockup-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .author-marketing-hero{grid-template-columns:1fr;text-align:center}.author-marketing-cover{display:flex;justify-content:center}.author-marketing-hero-actions{justify-content:center}.author-marketing-cover img{width:140px;height:204px}
}

/* Fase 9 · Mockups Diseño · layout compacto y defensivo */
.designer-stage-mockups .designer-stage-body{overflow:hidden}
.designer-stage-mockups .designer-mockup-workspace{display:grid;gap:12px;min-width:0}

.designer-stage-mockups .designer-mockup-reference-bar{
  display:grid;grid-template-columns:64px minmax(0,1fr) minmax(260px,420px);
  gap:14px;align-items:center;min-width:0;padding:12px 14px;
  border:1px solid #e6e1ef;border-radius:14px;background:linear-gradient(135deg,#fff 0%,#fbf9ff 100%)
}
.designer-stage-mockups .designer-mockup-reference-cover{
  width:64px!important;height:92px!important;max-width:64px!important;max-height:92px!important;
  min-width:64px;overflow:hidden;border-radius:8px;background:#f1eef7;box-shadow:0 6px 15px rgba(35,25,60,.12)
}
.designer-stage-mockups .designer-mockup-reference-cover img{
  display:block!important;width:64px!important;height:92px!important;max-width:64px!important;max-height:92px!important;
  object-fit:cover!important;margin:0!important
}
.designer-stage-mockups .designer-mockup-reference-copy{min-width:0}
.designer-stage-mockups .designer-mockup-reference-copy>span{display:block;font-size:7px;font-weight:800;letter-spacing:.1em;color:#7c3aed}
.designer-stage-mockups .designer-mockup-reference-copy>strong{display:block;margin-top:3px;font-size:12px;color:#202631}
.designer-stage-mockups .designer-mockup-reference-copy>small{display:block;margin:3px 0 5px;font-size:8.5px;line-height:1.45;color:#7f8794}

.designer-stage-mockups .designer-mockup-reference-marketing{
  display:flex;align-items:center;gap:10px;min-width:0;padding:10px 12px;
  border:1px solid #e8ddff;border-radius:11px;background:#f8f4ff
}
.designer-stage-mockups .designer-mockup-reference-marketing>span{
  width:30px!important;height:30px!important;min-width:30px;max-width:30px;flex:0 0 30px;
  overflow:hidden;border-radius:9px;display:grid;place-items:center;background:#ece3ff;color:#7828e8
}
.designer-stage-mockups .designer-mockup-reference-marketing>span svg{
  display:block!important;width:15px!important;height:15px!important;max-width:15px!important;max-height:15px!important
}
.designer-stage-mockups .designer-mockup-reference-marketing strong{display:block;font-size:9.5px;color:#33234f}
.designer-stage-mockups .designer-mockup-reference-marketing small{display:block;margin-top:2px;font-size:8px;line-height:1.4;color:#737986}

.designer-stage-mockups .designer-mockup-delivery-card{min-width:0;border:1px solid #e8eaf0;border-radius:14px;background:#fff;padding:14px}
.designer-stage-mockups .designer-mockup-delivery-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  padding-bottom:10px;margin-bottom:11px;border-bottom:1px solid #edf0f4
}
.designer-stage-mockups .designer-mockup-delivery-head>div:first-child{min-width:0}
.designer-stage-mockups .designer-mockup-delivery-head span{display:block;font-size:7px;font-weight:800;letter-spacing:.11em;color:#7c3aed}
.designer-stage-mockups .designer-mockup-delivery-head h3{margin:3px 0 2px;font-size:14px;color:#202631}
.designer-stage-mockups .designer-mockup-delivery-head p{margin:0;max-width:720px;font-size:8.5px;line-height:1.45;color:#7b8491}
.designer-stage-mockups .designer-mockup-visibility-pill{
  white-space:nowrap;display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;
  background:#f2ecff;color:#6f2adb;font-size:7.5px;font-weight:700
}
.designer-stage-mockups .designer-mockup-visibility-pill svg{display:block!important;width:11px!important;height:11px!important;max-width:11px!important;max-height:11px!important}

.designer-stage-mockups .designer-mockup-upload-form-compact{display:grid;gap:10px;min-width:0}
.designer-stage-mockups .designer-mockup-copy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.designer-stage-mockups .designer-mockup-copy-grid label,
.designer-stage-mockups .designer-mockup-notes{display:block;margin:0;font-size:8.5px;font-weight:700;color:#363d48;min-width:0}
.designer-stage-mockups .designer-mockup-copy-grid label>span,
.designer-stage-mockups .designer-mockup-notes>span{font-weight:400;color:#9299a5}
.designer-stage-mockups .designer-mockup-copy-grid textarea,
.designer-stage-mockups .designer-mockup-notes textarea{
  width:100%;box-sizing:border-box;margin-top:5px;padding:9px 10px;border:1px solid #dfe3ea;border-radius:9px;
  background:#fff;font:inherit;line-height:1.45;resize:vertical
}
.designer-stage-mockups .designer-mockup-copy-grid textarea{min-height:86px;max-height:180px}
.designer-stage-mockups .designer-mockup-notes textarea{min-height:48px;max-height:120px}

.designer-stage-mockups .designer-mockup-assets-grid{
  display:grid;grid-template-columns:minmax(210px,.75fr) minmax(300px,1.25fr);gap:10px;align-items:stretch;min-width:0
}
.designer-stage-mockups .designer-mockup-file-field{
  display:flex;flex-direction:column;justify-content:center;min-width:0;padding:10px 11px;
  border:1px solid #e5e8ee;border-radius:10px;background:#fafbfc
}
.designer-stage-mockups .designer-mockup-field-title{display:block;font-size:8.5px;font-weight:700;color:#363d48}
.designer-stage-mockups .designer-mockup-file-field>small{display:block;margin:2px 0 7px;font-size:7.5px;line-height:1.4;color:#8b93a0}
.designer-stage-mockups .designer-mockup-file-field input[type=file]{width:100%;max-width:100%;padding:6px 7px;border:1px solid #dfe3ea;border-radius:8px;background:#fff;box-sizing:border-box;font-size:8px}
.designer-stage-mockups .designer-existing-author-photo-compact{margin:0;padding:8px 10px;border-radius:10px;grid-column:1;min-width:0}
.designer-stage-mockups .designer-existing-author-photo-compact img{width:38px!important;height:38px!important;max-width:38px!important;max-height:38px!important;object-fit:cover;border-radius:9px}
.designer-stage-mockups .designer-existing-author-photo-compact strong{font-size:8.5px}
.designer-stage-mockups .designer-existing-author-photo-compact small{font-size:7.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}
.designer-stage-mockups .designer-mockup-files-main{grid-column:2;grid-row:1}
.designer-stage-mockups .designer-mockup-files-main.has-existing-photo{grid-row:1 / span 2}

.designer-stage-mockups .designer-mockup-submit-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:1px;min-width:0}
.designer-stage-mockups .designer-marketing-kit-note-compact{flex:1;min-width:0;margin:0;padding:8px 10px;border-radius:10px}
.designer-stage-mockups .designer-marketing-kit-note-compact>span{width:27px!important;height:27px!important;min-width:27px;max-width:27px;overflow:hidden}
.designer-stage-mockups .designer-marketing-kit-note-compact>span svg{display:block!important;width:14px!important;height:14px!important;max-width:14px!important;max-height:14px!important}
.designer-stage-mockups .designer-marketing-kit-note-compact small{font-size:7.8px;line-height:1.4}
.designer-stage-mockups .designer-mockup-submit-bar>.secondary-btn{flex:0 0 auto;white-space:nowrap}

@media(max-width:980px){
  .designer-stage-mockups .designer-mockup-reference-bar{grid-template-columns:58px minmax(0,1fr)}
  .designer-stage-mockups .designer-mockup-reference-cover{width:58px!important;height:84px!important;min-width:58px;max-width:58px!important;max-height:84px!important}
  .designer-stage-mockups .designer-mockup-reference-cover img{width:58px!important;height:84px!important;max-width:58px!important;max-height:84px!important}
  .designer-stage-mockups .designer-mockup-reference-marketing{grid-column:1/-1}
  .designer-stage-mockups .designer-mockup-assets-grid{grid-template-columns:1fr 1fr}
  .designer-stage-mockups .designer-mockup-submit-bar{align-items:stretch;flex-direction:column}
  .designer-stage-mockups .designer-mockup-submit-bar>.secondary-btn{width:100%;justify-content:center}
}
@media(max-width:700px){
  .designer-stage-mockups .designer-mockup-reference-bar{grid-template-columns:50px minmax(0,1fr);padding:10px}
  .designer-stage-mockups .designer-mockup-reference-cover{width:50px!important;height:72px!important;min-width:50px;max-width:50px!important;max-height:72px!important}
  .designer-stage-mockups .designer-mockup-reference-cover img{width:50px!important;height:72px!important;max-width:50px!important;max-height:72px!important}
  .designer-stage-mockups .designer-mockup-delivery-card{padding:11px}
  .designer-stage-mockups .designer-mockup-delivery-head{flex-direction:column;gap:7px}
  .designer-stage-mockups .designer-mockup-copy-grid,.designer-stage-mockups .designer-mockup-assets-grid{grid-template-columns:1fr}
  .designer-stage-mockups .designer-mockup-files-main,.designer-stage-mockups .designer-existing-author-photo-compact{grid-column:auto;grid-row:auto}
  .designer-stage-mockups .designer-mockup-copy-grid textarea{min-height:82px}
}


/* Fase 9 · Marketing · resumen visual compacto */
.marketing-overview-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 16px
}
.marketing-overview-card{
  position:relative;display:flex;align-items:center;gap:14px;min-width:0;min-height:94px;
  padding:16px 18px;border:1px solid #e5e7ee;border-radius:15px;background:#fff;
  box-shadow:0 5px 18px rgba(25,31,45,.035);overflow:hidden
}
.marketing-overview-card::after{
  content:"";position:absolute;width:94px;height:94px;border-radius:50%;right:-28px;top:-38px;opacity:.55;pointer-events:none
}
.marketing-overview-card.is-upcoming{border-color:#e8ddfb;background:linear-gradient(135deg,#fff 0%,#fbf8ff 100%)}
.marketing-overview-card.is-upcoming::after{background:#eee4ff}
.marketing-overview-card.is-material{border-color:#dceee7;background:linear-gradient(135deg,#fff 0%,#f7fcfa 100%)}
.marketing-overview-card.is-material::after{background:#e1f7ee}
.marketing-overview-icon{
  position:relative;z-index:1;width:42px;height:42px;min-width:42px;display:grid;place-items:center;
  border-radius:12px;background:#f0e8ff;color:#7428df
}
.marketing-overview-card.is-material .marketing-overview-icon{background:#e6f7ef;color:#11855f}
.marketing-overview-icon svg{display:block;width:19px;height:19px;max-width:19px;max-height:19px}
.marketing-overview-copy{position:relative;z-index:1;min-width:0}
.marketing-overview-copy>span{display:block;font-size:7.5px;font-weight:800;letter-spacing:.11em;color:#848c99}
.marketing-overview-value{display:flex;align-items:baseline;gap:6px;margin-top:3px}
.marketing-overview-value strong{font-size:25px;line-height:1;font-weight:700;letter-spacing:-.04em;color:#202631}
.marketing-overview-value small{font-size:9px;font-weight:600;color:#7d8592}
.marketing-overview-copy p{margin:5px 0 0;max-width:430px;font-size:8.7px;line-height:1.45;color:#8a919d}

.marketing-project-card>summary{transition:background .16s ease}
.marketing-project-card>summary:hover{background:#fcfaff}
.marketing-project-card[open]{border-color:#ddd0f7;box-shadow:0 12px 30px rgba(68,35,120,.07)}
.marketing-project-card[open]>summary{background:linear-gradient(90deg,#fff 0%,#fbf8ff 100%)}
.marketing-project-summary-meta{padding-left:14px;border-left:1px solid #eff0f4;min-width:0}
.marketing-project-card>summary>.status-pill{justify-self:end;white-space:nowrap}

@media(max-width:820px){
  .marketing-overview-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
  .marketing-overview-card{min-height:84px;padding:13px 14px}
  .marketing-overview-icon{width:38px;height:38px;min-width:38px}
  .marketing-overview-value strong{font-size:22px}
}

/* ========================================================================== */
/* DuxSuite · Fase 10B · ISBN financiero + publicación en plataformas         */
/* ========================================================================== */
.designer-stage-publication .designer-stage-number{background:#eef2ff;color:#4f46e5}
.publication-stage-body{display:grid;gap:16px}
.publication-flow-note{display:flex;gap:11px;align-items:center;padding:12px 13px;border:1px solid #e5def6;border-radius:12px;background:linear-gradient(135deg,#faf8ff,#fff)}
.publication-flow-note>span{width:34px;height:34px;flex:0 0 34px;border-radius:10px;display:grid;place-items:center;background:#efe9ff;color:#6d28d9}.publication-flow-note>span svg{width:16px;height:16px}
.publication-flow-note strong{display:block;font-size:10px;color:#2e2444}.publication-flow-note p{margin:3px 0 0;font-size:8.5px;line-height:1.5;color:#7c8490}
.publication-group{display:grid;gap:9px}.publication-group-head span{display:block;font-size:7px;font-weight:800;letter-spacing:.11em;color:#7c3aed}.publication-group-head strong{display:block;margin-top:3px;font-size:9px;font-weight:500;color:#7c8490}
.publication-channel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.publication-channel-card{min-width:0;border:1px solid #e6e8ee;border-radius:13px;background:#fff;overflow:hidden}.publication-channel-card.is-completed{border-color:#cdebdc;background:#fbfffd}.publication-channel-card.is-locked{background:#fafbfc}
.publication-channel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px;border-bottom:1px solid #eef0f4}.publication-channel-head>div{min-width:0}.publication-channel-head strong{display:block;font-size:10px;color:#2d3440}.publication-channel-head small{display:block;margin-top:3px;font-size:8px;line-height:1.45;color:#89919d}.publication-channel-head>.status-pill{flex:0 0 auto}
.publication-channel-form{display:grid;gap:10px;padding:12px}.publication-links-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.publication-links-grid.is-single{grid-template-columns:1fr}.publication-links-grid label{min-width:0}.publication-links-grid label>span,.publication-notes{display:block;font-size:7.5px;font-weight:700;color:#697386}.publication-links-grid input,.publication-notes textarea{width:100%;margin-top:4px;border:1px solid #dfe3eb;border-radius:8px;background:#fff;padding:8px 9px;font:inherit;color:#2d3440}.publication-notes textarea{resize:vertical}.publication-notes>span{font-weight:400;color:#9aa1ac}
.publication-channel-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}.publication-complete-note{display:inline-flex;align-items:center;gap:5px;color:#16815d;font-size:8px;font-weight:700}.publication-complete-note svg{width:13px;height:13px}
.publication-lock-note{display:flex;align-items:center;gap:10px;margin:12px;padding:11px;border:1px dashed #dce0e8;border-radius:10px;background:#fff;color:#7d8795}.publication-lock-note>span{width:31px;height:31px;flex:0 0 31px;border-radius:9px;display:grid;place-items:center;background:#f1f3f6;color:#7c8490}.publication-lock-note>span svg{width:14px;height:14px}.publication-lock-note strong{display:block;font-size:9px;color:#4b5563}.publication-lock-note small{display:block;margin-top:2px;font-size:7.8px;line-height:1.45}.publication-lock-note.is-config{border-color:#eadfc6;background:#fffdf7}.publication-lock-note.is-config>span{background:#fff6da;color:#9a6a00}
.publication-static-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.publication-static-links a{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:7px 8px;border:1px solid #e7e9ef;border-radius:8px;text-decoration:none;color:#5c6572;background:#fff;font-size:7.8px}.publication-static-links a svg{width:12px;height:12px}.publication-static-links a:hover{border-color:#d7c8f4;color:#6d28d9}
.publication-bibliomanager-note{padding:10px 11px;border-radius:9px;background:#f8fafc;border:1px solid #e8ebf0}.publication-bibliomanager-note strong{display:block;font-size:9px;color:#394150}.publication-bibliomanager-note p{margin:3px 0 0;font-size:8px;line-height:1.5;color:#7d8794}

.author-publication-panel{margin-top:14px;padding:13px;border:1px solid #e5dff2;border-radius:14px;background:linear-gradient(135deg,#fbf9ff,#fff)}.author-publication-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.author-publication-head>span{width:36px;height:36px;flex:0 0 36px;border-radius:10px;display:grid;place-items:center;background:#efe8ff;color:#6d28d9}.author-publication-head>span svg{width:16px;height:16px}.author-publication-head strong{display:block;font-size:10px;color:#2d3440}.author-publication-head p{margin:3px 0 0;font-size:8.5px;line-height:1.5;color:#7e8794}
.author-publication-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.author-publication-card{min-width:0;border:1px solid #e7e9ee;border-radius:11px;background:#fff;padding:10px}.author-publication-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.author-publication-card-head>div>span{display:block;font-size:6.5px;font-weight:800;letter-spacing:.1em;color:#119669}.author-publication-card-head strong{display:block;margin-top:2px;font-size:9.5px;color:#303744}.author-publication-card>p{margin:8px 0 0;font-size:8.3px;line-height:1.55;color:#737c89}.author-publication-links{display:grid;gap:5px;margin-top:9px}.author-publication-links a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 8px;border:1px solid #e7e9ef;border-radius:8px;background:#fafbfc;text-decoration:none;color:#5e6674;font-size:7.8px}.author-publication-links a:hover{border-color:#d9c9f7;color:#6d28d9}.author-publication-links a svg{width:12px;height:12px;flex:0 0 12px}

@media(max-width:980px){.publication-channel-grid,.author-publication-grid{grid-template-columns:1fr}}
@media(max-width:680px){.publication-links-grid,.publication-static-links{grid-template-columns:1fr}.publication-channel-actions{align-items:stretch;flex-direction:column}.publication-channel-actions .primary-btn,.publication-channel-actions .secondary-btn{width:100%;justify-content:center}}
