/* CCCA Capacitación — identidad autónoma; no modifica los estilos del tema activo. */
.ccca-cap{--cca-navy:#111d40;--cca-blue:#203866;--cca-gold:#b38b54;--cca-gold2:#d4b985;--cca-muted:#6b7b91;--cca-line:#e5eaf0;--cca-bg:#f5f7fa;color:#21324c;font-family:Inter,'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:14px;line-height:1.55;box-sizing:border-box;letter-spacing:normal}
.ccca-cap *, .ccca-cap *:before,.ccca-cap *:after{box-sizing:border-box}
.ccca-cap a{text-decoration:none;color:#1e497a}
.ccca-cap h1,.ccca-cap h2,.ccca-cap h3,.ccca-cap h4{font-family:Inter,'Manrope',system-ui,sans-serif;letter-spacing:-.034em;line-height:1.18;margin:0;color:#182e50}
.ccca-cap h1{font-size:clamp(29px,3vw,37px);font-weight:780}
.ccca-cap h2{font-size:clamp(21px,2.5vw,29px);font-weight:750}
.ccca-cap h3{font-size:20px;font-weight:750}
.ccca-cap h4{font-size:16px}
.ccca-cap p{color:#6b7b91;margin:0 0 12px}
.ccca-cap input,.ccca-cap select,.ccca-cap button,.ccca-cap textarea{font-family:inherit;font-size:14px;line-height:1.5}
.ccca-cap button{cursor:pointer}
.ccca-cap select,.ccca-cap input:not([type=checkbox]):not([type=radio]):not([type=file]),.ccca-cap textarea{border:1px solid #dbe4ee;background:#fff;border-radius:10px;padding:11px 12px;min-height:43px;color:#172a43;max-width:100%;outline:0;transition:box-shadow .2s,border-color .2s}
.ccca-cap select:focus,.ccca-cap input:focus,.ccca-cap textarea:focus{border-color:#aa8d5e;box-shadow:0 0 0 3px rgba(179,139,84,.12)}
.ccca-cap input[type=file]{border:1px dashed #bfcad7;background:#f9fafc;padding:13px;border-radius:10px;width:100%}
.ccca-cap input[type=checkbox]{accent-color:#17315c;width:16px;height:16px;cursor:pointer}
.ccca-cap .ccca-eyebrow{display:block;letter-spacing:.18em;color:#b58d54;font-weight:800;font-size:10px;text-transform:uppercase;margin-bottom:11px}
.ccca-cap .ccca-btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid #111d40;border-radius:10px;background:#111d40;color:#fff;padding:11px 18px;min-height:44px;font-weight:700;text-decoration:none;box-shadow:0 10px 24px rgba(16,29,64,.10);transition:transform .23s ease,background .23s ease,box-shadow .23s ease}
.ccca-cap .ccca-btn:hover{background:#213a6b;box-shadow:0 12px 29px rgba(16,29,64,.16);transform:translateY(-2px);color:#fff}
.ccca-cap .ccca-alert{padding:16px 19px;border-radius:12px;margin-bottom:18px;font-size:13px;line-height:1.6}
.ccca-cap .ccca-alert.good{border:1px solid #b7dacb;color:#17634e;background:#edfaf3}
.ccca-cap .ccca-alert.bad{border:1px solid #ecd1cd;color:#8e3832;background:#fff3f2}
.ccca-cap .ccca-muted,.ccca-cap .ccca-small{color:#768398;font-size:12px}
.ccca-cap .ccca-honeypot{position:absolute!important;left:-9999px!important;opacity:0!important}
.ccca-cap .ccca-field{display:flex;flex-direction:column;gap:8px;font-weight:650;font-size:12px;color:#253c58;min-width:0}
.ccca-cap .ccca-field small{font-size:11px;color:#8593a3;font-weight:400}
.ccca-cap .ccca-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.ccca-cap .ccca-empty{background:#fff;border:1px solid #e2e7ef;border-radius:19px;text-align:center;padding:50px 25px}
.ccca-cap .ccca-empty h2{margin-bottom:14px}
.ccca-public{max-width:1120px;margin:40px auto 65px;padding:0 20px}
.ccca-public-heading{background:linear-gradient(116deg, #10183d,#1d3c60);border-radius:22px;padding:clamp(28px,5vw,64px);color:#fff;margin-bottom:22px;position:relative;overflow:hidden}
.ccca-public-heading:after{content:'';position:absolute;right:-130px;top:-190px;width:520px;height:520px;border:1px solid rgba(255,255,255,.1);border-radius:50%;box-shadow:0 0 0 105px rgba(255,255,255,.025);pointer-events:none}
.ccca-public-heading h1{font-size:clamp(34px,5vw,58px);color:#fff;max-width:680px;line-height:1.06;margin-bottom:22px}
.ccca-public-heading h1 em{font-style:normal;color:#d3b47e}
.ccca-public-heading p{color:#e4e9f2;font-size:16px;max-width:560px;line-height:1.85}
.ccca-form{display:grid;gap:20px}
.ccca-form-section{background:#fff;border:1px solid #e5e9f1;border-radius:20px;padding:clamp(20px,3vw,35px);box-shadow:0 9px 36px rgba(20,42,72,.035)}
.ccca-section-title{display:flex;gap:17px;align-items:start;margin-bottom:27px}
.ccca-section-title>span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#f5f0e7;color:#a47d43;font-weight:800;flex-shrink:0}
.ccca-section-title h2{font-size:23px;margin-bottom:4px}
.ccca-section-title p{font-size:13px;margin:0}
.ccca-workshops{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.ccca-workshop{border:1px solid #e2e8f0;border-radius:13px;background:#fbfcfe;padding:16px 14px;display:flex;align-items:flex-start;gap:11px;cursor:pointer;transition:border-color .2s,box-shadow .2s,background .2s}
.ccca-workshop:hover{border-color:#c2a16f;box-shadow:0 8px 22px rgba(12,31,62,.05)}
.ccca-workshop.is-selected{border-color:#ac8a53;background:#fdfaf6}
.ccca-workshop input{margin-top:3px;flex-shrink:0}
.ccca-workshop-data{display:flex;flex-direction:column;gap:7px;flex:1;min-width:0}
.ccca-workshop-data strong{font-size:13px;line-height:1.45;color:#203755}
.ccca-workshop-data small{font-size:11px;color:#7a899b}
.ccca-price{font-weight:780;white-space:nowrap;color:#132c52;font-size:12px}
.ccca-total{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:19px 23px;background:#f2f5f9;border-radius:13px;margin-top:17px}
.ccca-total span{color:#526b87;font-weight:550}
.ccca-total strong{font-size:25px;color:#102a51}
.ccca-submit-row{padding:20px 26px;border-radius:18px;background:#fff;border:1px solid #e4eaf1;display:flex;justify-content:space-between;gap:22px;align-items:center}
.ccca-consent{display:flex;align-items:flex-start;gap:12px;flex:1;color:#596d84;font-size:12px}
.ccca-consent input{margin-top:3px}
.ccca-portal{display:block;width:100%;margin:0;transform:none;min-height:100vh;border-radius:0;background:#eef2f7;overflow:visible;border:0;box-shadow:none}
.ccca-sidebar{background:linear-gradient(170deg,#111b3c,#152c4e 90%);padding:28px 18px 24px;display:flex;flex-direction:column;color:#e2e9f4;min-width:0;position:fixed;left:0;top:0;bottom:0;width:290px;height:100vh;overflow:auto}
.ccca-sidebar:after{content:'';position:absolute;width:390px;height:390px;border:1px solid #ffffff0d;border-radius:50%;left:-250px;bottom:30px;pointer-events:none}
.ccca-brand{display:flex;gap:12px;align-items:center;padding:6px 8px 34px;border-bottom:1px solid #ffffff19;margin-bottom:24px}
.ccca-mark{display:inline-grid;place-items:center;background:#e0bb81;color:#192d4d;font-size:25px;width:40px;height:40px;border-radius:12px;flex-shrink:0}
.ccca-brand strong{font-size:18px;color:#fff;letter-spacing:-.02em;display:block;line-height:1.2}
.ccca-brand small{font-size:10px;color:#c4cfdf}
.ccca-menu-label{font-size:10px;letter-spacing:.16em;color:#aabbd1;font-weight:800;padding:0 13px 12px}
.ccca-sidebar-nav{display:flex;flex-direction:column;gap:5px;z-index:1}
.ccca-sidebar-nav a{display:block;color:#dbe5f0;font-size:13px;font-weight:580;padding:12px 14px;border-radius:9px;transition:background .2s,color .2s,transform .2s}
.ccca-sidebar-nav a:hover{background:#ffffff12;color:#fff;transform:translateX(2px)}
.ccca-sidebar-nav a.active{background:#d5b17d;color:#152442;font-weight:800}
.ccca-sidebar-foot{margin-top:auto;border-top:1px solid #ffffff1a;padding:18px 12px 0;display:flex;flex-direction:column;gap:12px;font-size:12px;color:#c2cfe0;z-index:1}
.ccca-sidebar-foot strong{color:#fff}
.ccca-sidebar-foot a{color:#d7bb91;font-weight:700}
.ccca-main{margin-left:290px;padding:34px clamp(24px,3.1vw,46px) 45px;min-width:0;min-height:100vh}
.ccca-top{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:27px}
.ccca-top h1{font-size:30px}
.ccca-top-actions{display:flex;gap:16px;align-items:center;font-size:12px;font-weight:700}
.ccca-top-avatar{display:inline-grid;place-items:center;background:#e7e9f0;color:#213957;width:36px;height:36px;border-radius:50%;font-weight:800}
.ccca-summary-intro{display:flex;align-items:start;justify-content:space-between;gap:22px;margin:4px 0 23px}
.ccca-summary-intro h2{font-size:23px;margin-bottom:7px}
.ccca-summary-intro p{font-size:13px;max-width:680px}
.ccca-pill{background:#edf1f8;color:#61728b;border:1px solid #e1e7f0;border-radius:999px;padding:7px 12px;white-space:nowrap;font-size:11px;font-weight:730}
.ccca-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:21px}
.ccca-stat{min-width:0;padding:19px 19px 20px;border:1px solid #e6eaf1;border-radius:16px;background:#fff;display:flex;flex-direction:column;gap:9px;box-shadow:0 8px 25px rgba(19,38,71,.028)}
.ccca-stat span{color:#6d7e95;font-size:12px;font-weight:650}
.ccca-stat strong{font-size:clamp(22px,2.6vw,31px);color:#1b3457;letter-spacing:-.045em;line-height:1.15;font-weight:780;white-space:normal;overflow-wrap:anywhere}
.ccca-stat small{font-size:11px;color:#99a5b5}
.ccca-two-col{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.ccca-panel{min-width:0;background:#fff;border:1px solid #e6eaf0;border-radius:17px;padding:22px;margin-bottom:20px;box-shadow:0 8px 28px rgba(12,33,61,.025)}
.ccca-panel h3{font-size:17px;margin-bottom:10px}
.ccca-panel h4{margin:18px 0 12px}
.ccca-panel-head{display:flex;justify-content:space-between;gap:15px;align-items:start;margin-bottom:19px}
.ccca-panel-head h3{margin-bottom:5px}
.ccca-panel-head p{font-size:12px;margin:0}
.ccca-mini-link{font-weight:760;white-space:nowrap;font-size:12px}
.ccca-bar-item{margin:13px 0 18px}
.ccca-bar-item>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:12px;font-weight:750;color:#3b5070;margin-bottom:6px}
.ccca-bar-item>div:first-child span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.ccca-bar-item small{color:#96a1b0;font-size:10px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:5px}
.ccca-bar{height:7px;border-radius:8px;background:#eff2f8;overflow:hidden}
.ccca-bar span{display:block;height:100%;background:linear-gradient(90deg,#c4a273,#e0c594);border-radius:8px}
.ccca-program-sum{padding:13px 0;border-bottom:1px solid #edf0f4;display:flex;flex-direction:column;gap:4px}
.ccca-program-sum strong{font-size:12px;color:#213b5a}
.ccca-program-sum small{font-size:11px;color:#7a899a}
.ccca-table-wrap{max-width:100%;overflow:auto;border-radius:10px}
.ccca-table{width:100%;min-width:650px;border-collapse:collapse;background:white;font-size:12px;text-align:left}
.ccca-table th{background:#f4f6fa;font-size:10px;text-transform:uppercase;letter-spacing:.075em;color:#718098;padding:14px 13px;white-space:nowrap}
.ccca-table td{padding:14px 13px;border-bottom:1px solid #edf0f5;vertical-align:middle;color:#3c4e65;line-height:1.65}
.ccca-table td strong{color:#1e344f}
.ccca-table td small{color:#8c9aad;font-size:11px}
.ccca-table td a{color:#1c5081;font-weight:750}
.ccca-table td a:hover{text-decoration:underline}
.ccca-chip{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-weight:760;font-size:10px;background:#f1f3f7;color:#607288;white-space:nowrap}
.ccca-chip-approved,.ccca-chip-delivered,.ccca-chip-open{background:#e7f8ef;color:#1e7b54}
.ccca-chip-rejected,.ccca-chip-closed{background:#ffeae6;color:#a04b40}
.ccca-chip-pending,.ccca-chip-registered{background:#fff5dd;color:#986e28}
.ccca-chip-issued{background:#eaf0ff;color:#4167a8}
.ccca-search{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 20px}
.ccca-search input{flex:1;min-width:140px}
.ccca-search button,.ccca-inline button{background:#1d355b;color:#fff;border:0;border-radius:9px;padding:9px 15px;font-weight:710;white-space:nowrap}
.ccca-inline{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ccca-inline input{max-width:155px}
.ccca-inline select{max-width:140px}
.ccca-back{display:inline-block;margin-bottom:18px;font-weight:750}
.ccca-person-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}
.ccca-person-head h2{margin-bottom:6px}
.ccca-program-editor{padding:18px 0;border-bottom:1px solid #e4eaf0}
.ccca-program-fields input:first-child{min-width:250px;flex:1}
.ccca-course-row input:nth-of-type(2){min-width:230px;flex:1}
.ccca-course-row input{max-width:130px}
.ccca-import-form{border:1px solid #e5ebf2;background:#fcfdfe;border-radius:15px;padding:22px;margin:18px 0}
.ccca-import-form .ccca-btn{margin-top:22px}
.ccca-import-notes{padding:8px 4px 0}
.ccca-export-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}
.ccca-export-card{padding:22px 18px;min-height:115px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #dae3ed;border-radius:12px;background:#f8fafc;transition:transform .2s,border-color .2s}
.ccca-export-card:hover{border-color:#bda17a;transform:translateY(-2px)}
.ccca-export-card span{font-size:12px;color:#566981;font-weight:700}
.ccca-export-card strong{font-size:12px;color:#1c416d}
.ccca-auth{max-width:560px;margin:0 auto;min-height:100vh;display:flex;align-items:center;padding:28px 18px}
.ccca-auth-card{background:#fff;padding:42px;border:1px solid #e0e6ef;border-radius:22px;box-shadow:0 16px 50px rgba(13,30,52,.09)}
.ccca-auth-card h1{margin-bottom:18px}
.ccca-auth-card h1 em{font-style:normal;color:#b68d56}
.ccca-auth-card form{margin:22px 0}
.ccca-auth-card form p{margin-bottom:15px}
.ccca-auth-card label{display:block;font-size:13px;color:#344964;font-weight:730;margin-bottom:8px}
.ccca-auth-card input.input{width:100%}
.ccca-auth-card #wp-submit{background:#111d40;color:white;border:0;border-radius:10px;padding:12px 30px;font-size:13px;cursor:pointer}
@media(max-width:1100px){.ccca-portal{grid-template-columns:210px minmax(0,1fr)}.ccca-main{padding:28px 20px}.ccca-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ccca-two-col{grid-template-columns:1fr}}
@media(max-width:760px){.ccca-portal{display:block;width:calc(100% - 20px);margin:14px 50% 40px;border-radius:15px}.ccca-sidebar{padding:18px;min-height:0}.ccca-brand{padding-bottom:14px;margin-bottom:12px}.ccca-menu-label{display:none}.ccca-sidebar-nav{flex-direction:row;gap:6px;overflow:auto;padding-bottom:5px}.ccca-sidebar-nav a{white-space:nowrap;font-size:12px;padding:10px 12px}.ccca-sidebar-foot{display:none}.ccca-main{padding:20px 15px 30px}.ccca-top h1{font-size:25px}.ccca-summary-intro{display:block}.ccca-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ccca-workshops{grid-template-columns:1fr}.ccca-submit-row{display:block}.ccca-submit-row button{margin-top:17px;width:100%}.ccca-export-grid{grid-template-columns:1fr}.ccca-public{padding:0 12px;margin:20px auto}}
@media(max-width:530px){.ccca-stats{grid-template-columns:1fr 1fr;gap:9px}.ccca-stat{padding:13px}.ccca-stat strong{font-size:22px}.ccca-fields{grid-template-columns:1fr}.ccca-top-actions a{display:none}.ccca-public-heading{padding:27px 23px}.ccca-total strong{font-size:20px}.ccca-total span{font-size:12px}.ccca-form-section{padding:17px}.ccca-person-head{display:block}.ccca-person-head .ccca-btn{margin-top:14px}.ccca-auth-card{padding:25px}}
@media(prefers-reduced-motion:reduce){.ccca-cap *{transition-duration:.01ms!important;scroll-behavior:auto!important}}

.ccca-cap .ccca-workshop[hidden]{display:none!important}


.ccca-portal-page{background:#eef2f7;margin:0}
.ccca-portal-page #wpadminbar{position:fixed}
body.admin-bar .ccca-sidebar{top:32px;height:calc(100vh - 32px)}
@media(max-width:782px){body.admin-bar .ccca-sidebar{top:46px;height:calc(100vh - 46px)}}
.ccca-mark{font-size:13px;font-weight:800;letter-spacing:.02em}
.ccca-brand{padding:10px 8px 28px;border-bottom:1px solid #ffffff19;margin-bottom:22px}
.ccca-sidebar-foot{padding-bottom:8px}
.ccca-top{padding-top:2px}
.ccca-auth-card{width:100%}
.ccca-auth-card .login-username,.ccca-auth-card .login-password,.ccca-auth-card .login-remember{margin-bottom:14px}
.ccca-auth-card .login-remember label{display:flex;align-items:center;gap:8px;font-weight:500;font-size:12px;color:#516175}
.ccca-auth-card #wp-submit{width:100%;font-weight:700}
@media(max-width:1100px){.ccca-main{margin-left:290px}.ccca-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ccca-two-col{grid-template-columns:1fr}}
@media(max-width:900px){.ccca-portal{display:block}.ccca-sidebar{position:static;width:auto;height:auto;min-height:0}.ccca-main{margin-left:0;min-height:0}.ccca-sidebar:after{display:none}}
@media(max-width:760px){.ccca-portal{display:block;width:100%;margin:0;border-radius:0}.ccca-sidebar{padding:18px;min-height:0}.ccca-brand{padding-bottom:14px;margin-bottom:12px}.ccca-menu-label{display:none}.ccca-sidebar-nav{flex-direction:row;gap:6px;overflow:auto;padding-bottom:5px}.ccca-sidebar-nav a{white-space:nowrap;font-size:12px;padding:10px 12px}.ccca-sidebar-foot{display:none}.ccca-main{padding:20px 15px 30px}.ccca-top h1{font-size:25px}.ccca-summary-intro{display:block}.ccca-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ccca-workshops{grid-template-columns:1fr}.ccca-submit-row{display:block}.ccca-submit-row button{margin-top:17px;width:100%}.ccca-export-grid{grid-template-columns:1fr}.ccca-public{padding:0 12px;margin:20px auto}}

/* 1.1 — Portal institucional: interfaz autónoma de escritorio */
.ccca-portal-page {background:#f2f5fa!important;color:#1d314d!important}
.ccca-portal-page .ccca-portal{background:#f2f5fa!important}
.ccca-cap .ccca-sidebar{z-index:20;width:278px;background:linear-gradient(168deg,#0b123b 0%,#132349 63%,#182e51 100%);padding:28px 18px 22px;box-shadow:12px 0 32px rgba(12,28,56,.045)}
.ccca-cap .ccca-main{margin-left:278px;padding:37px clamp(22px,3.25vw,54px) 60px}
.ccca-cap .ccca-brand{display:flex;align-items:center;gap:13px;margin:0 0 30px;padding:2px 6px 25px;border-bottom:1px solid rgba(255,255,255,.11)}
.ccca-cap .ccca-brand-image{height:54px;width:54px;flex-shrink:0;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;letter-spacing:.04em;font-weight:850;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.11);overflow:hidden}
.ccca-cap .ccca-brand-image img{height:100%;width:100%;object-fit:contain;padding:4px}
.ccca-cap .ccca-brand strong{font-size:15px;font-weight:800;line-height:1.24;letter-spacing:-.028em}
.ccca-cap .ccca-brand small{font-size:10px;color:#c9d6ea;line-height:1.5;margin-top:5px;display:block}
.ccca-cap .ccca-menu-label{color:#9caecc;padding:0 12px 13px;font-size:9px;font-weight:800}
.ccca-cap .ccca-sidebar-nav{gap:7px}
.ccca-cap .ccca-sidebar-nav a{display:flex;align-items:center;gap:12px;padding:13px 12px;border-radius:10px;font-weight:600;color:#d7e1f1;font-size:13px;transition:background .22s ease,transform .22s ease,color .22s ease}
.ccca-cap .ccca-sidebar-nav a:hover{transform:translateX(3px);background:rgba(255,255,255,.07)}
.ccca-cap .ccca-sidebar-nav a.active{background:#d2ae79;color:#0c1b35;box-shadow:0 7px 23px rgba(0,0,0,.12)}
.ccca-cap .ccca-menu-icon{font-size:14px;min-width:22px;display:inline-flex;align-items:center;justify-content:center;opacity:.9;font-weight:700}
.ccca-cap .ccca-sidebar-foot{border-top:1px solid rgba(255,255,255,.12);padding:18px 10px 7px;gap:14px}
.ccca-cap .ccca-sidebar-foot small{font-size:10px;letter-spacing:.065em;color:#aabbcf}
.ccca-cap .ccca-sidebar-foot strong{font-size:13px;font-weight:740;overflow-wrap:anywhere}
.ccca-cap .ccca-sidebar-foot a{color:#dfbe8c}
.ccca-cap .ccca-top{margin-bottom:31px;align-items:flex-end}
.ccca-cap .ccca-top h1{font-size:clamp(27px,3vw,35px)}
.ccca-cap .ccca-top-actions a{padding:10px 15px;border-radius:10px;background:#fff;border:1px solid #e0e7ef;color:#193c63;transition:box-shadow .2s,transform .2s}
.ccca-cap .ccca-top-actions a:hover{transform:translateY(-2px);box-shadow:0 7px 20px rgba(30,55,89,.08)}
.ccca-cap .ccca-top-avatar{background:#e4edf8;border:1px solid #d1dfee}
.ccca-cap .ccca-summary-intro{margin:3px 0 27px}
.ccca-cap .ccca-summary-intro h2{font-size:clamp(21px,2vw,26px)}
.ccca-cap .ccca-summary-intro .ccca-eyebrow{margin-bottom:9px}
.ccca-cap .ccca-stats{gap:15px;margin-bottom:23px}
.ccca-cap .ccca-stat{border:1px solid #e1e8f1;padding:23px 22px 22px;gap:12px;position:relative;box-shadow:0 4px 21px rgba(16,46,84,.025);border-radius:17px;min-height:151px;transition:transform .25s ease,box-shadow .25s ease}
.ccca-cap .ccca-stat:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(16,46,84,.07)}
.ccca-cap .ccca-stat::after{content:'↗';position:absolute;right:17px;top:18px;color:#b19b78;font-size:18px;opacity:.65}
.ccca-cap .ccca-stat:nth-child(5){border-top:2px solid #d9ae7d}
.ccca-cap .ccca-stat strong{font-size:clamp(24px,2.7vw,33px);font-weight:820}
.ccca-cap .ccca-panel{border:1px solid #e0e7ef;border-radius:17px;box-shadow:0 3px 20px rgba(30,61,103,.025);padding:24px}
.ccca-cap .ccca-table th{background:#f5f7fb}
.ccca-cap .ccca-table tbody tr:hover{background:#fbfcff}
.ccca-cap .ccca-pill{background:#eaf0f8;color:#345575}
.ccca-cap .ccca-import-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:23px 0}
.ccca-cap .ccca-import-kpis>div{padding:17px;background:#f6f8fb;border:1px solid #e2e8f0;border-radius:13px;display:flex;flex-direction:column;gap:3px}
.ccca-cap .ccca-import-kpis strong{font-size:25px;font-weight:800;color:#17345a}
.ccca-cap .ccca-import-kpis span{color:#61738b;font-size:11px;font-weight:700}
.ccca-cap .ccca-import-tag{border-radius:7px;padding:5px 9px;font-size:10px;white-space:nowrap;font-weight:750}
.ccca-cap .ccca-import-lista{background:#e7f7ed;color:#1f7547}
.ccca-cap .ccca-import-revisar{background:#fff2d8;color:#98601b}
.ccca-cap .ccca-import-omitida{background:#fee9e8;color:#ac4540}
.ccca-cap .ccca-import-table{min-width:950px}
.ccca-cap .ccca-import-table details{margin-top:11px;border:1px solid #e3e9f1;border-radius:9px;padding:9px}
.ccca-cap .ccca-import-table details summary{cursor:pointer;color:#244b7e;font-weight:700;font-size:11px}
.ccca-cap .ccca-import-source{max-height:290px;overflow:auto;background:#f7f9fc;padding:10px;margin-top:10px;border-radius:8px;display:grid;gap:6px}
.ccca-cap .ccca-import-source div{overflow-wrap:anywhere;font-size:11px;border-bottom:1px solid #e6edf5;padding-bottom:5px}
.ccca-cap .ccca-import-pagination{display:flex;justify-content:center;gap:24px;align-items:center;padding:20px}
.ccca-cap .ccca-import-pagination a{font-weight:700}
.ccca-cap .ccca-import-confirm{border-top:1px solid #e6eaf2;margin-top:20px;padding-top:23px;display:flex;align-items:end;justify-content:space-between;gap:24px;flex-wrap:wrap}
.ccca-cap .ccca-import-confirm form{display:flex;align-items:flex-end;gap:17px;flex-wrap:wrap;justify-content:flex-end}
.ccca-cap .ccca-import-ack{max-width:340px;display:flex;align-items:flex-start;gap:10px;font-size:12px;font-weight:650;color:#4c6078}
.ccca-cap .ccca-import-ack input{margin:3px 0 0}
.ccca-cap .ccca-import-confirm .ccca-btn:disabled{opacity:.45;cursor:not-allowed}
.ccca-cap.ccca-auth{max-width:none;min-height:100vh;padding:32px 20px;background:radial-gradient(ellipse at 82% 16%,#1d355f 0,transparent 43%),linear-gradient(130deg,#0c163b,#182e4c);display:flex;justify-content:center;align-items:center}
.ccca-cap .ccca-auth-card{width:min(500px,100%);background:#fff;border:0;padding:clamp(28px,3.5vw,47px);border-radius:22px;box-shadow:0 28px 75px rgba(0,10,31,.25)}
.ccca-cap .ccca-auth-card .ccca-eyebrow{margin-bottom:12px}
.ccca-cap .ccca-auth-brand{display:flex;align-items:center;gap:12px;padding-bottom:24px;margin-bottom:26px;border-bottom:1px solid #e3e7ee;color:#1f3858;font-size:11px;font-weight:800;line-height:1.45;letter-spacing:.025em}
.ccca-cap .ccca-auth-brand img,.ccca-cap .ccca-auth-icon{width:56px;height:56px;object-fit:contain;flex:0 0 56px;border-radius:12px}
.ccca-cap .ccca-auth-icon{display:grid;place-items:center;background:#173258;color:#fff}
.ccca-cap .ccca-auth-card h1{font-size:clamp(29px,3vw,39px)}
.ccca-cap .ccca-auth-card #wp-submit{min-height:46px;border-radius:10px;width:100%;font-weight:750;box-shadow:0 12px 25px rgba(12,23,62,.12)}
.ccca-cap .ccca-auth-card form{margin-top:26px}
.ccca-cap .ccca-auth-card form input[type=text],.ccca-cap .ccca-auth-card form input[type=password]{width:100%}
.ccca-cap.ccca-readonly .ccca-main form[action*="admin-post.php"]{display:none!important}
.ccca-cap.ccca-no-approval .ccca-main form input[name="task"][value="payment_review"]{display:none}
@media(max-width:1150px){.ccca-cap .ccca-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.ccca-cap .ccca-sidebar{position:static;width:100%;height:auto;min-height:0;padding:18px 15px}.ccca-cap .ccca-main{margin-left:0;padding:22px 15px}.ccca-cap .ccca-brand{margin-bottom:12px;padding-bottom:12px}.ccca-cap .ccca-sidebar-nav{display:flex;flex-direction:row;overflow:auto;padding-bottom:8px}.ccca-cap .ccca-sidebar-nav a{white-space:nowrap}.ccca-cap .ccca-sidebar-foot{display:none}}
@media(max-width:560px){.ccca-cap .ccca-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ccca-cap .ccca-stat{padding:17px 13px;min-height:130px}.ccca-cap .ccca-stat strong{font-size:23px}.ccca-cap .ccca-import-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ccca-cap .ccca-top{align-items:start;gap:9px}.ccca-cap .ccca-top-actions{gap:5px}}

.ccca-cap .ccca-source-ficha{margin-top:12px;font-size:11px;max-width:430px}
.ccca-cap .ccca-source-ficha summary{cursor:pointer;color:#254c7b;font-weight:750}

/* v1.2 — directorio completo, edición modal y registro académico */
.ccca-directory .ccca-panel-head{align-items:center}
.ccca-live-search{margin:0 0 20px}
.ccca-live-search>label{display:block;font-size:12px;font-weight:800;color:#354966;margin-bottom:8px}
.ccca-search-field{position:relative;max-width:670px}
.ccca-search-field>span{position:absolute;left:15px;top:48%;transform:translateY(-50%);font-size:25px;color:#8696a9;pointer-events:none}
.ccca-cap .ccca-search-field input{width:100%;padding-left:47px!important;border-radius:12px;min-height:50px;font-size:14px;background:#fff}
.ccca-live-search .ccca-small{margin-top:9px}
.ccca-no-matches{text-align:center;padding:36px!important;color:#768398}
.ccca-directory-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:17px}
.ccca-directory-foot p{margin:0}
.ccca-pager{display:flex;gap:10px;align-items:center;color:#61718b;font-size:12px}
.ccca-pager button{color:#182f50;background:#fff;border:1px solid #dce4ef;border-radius:9px;min-height:38px;padding:7px 12px;font-weight:700}
.ccca-pager button:hover:not(:disabled){border-color:#ba9b6c;background:#fcf9f5}
.ccca-pager button:disabled{opacity:.4;cursor:not-allowed}
.ccca-person-head{margin-bottom:24px}
.ccca-person-actions{display:flex;gap:12px;align-items:center}
.ccca-cap .ccca-btn-outline{background:#fff;color:#1c365d;border-color:#d9e3ef;box-shadow:none;gap:8px}
.ccca-cap .ccca-btn-outline:hover{background:#f5f7fb;color:#192f4b;border-color:#afc0d5;box-shadow:none}
.ccca-cap .ccca-btn-light{background:#edf3fa;color:#183d65;border-color:#edf3fa;box-shadow:none}
.ccca-cap .ccca-btn-light:hover{background:#e6eff8;color:#183d65;box-shadow:none}
.ccca-cap .ccca-btn-small{padding:8px 12px;min-height:36px;font-size:12px}
.ccca-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 22px}
.ccca-detail-item{display:flex;flex-direction:column;gap:6px;padding:14px 0;border-bottom:1px solid #edf0f6;min-width:0}
.ccca-detail-item span{font-size:11px;color:#7d8ca2;font-weight:700}
.ccca-detail-item strong{font-size:13px;color:#233955;font-weight:650;overflow-wrap:anywhere}
.ccca-academic-year{margin-top:22px;border:1px solid #e1e7ef;border-radius:15px;overflow:hidden;background:#fff}
.ccca-academic-year-head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px 22px;background:#eef2f8;border-bottom:1px solid #e1e7ef}
.ccca-year-number{font-size:22px;font-weight:800;color:#1d3657;letter-spacing:-.04em}
.ccca-year-count{font-size:11px;color:#798ba0;font-weight:700}
.ccca-year-courses{display:flex;flex-direction:column}
.ccca-course-item{display:grid;grid-template-columns:minmax(200px,2fr) minmax(100px,1fr) minmax(155px,1.25fr) auto;align-items:center;gap:14px;padding:17px 22px;border-bottom:1px solid #edf0f5}
.ccca-course-item:last-child{border-bottom:0}
.ccca-course-title{display:flex;flex-direction:column;gap:4px;min-width:0}
.ccca-course-title strong{color:#213e61;font-size:13px;line-height:1.4}
.ccca-course-title small{font-size:11px;color:#8292a6}
.ccca-course-code{color:#b18b56!important;font-size:10px;font-weight:800;letter-spacing:.12em}
.ccca-course-meta{display:flex;flex-direction:column;gap:7px;align-items:flex-start;font-size:12px}
.ccca-course-meta>span:first-child{font-size:10px;font-weight:750;color:#8090a5}
.ccca-course-meta>strong{font-size:12px;font-weight:650;color:#314a68;overflow-wrap:anywhere}
.ccca-course-actions{display:flex;justify-content:flex-end}
.ccca-empty-academic{padding:24px;border-radius:10px;background:#f7f9fc;color:#7c8b9f}
.ccca-payment-add{margin-top:28px;border-top:1px solid #e6ebf2;padding-top:22px}
.ccca-payment-add h4{margin:0 0 18px;color:#1b3658}
.ccca-payment-form{display:block}
.ccca-payment-form .ccca-fields{row-gap:20px}
.ccca-payment-actions{margin-top:28px;padding-top:5px;display:flex;justify-content:flex-start}
.ccca-modal[hidden]{display:none!important}
.ccca-modal{position:fixed;z-index:999999;inset:0;display:flex;justify-content:center;align-items:flex-start;overflow:auto;padding:clamp(18px,6vh,65px) 18px;background:rgba(8,22,42,.66);backdrop-filter:blur(5px)}
body.ccca-modal-open{overflow:hidden}
.ccca-modal-window{width:min(740px,100%);max-height:calc(100vh - 2*clamp(18px,6vh,65px));display:flex;flex-direction:column;background:#fff;border:1px solid #dfe5ef;border-radius:19px;box-shadow:0 24px 90px rgba(0,0,0,.23);overflow:hidden}
.ccca-modal-head{flex-shrink:0;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 28px;border-bottom:1px solid #e8edf4}
.ccca-modal-head h2{font-size:24px}
.ccca-modal-head p{font-size:12px;margin:7px 0 0}
.ccca-modal .ccca-modal-close{flex-shrink:0;display:grid;place-items:center;width:36px;height:36px;border:1px solid #dce5f0;border-radius:10px;background:#f6f8fb;color:#243a5a;font-size:26px;line-height:1;cursor:pointer}
.ccca-modal .ccca-modal-close:hover{background:#eaeff6}
.ccca-modal-body{overflow:auto;padding:25px 28px 27px}
.ccca-modal-body .ccca-fields{gap:20px}
.ccca-modal-actions{margin-top:27px;padding-top:17px;border-top:1px solid #edf0f4;display:flex;justify-content:flex-end}
.ccca-modal-course-name{margin:0 0 20px!important;font-weight:700;color:#2f4261!important}
.ccca-modal-body form.ccca-inline,.ccca-modal-body .ccca-inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:center}
.ccca-modal-body form.ccca-edit-form input:not([type=checkbox]):not([type=radio]),.ccca-modal-body form.ccca-edit-form select{width:100%;max-width:none}
.ccca-modal-body form.ccca-edit-form>button[type=submit]{margin-top:19px}
@media(max-width:1180px){.ccca-course-item{grid-template-columns:1fr 1fr}.ccca-course-actions{justify-content:flex-start}.ccca-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.ccca-course-item{grid-template-columns:1fr;gap:12px}.ccca-detail-grid{grid-template-columns:1fr}.ccca-modal-head{padding:18px}.ccca-modal-body{padding:18px}.ccca-modal-body form.ccca-inline,.ccca-modal-body .ccca-inline{grid-template-columns:1fr}}

/* v1.3: administración de cuentas y logotipo institucional del portal */
.ccca-users-panel .ccca-panel-head{align-items:center}
.ccca-users-panel .ccca-table{min-width:650px}
.ccca-user-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.ccca-user-actions form{margin:0}
.ccca-cap .ccca-btn-danger{background:#fff5f3;color:#963e39;border:1px solid #ebcac5;box-shadow:none}
.ccca-cap .ccca-btn-danger:hover{background:#fbe5e2;color:#7d2925;border-color:#ccaaa6}
.ccca-sidebar .ccca-brand-image img{object-fit:contain;max-width:100%;max-height:100%}

/* Portal Institucional 1.4: autenticación propia, edición de formulario y reportes */
.ccca-cap .ccca-auth-logo{display:grid;place-items:center;width:78px;height:78px;margin:0 auto 22px;border-radius:19px;background:#edf2f7;font-weight:800;font-size:20px;color:#13294e}
.ccca-cap .ccca-auth-logo img{width:100%;height:100%;object-fit:contain;padding:6px}
.ccca-cap.ccca-auth .ccca-auth-card{text-align:left}
.ccca-cap.ccca-auth .ccca-auth-card h1{font-size:clamp(30px,4vw,43px);margin-bottom:10px}
.ccca-cap .ccca-access-form{display:grid;gap:18px;margin-top:24px}
.ccca-cap .ccca-access-form .ccca-field{font-size:13px;gap:7px}
.ccca-cap .ccca-access-form input:not([type=checkbox]){width:100%;min-height:48px}
.ccca-cap .ccca-access-form .ccca-btn{width:100%;margin-top:4px}
.ccca-cap .ccca-remember{display:flex;gap:10px;align-items:center;font-size:12px;color:#64748b}
.ccca-cap .ccca-access-back{display:inline-flex;font-weight:700;color:#294c79;margin-top:20px;font-size:12px}
.ccca-cap .ccca-year-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 25px}
.ccca-cap .ccca-year-tabs a{padding:10px 17px;font-size:13px;font-weight:800;border:1px solid #dce5ef;border-radius:10px;background:#fff;color:#2d496e}
.ccca-cap .ccca-year-tabs a.active{background:#14284d;color:#fff;border-color:#14284d}
.ccca-cap .ccca-form-config{display:grid;gap:1px}
.ccca-cap .ccca-form-config .ccca-panel{margin-bottom:18px}
.ccca-cap .ccca-config-table{min-width:650px}
.ccca-cap .ccca-config-table input:not([type=checkbox]){min-width:220px;width:100%;height:43px}
.ccca-cap .ccca-config-table input[type=checkbox]{width:18px;height:18px}
.ccca-cap .ccca-form-control-actions{display:flex;justify-content:flex-end}
.ccca-cap .ccca-form-control-actions .ccca-btn{margin:0}
.ccca-cap .ccca-form-link-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px}
.ccca-cap .ccca-form-link-row input{flex:1;min-width:240px}
.ccca-cap .ccca-form-link-row .ccca-btn{white-space:nowrap}
.ccca-cap .ccca-export-filters{margin:18px 0 24px}
.ccca-cap .ccca-export-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:13px}
.ccca-cap .ccca-export-card{min-height:128px;background:#fff;border-color:#e2e8f0;padding:20px}
.ccca-cap .ccca-export-card strong{font-size:15px;color:#162f54}
.ccca-cap .ccca-export-actions{display:flex;gap:10px;align-items:center;margin-top:18px}
.ccca-cap .ccca-export-download{padding:7px 13px;background:#f0f4f8;border-radius:8px;color:#16365f!important;font-weight:750;font-size:12px;border:1px solid #d9e2ec}
.ccca-cap .ccca-export-download:hover{background:#dfebf7}
/* El formulario de inscripciones ocupa su página dedicada sin heredar la cabecera institucional. */
body.ccca-portal-page:has(.ccca-public){background:#f4f6fa}
body.ccca-portal-page .ccca-public{margin-top:32px}
@media(max-width:640px){.ccca-cap .ccca-form-link-row{flex-direction:column;align-items:stretch}.ccca-cap .ccca-form-link-row .ccca-btn{width:100%}}

/* Portal 1.5: inscripciones como hoja de datos y formularios de cursos. */
.ccca-main,.ccca-year-view,.ccca-registration-panel{min-width:0;max-width:100%}
.ccca-year-view[aria-busy=true]>section,.ccca-year-view[aria-busy=true]>.ccca-stats{opacity:.55}
.ccca-cap .ccca-year-status:empty{display:none}
.ccca-cap .ccca-year-status{font-size:12px;color:#254a72;margin:-12px 0 18px}
.ccca-cap .ccca-sheet-scroll{overflow:auto;max-width:100%;max-height:68vh;border:1px solid #dce3ec;border-radius:8px;scrollbar-gutter:stable}
.ccca-cap .ccca-registration-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:12px}
.ccca-cap .ccca-registration-table th{position:sticky;top:0;z-index:2;background:#103a60;color:#fff;text-transform:none;letter-spacing:0;font-size:12px;border-right:1px solid #43617f;white-space:nowrap;padding:13px 15px}
.ccca-cap .ccca-registration-table td{min-width:150px;max-width:310px;padding:11px 15px;border-right:1px solid #e1e6ed;border-bottom:1px solid #e1e6ed;vertical-align:top;white-space:normal;overflow-wrap:anywhere;line-height:1.55}
.ccca-cap .ccca-registration-table tbody tr:nth-child(even){background:#f6f8fb}
.ccca-cap .ccca-registration-table tbody tr:hover{background:#edf3fb}
.ccca-cap .ccca-registration-table th:first-child,.ccca-cap .ccca-registration-table td:first-child{position:sticky;left:0;min-width:55px;width:55px;max-width:55px;text-align:center;background:#edf1f7;z-index:1;color:#5c6d84}
.ccca-cap .ccca-registration-table th:first-child{z-index:3;background:#103a60;color:#fff}
.ccca-cap .ccca-registration-table .ccca-registration-date{min-width:190px;white-space:nowrap;font-variant-numeric:tabular-nums}
.ccca-cap .ccca-registration-table .ccca-registration-courses{min-width:310px;max-width:380px}
.ccca-registration-courses>div+div,.ccca-registration-cert+.ccca-registration-cert{margin-top:10px;padding-top:9px;border-top:1px solid #dde4ed}
.ccca-registration-original{margin-top:10px;min-width:220px;max-width:320px}
.ccca-registration-original summary{cursor:pointer;color:#1e497a;font-weight:650}
.ccca-registration-original dl{margin:12px 0 0}
.ccca-registration-original dt{font-weight:700;color:#4f6480;margin-top:9px;font-size:11px}
.ccca-registration-original dd{margin:2px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.ccca-enrollment-filters{align-items:end;gap:12px;flex-wrap:wrap}
.ccca-enrollment-filters>label{display:flex;flex:1;flex-direction:column;gap:6px;font-size:12px;font-weight:650;min-width:190px}
.ccca-enrollment-filters input,.ccca-enrollment-filters select{width:100%}
.ccca-cap .ccca-code-input{display:flex;align-items:stretch;border:1px solid #dbe4ee;border-radius:10px;overflow:hidden;background:#f0f4f9}
.ccca-cap .ccca-code-input>span{display:flex;align-items:center;justify-content:center;min-width:48px;padding:0 12px;color:#17345b;font-weight:800;font-size:15px}
.ccca-cap .ccca-code-input>input{min-width:0;flex:1;width:100%;border:0!important;border-left:1px solid #dbe4ee!important;border-radius:0!important}
.ccca-cap input[readonly]{background:#f0f4f8!important;color:#566a84!important;cursor:default}
.ccca-form-actions{display:flex;margin-top:24px;justify-content:flex-end}
.ccca-check-field{display:flex;gap:10px;align-items:flex-start;margin-top:18px;font-size:12px;line-height:1.6}
.ccca-check-field input{flex-shrink:0;margin-top:3px}
.ccca-program-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.ccca-fixed-schedule .ccca-panel-head p{font-size:18px;font-weight:700;color:#314d6b;margin:9px 0 0}
.ccca-pager a{display:inline-flex;padding:9px 13px;border:1px solid #dce5ef;border-radius:8px;background:#fff;font-size:12px;font-weight:700}
@media(max-width:650px){.ccca-enrollment-filters{display:grid;grid-template-columns:1fr}.ccca-enrollment-filters>label{min-width:0}.ccca-program-actions{justify-content:flex-start}.ccca-fixed-schedule .ccca-panel-head{align-items:flex-start;gap:16px;flex-direction:column}.ccca-cap .ccca-sheet-scroll{max-height:65vh}}

/* Portal 1.6: administración de cursos, tabla completa y control académico. */
.ccca-course-create-actions{display:flex;gap:12px;margin:0 0 22px;flex-wrap:wrap}
.ccca-course-toggle,.ccca-collapse-all{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #d8e1ed;background:#f7f9fc;color:#264569;border-radius:9px;min-height:38px;padding:6px 12px;font-weight:700;cursor:pointer}
.ccca-course-toggle{min-width:40px;font-size:23px;padding:0}
.ccca-collapse-all{font-size:12px}
[data-course-list][hidden],tr[data-registration-row][hidden],[data-registration-empty][hidden],[data-document-session-label][hidden]{display:none!important}
.ccca-live-search{margin:14px 0 20px;max-width:620px}
.ccca-live-search label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:650}
.ccca-live-search input{width:100%}
.ccca-cap .ccca-registration-table th button{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;color:inherit;background:transparent;border:0;padding:0;font-size:12px;font-weight:750;white-space:nowrap;cursor:pointer}
.ccca-sort-icon{color:#c2d5ea;font-size:15px}
.ccca-cap .ccca-registration-table th:first-child,.ccca-cap .ccca-registration-table td:first-child{position:static;left:auto;min-width:150px;max-width:310px;width:auto;text-align:left;background:inherit;color:inherit;z-index:auto}
.ccca-cap .ccca-registration-table th:first-child{position:sticky;top:0;background:#103a60;color:#fff;z-index:2}
.ccca-cap .ccca-registration-table td:first-child{white-space:nowrap;font-variant-numeric:tabular-nums}
.ccca-registration-count{margin-top:15px!important}
.ccca-cap .ccca-certificate-action{padding:8px 12px;border:1px solid #d1d8e1;border-radius:8px;background:#e9edf2;color:#526070;font-size:11px;font-weight:750;white-space:nowrap;min-height:36px}
.ccca-cap .ccca-certificate-action.is-delivered{background:#dff4e9;border-color:#acd8c1;color:#1b6b4a;opacity:1}
.ccca-cap .ccca-certificate-action:disabled{cursor:default}
.ccca-voucher-window{width:min(1050px,100%)}
.ccca-voucher-preview{display:block;width:100%;max-height:65vh;object-fit:contain;background:#f3f5f8;border:0;border-radius:8px;margin-bottom:18px}
iframe.ccca-voucher-preview{height:65vh}
.ccca-course-selector form{display:flex;align-items:flex-end;gap:14px}
.ccca-course-selector .ccca-field{flex:1}
.ccca-course-selector select{width:100%}
.ccca-attendance-table{min-width:1000px}
.ccca-attendance-table th small{font-size:10px;color:#72839a}
.ccca-cap .ccca-attendance-mark{min-width:116px;padding:8px!important;font-size:11px!important;font-weight:650}
.ccca-attendance-mark.mark-P{background:#e6f6ed!important;border-color:#b3dac6!important;color:#176044!important}
.ccca-attendance-mark.mark-A{background:#fff0ef!important;border-color:#ebc1bc!important;color:#943c35!important}
.ccca-attendance-mark.mark-T{background:#fff6df!important;border-color:#e4cf8e!important;color:#795b18!important}
.ccca-attendance-mark.mark-J{background:#e9f1fc!important;border-color:#bad0ee!important;color:#315c92!important}
.ccca-cap .ccca-attendance-mark:disabled{opacity:1;cursor:default}
.ccca-document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:25px}
.ccca-document-card{display:flex;flex-direction:column;gap:15px;padding:24px;border:1px solid #dde5ef;border-radius:14px;background:#fbfcfe;min-width:0}
.ccca-document-card h4{font-size:18px;line-height:1.35}
.ccca-document-card p{font-size:12px;line-height:1.7}
.ccca-document-icon{font-size:27px;color:#aa844a}
.ccca-document-downloads{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto}
.ccca-document-downloads .ccca-btn{font-size:12px;padding:9px 13px;gap:8px}
@media(max-width:1100px){.ccca-document-grid{grid-template-columns:1fr}.ccca-document-card{gap:13px}.ccca-course-selector form{display:block}}
@media(min-width:901px){.ccca-cap .ccca-sidebar{display:flex;flex-direction:column;height:100vh}.ccca-cap .ccca-sidebar-nav{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin}.ccca-cap .ccca-sidebar .ccca-brand,.ccca-cap .ccca-sidebar .ccca-menu-label,.ccca-cap .ccca-sidebar-foot{flex-shrink:0}}
/* Portal 1.7: inscripción por niveles y espacio académico. */
.ccca-public-v17 .ccca-workshops{display:block}
.ccca-cap .ccca-span-all{grid-column:1/-1}
.ccca-public-v17{max-width:1160px!important}.ccca-public-v17 .ccca-public-heading{max-width:900px;margin-inline:auto;text-align:center}.ccca-public-v17 .ccca-form-section{padding:32px;border:1px solid #e0e7ef;border-radius:22px;background:#fff;margin-bottom:22px}.ccca-course-filter{display:grid;grid-template-columns:1.6fr 1fr;gap:18px}.ccca-selection-strip{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;background:#f0f5fa;padding:14px 18px;border-radius:12px;margin:20px 0;color:#284666}.ccca-selection-strip>span{font-weight:700}.ccca-selection-strip small{color:#5c6f85}.ccca-course-level-title{border-bottom:1px solid #dce5ef;margin:25px 0 14px}.ccca-course-level-title h3{font-size:20px!important;margin:0 0 12px!important;color:#123250}.ccca-course-choice{display:grid!important;grid-template-columns:minmax(0,1fr) 235px;gap:20px!important;align-items:center;padding:22px!important;margin:12px 0;background:#fff;border:1px solid #dde5ee!important;border-radius:15px!important;transition:border-color .18s,box-shadow .18s}.ccca-course-choice.is-selected{border-color:#2f608d!important;box-shadow:0 0 0 2px #e0eaf4}.ccca-course-choice-label{display:flex;gap:16px;align-items:flex-start;cursor:pointer;min-width:0}.ccca-course-choice-label>input{flex:0 0 20px;width:20px;height:20px;margin:5px 0}.ccca-course-choice-label:has(input:disabled){opacity:.62}.ccca-course-choice.is-selected .ccca-course-choice-label{opacity:1}.ccca-course-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px;font-size:12px;color:#536a81}.ccca-course-meta b{font-size:13px;color:#123250}.ccca-mode-badge{display:inline-flex;align-items:center;border-radius:20px;background:#eaf3ee;color:#285e41;padding:4px 10px;font-weight:700;font-size:11px}.ccca-mode-badge.is-virtual{background:#edf0fc;color:#3f5094}.ccca-course-choice .ccca-workshop-data strong{display:block;white-space:normal!important;font-size:16px!important;line-height:1.5!important;color:#183855}.ccca-course-choice .ccca-workshop-data>small{display:block;line-height:1.5;margin-top:7px}.ccca-course-choice-side{text-align:right;display:flex;align-items:flex-end;flex-direction:column;gap:8px;min-width:0}.ccca-course-choice-side .ccca-price{font-size:21px;font-weight:750;color:#163d62;white-space:nowrap}.ccca-course-choice-side>small{color:#397453;font-size:11px}.ccca-course-more{font-size:11px;font-weight:700;display:flex;justify-content:center;gap:6px;padding:10px 13px;border-radius:9px;border:1px solid #d5e1ef;color:#244d75;text-decoration:none;line-height:1.4!important;text-align:center;white-space:normal!important;max-width:100%}.ccca-course-more:hover{background:#eff5fb}.ccca-selection-message{color:#a13a38;font-size:14px}.ccca-invoice-section{margin-top:26px;padding-top:24px;border-top:1px solid #dce5ef}.ccca-invoice-section h3{font-size:18px!important;margin:0 0 18px!important}.ccca-payment-summary{border:1px solid #dce6ef;background:#f6f9fc;border-radius:15px;padding:22px;margin-bottom:22px}.ccca-payment-summary>div{display:flex;justify-content:space-between;padding:8px 0;gap:15px}.ccca-payment-summary .ccca-payment-total{border-top:1px solid #d5e0ec;margin-top:10px;padding-top:18px;font-size:22px;font-weight:750;color:#173e62}.ccca-bank-details{background:#fff;border:1px solid #dae5ef;border-radius:15px;padding:22px;margin-bottom:26px}.ccca-bank-details h3{font-size:18px!important;margin:0 0 20px!important}.ccca-bank-details dl{display:grid;grid-template-columns:1fr 1fr;gap:19px 24px;margin:0}.ccca-bank-details dt{font-size:11px;color:#62778b;font-weight:700;margin-bottom:5px}.ccca-bank-details dd{margin:0;overflow-wrap:anywhere;font-size:15px;line-height:1.5;color:#1b3a56}.ccca-cap [hidden]{display:none!important}
.ccca-profile-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:25px}.ccca-course-profile h1{font-size:clamp(24px,3vw,37px);line-height:1.28;overflow-wrap:anywhere}.ccca-course-profile h2{font-size:20px;margin:26px 0 14px}.ccca-course-flyer{width:100%;height:auto;display:block;border-radius:10px}.ccca-course-facts dt{font-size:12px;color:#60758a;margin:18px 0 5px;font-weight:700}.ccca-course-facts dd{margin:0;line-height:1.5;overflow-wrap:anywhere}.ccca-benefit{padding:14px;background:#eff6f0;color:#346346;border-radius:9px;line-height:1.5}.ccca-course-profile-fields{border-top:1px solid #dbe5ef;margin-top:10px;padding-top:22px}.ccca-course-profile-fields h3{font-size:18px;margin:0 0 10px}
.ccca-document-card{min-width:0}.ccca-document-card h4{white-space:normal!important;overflow:visible!important;overflow-wrap:anywhere;line-height:1.45!important;font-size:17px!important;min-height:50px}.ccca-document-card p{line-height:1.55}.ccca-document-downloads{flex-wrap:wrap!important}.ccca-document-downloads a{white-space:normal!important;text-align:center}.ccca-course-selector .ccca-field{max-width:100%;width:100%;min-width:0}.ccca-course-selector form{width:100%}.ccca-course-selector select{max-width:100%}.ccca-course-selector [data-selected-course-title]{font-size:13px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;color:#516b83}
.ccca-teaching-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.ccca-teaching-card h3{line-height:1.45;font-size:20px;margin-top:18px}.ccca-window-summary{display:flex;flex-direction:column;gap:9px;padding:18px;background:#f0f5fa;border-radius:12px;margin:18px 0;font-size:14px;color:#294b6a}.ccca-window-summary small{color:#647a8e}.ccca-course-card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.ccca-grade-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.ccca-grade-actions button{white-space:normal!important;line-height:1.5!important;text-align:left!important;font-size:12px!important;padding:17px!important;display:block!important}.ccca-grade-actions strong{font-size:13px}.ccca-grades-table th{white-space:normal!important;min-width:100px;line-height:1.45}.ccca-grades-table td:nth-child(3){min-width:260px}.ccca-grades-table td:not(:nth-child(3)){text-align:center}.ccca-grade-final{font-weight:800;color:#22623e;background:#f0f7f1}.ccca-legacy-mark{display:block;font-size:10px;color:#687c90;margin-top:5px;white-space:nowrap}.ccca-attendance-table th{text-align:center;white-space:normal;line-height:1.5}.ccca-attendance-table th:nth-child(3){min-width:260px}.ccca-attendance-table [data-attendance-cell]{min-width:108px}.ccca-scan-panel input[type=file]{width:100%}.ccca-scan-panel table select{min-width:100px}.ccca-scan-preview-image{max-width:100%;max-height:300px;object-fit:contain;border:1px solid #d7e2ed}.ccca-scan-warning{color:#986b20;background:#fff6df}.ccca-scan-page{border-top:1px solid #dce5ee;margin-top:22px;padding-top:22px}
.ccca-export-card h4{font-size:18px;margin:0 0 12px}.ccca-export-card p{font-size:13px;line-height:1.6;color:#62778c;min-height:63px}.ccca-export-card{min-width:0}.ccca-export-actions{flex-wrap:wrap;gap:9px!important}.ccca-export-download{white-space:normal!important;text-align:center}.ccca-export-picker{position:relative;display:none}.ccca-export-picker.is-ready{display:block}.ccca-export-picker>button{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:48px;border:1px solid #ccd9e7;border-radius:9px;background:#fff;color:#153656;text-align:left;font:inherit;padding:12px 14px;line-height:1.45;white-space:normal;overflow-wrap:anywhere}.ccca-export-options{position:absolute;z-index:30;top:calc(100% + 7px);left:0;right:0;background:#fff;box-shadow:0 12px 40px #15304a29;border:1px solid #d3deea;border-radius:13px;padding:14px;max-height:440px;overflow:auto}.ccca-export-options label{font-size:12px}.ccca-export-options input{width:100%;margin:7px 0 12px}.ccca-export-options [role=listbox]>button{display:flex;flex-direction:column;gap:5px;width:100%;padding:12px;text-align:left;border:0;border-radius:7px;border-bottom:1px solid #e8eef5;background:#fff;color:#183c5d;line-height:1.5;white-space:normal;overflow-wrap:anywhere;font:inherit;font-size:13px}.ccca-export-options [role=listbox]>button:hover,.ccca-export-options [aria-selected=true]{background:#eef4fa!important}.ccca-export-options small{font-size:11px;color:#677e94}.ccca-import-table td{vertical-align:top}.ccca-import-table [data-import-reason]{min-width:230px;white-space:normal;line-height:1.5}.ccca-import-preview [data-import-confirm]{margin-top:25px}.ccca-import-preview [data-import-confirm] label{margin-bottom:18px}.ccca-import-preview input[type=checkbox]{width:18px;height:18px}.ccca-cap [data-import-fields]{margin-top:22px}.ccca-cap [data-import-fields] textarea{min-height:44px;resize:vertical}
@media(max-width:900px){.ccca-teaching-grid,.ccca-profile-layout{grid-template-columns:1fr}.ccca-grade-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.ccca-course-choice{grid-template-columns:1fr 200px}.ccca-course-filter{grid-template-columns:1fr}.ccca-public-v17 .ccca-form-section{padding:24px}}
@media(max-width:600px){.ccca-course-choice{grid-template-columns:1fr;gap:15px!important;padding:17px!important}.ccca-course-choice-side{align-items:flex-start;flex-direction:row;flex-wrap:wrap;justify-content:space-between;text-align:left}.ccca-course-choice-side>small{width:100%;order:3}.ccca-course-more{max-width:190px}.ccca-bank-details dl{grid-template-columns:1fr}.ccca-grade-actions{grid-template-columns:1fr}.ccca-payment-summary .ccca-payment-total{font-size:19px}.ccca-public-v17 .ccca-form-section{padding:19px}.ccca-document-card h4{min-height:0}.ccca-export-options{max-height:360px}}
