:root{--blue:#245388;--blue-mid:#385384;--blue-dark:#1a3e6b;--pink:#ff4fa3;--ink:#11213a;--muted:#647084;--line:#dfe5ee;--soft:#f5f7fb;--white:#fff;--radius:12px;--shadow:0 4px 20px #0000000d}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--ink);background:#f4f6fb;font-family:DM Sans,Arial,sans-serif;font-size:14px;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.app-shell{width:min(1480px,100%);margin:0 auto;padding:0 24px 48px}.topbar{z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#f4f6fbf2;justify-content:space-between;align-items:center;margin-bottom:32px;padding:14px 0;display:flex;position:sticky;top:0}.brand{color:var(--blue);letter-spacing:.04em;background:0 0;border:0;align-items:center;gap:12px;padding:0;font-size:15px;font-weight:800;display:flex}.brand img{width:110px}.brand span{color:var(--blue)}.sync-pill{background:var(--white);border:1px solid var(--line);color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:12px;font-weight:500;display:inline-flex}.sync-pill i{background:#18a574;border-radius:50%;width:7px;height:7px;display:block}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px;display:flex}.eyebrow{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:700}h1{color:var(--ink);font-size:clamp(28px,4vw,48px);font-weight:800;line-height:1.1}h2{color:var(--ink);font-size:clamp(20px,3vw,32px);font-weight:700}.search{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);height:42px;color:var(--ink);width:100%;min-width:240px;padding:0 14px 0 34px;transition:border-color .15s,box-shadow .15s}.search:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #2453881a}.course-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;display:grid}.course-card{position:relative}.course-card-main{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);text-align:left;flex-direction:column;justify-content:space-between;gap:20px;width:100%;height:100%;padding:20px 22px;transition:box-shadow .15s,border-color .15s,opacity .15s,filter .15s;display:flex}.course-card-main:hover{border-color:var(--blue);box-shadow:0 4px 24px #3853841a}.course-card--hidden .course-card-main{opacity:.55}.course-card--finished .course-card-main{filter:grayscale(.4);opacity:.85}.curso-status-badge{z-index:1;letter-spacing:.04em;color:#64748b;background:#f1f5f9;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700;position:absolute;top:14px;right:44px}.curso-menu{z-index:2;position:absolute;top:10px;right:10px}.curso-menu>summary{cursor:pointer;list-style:none}.curso-menu>summary::-webkit-details-marker{display:none}.curso-menu-btn{width:28px;height:28px;color:var(--muted);border-radius:999px;justify-content:center;align-items:center;font-size:16px;font-weight:700;line-height:1;transition:background .15s,color .15s;display:flex}.curso-menu-btn:hover,.curso-menu[open] .curso-menu-btn{background:var(--soft);color:var(--blue)}.curso-menu-dropdown{z-index:50;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);min-width:190px;padding:6px 0;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 32px #0000001f}.cursos-filtros-row{flex-wrap:wrap;align-items:center;gap:18px;margin:-8px 0 20px;display:flex}.curso-filter-check{color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:13px;display:flex}.curso-filter-check input[type=checkbox]{cursor:pointer;width:15px;height:15px;accent-color:var(--blue)}.curso-sort-wrap{align-items:center;gap:6px;margin-left:auto;display:flex}.btn-toggle-past--icon{padding:0 14px;font-size:15px}.course-card-body{flex-direction:column;gap:10px;display:flex}.course-name{color:var(--ink);font-size:15px;font-weight:700;line-height:1.4}.course-card-meta{color:var(--muted);flex-direction:column;gap:4px;font-size:12.5px;display:flex}.card-footer{border-top:1px solid var(--line);flex-direction:column;gap:2px;padding-top:12px;display:flex}.card-updated-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:10px;font-weight:700}.card-updated-value{color:var(--muted);font-size:12px;font-weight:500}.eventos-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.eventos-toolbar .search{flex:1;min-width:200px}.btn-toggle-past{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);height:42px;color:var(--muted);white-space:nowrap;cursor:pointer;padding:0 18px;font-size:13px;transition:all .15s}.btn-toggle-past:hover,.btn-toggle-past.active{border-color:var(--blue);color:var(--blue);background:#3853840f}.eventos-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.evento-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);text-align:left;flex-direction:column;gap:8px;padding:20px;transition:box-shadow .15s,border-color .15s;display:flex}.evento-card:hover{border-color:var(--blue);box-shadow:0 4px 24px #3853841a}.evento-card strong{color:var(--ink);font-size:14px;font-weight:600}.evento-past{opacity:.55;border-style:dashed}.evento-past strong{color:var(--muted)}.evento-date{color:var(--blue);letter-spacing:.02em;font-size:12px;font-weight:600}.evento-status{letter-spacing:.03em;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.evento-status-ativo{color:#15803d;background:#dcfce7}.encerrados-sep{align-items:center;gap:12px;padding:12px 0 4px;display:flex}.encerrados-sep:before,.encerrados-sep:after{content:"";background:var(--line);flex:1;height:1px}.encerrados-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);white-space:nowrap;font-size:11px;font-weight:700}.evento-status-encerrado{color:#64748b;background:#f1f5f9}.back-btn{color:var(--muted);background:0 0;border:0;margin-bottom:6px;padding:0;font-size:13px;font-weight:500;transition:color .15s;display:block}.back-btn:hover{color:var(--blue)}.export-btns{flex-shrink:0;gap:8px;display:flex}.stats-bar{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px;display:grid}@media (width<=900px){.stats-bar{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.stats-bar{grid-template-columns:1fr}}.stat-card{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;gap:0;padding:16px 18px 14px;transition:box-shadow .15s;display:flex}.stat-card:hover{box-shadow:0 8px 28px #00000017}.stat-icon{color:var(--muted);align-items:center;margin-bottom:10px;display:flex}.stat-value{color:var(--ink);margin-bottom:4px;font-size:26px;font-weight:800;line-height:1.1}.stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:600}.stat-card--confirmado .stat-icon,.stat-card--confirmado .stat-value{color:#15803d}.stat-card--nao-confirmado .stat-icon,.stat-card--nao-confirmado .stat-value{color:#b45309}.stat-card--presente .stat-icon,.stat-card--presente .stat-value{color:#1d4ed8}.stat-card--ausente .stat-icon,.stat-card--ausente .stat-value{color:#6b7280}.stat-card--desistente .stat-icon,.stat-card--desistente .stat-value{color:#be185d}.stat-card--cancelado .stat-icon,.stat-card--cancelado .stat-value{color:#b91c1c}.stat-card--reembolsado .stat-icon,.stat-card--reembolsado .stat-value{color:#7f1d1d}.filters-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.filter-wrap{align-items:center;display:flex;position:relative}.filter-wrap--grow{flex:1;min-width:220px}.filter-icon{color:var(--muted);pointer-events:none;z-index:1;align-items:center;display:flex;position:absolute;left:10px}.filter-wrap .search{padding-left:32px}.filter-select{background:var(--white);height:44px;color:var(--ink);cursor:pointer;appearance:auto;border:1px solid #dbe3f0;border-radius:12px;min-width:150px;padding:0 36px 0 12px;font-size:13px;font-weight:500;transition:border-color .15s,box-shadow .15s}.filter-select:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #2453881a}.btn-clear{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);height:42px;color:var(--muted);padding:0 16px;font-size:13px;transition:all .15s}.btn-clear:hover{border-color:var(--blue);color:var(--blue)}.btn-export{border-radius:var(--radius);background:var(--blue);height:42px;color:var(--white);border:0;align-items:center;gap:7px;padding:0 18px;font-size:13px;font-weight:600;transition:background .18s,transform .1s;display:inline-flex}.btn-export:hover{background:var(--pink)}.btn-export:active{transform:scale(.97)}.results-count{color:var(--muted);margin-bottom:10px;font-size:12px}.table-wrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);max-height:65vh;overflow:auto}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table thead{background:var(--soft);border-bottom:1px solid var(--line);z-index:2;position:sticky;top:0}.data-table th{color:var(--muted);text-align:left;white-space:nowrap;text-transform:uppercase;letter-spacing:.05em;padding:12px 14px;font-size:11px;font-weight:600}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table th.sortable:hover,.data-table th.sort-active{color:var(--blue)}.data-table td{border-bottom:1px solid var(--line);color:var(--ink);white-space:nowrap;padding:11px 14px}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:nth-child(2n) td{background:#f8fafd}.data-table tr:hover td{background:#2453880d!important}.empty-row{text-align:center;color:var(--muted);padding:32px!important}.status-select{border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:600;transition:all .15s}.status-nao-confirmado{color:#b45309;background:#fff8e1;border-color:#fde68a}.status-confirmado{color:#15803d;background:#dcfce7;border-color:#bbf7d0}.status-presente{color:#1d4ed8;background:#dbeafe;border-color:#bfdbfe}.status-ausente{color:#6b7280;background:#f3f4f6;border-color:#d1d5db}.status-remanejado{color:#7e22ce;background:#f3e8ff;border-color:#e9d5ff}.status-desistente{color:#be185d;background:#fce7f3;border-color:#fbcfe8}.status-cancelado{color:#b91c1c;background:#fee2e2;border-color:#fecaca}.status-reembolsado{color:#7f1d1d;background:#fef2f2;border-color:#fecaca}.note{min-width:180px;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:6px;padding:4px 8px;font-size:12px;transition:all .15s}.note:hover{border-color:var(--line);background:var(--soft)}.note:focus{border-color:var(--blue);background:var(--white);outline:none}.pagination{color:var(--muted);justify-content:center;align-items:center;gap:16px;margin-top:20px;font-size:13px;display:flex}.pagination button{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);height:36px;color:var(--ink);padding:0 16px;font-size:13px;transition:all .15s}.pagination button:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.pagination button:disabled{opacity:.4;cursor:not-allowed}.impresso-btn{border:1px solid var(--line);background:var(--white);color:var(--muted);white-space:nowrap;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600;transition:all .15s}.impresso-btn:hover{border-color:var(--blue);color:var(--blue)}.impresso-btn.ativo{color:#15803d;background:#dcfce7;border-color:#bbf7d0}.badge-warn{color:#b45309;font-weight:600}.badge-ok{color:#15803d;font-weight:600}.empty,.loading{text-align:center;color:var(--muted);background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:48px;animation:.2s fade-in}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.loading:before{content:"";vertical-align:-2px;border:2px solid var(--line);border-top-color:var(--blue);border-radius:50%;width:14px;height:14px;margin-right:8px;animation:.7s linear infinite loading-spin;display:inline-block}@keyframes loading-spin{to{transform:rotate(360deg)}}.page-head-left{flex-direction:column;gap:4px;display:flex}.page-head-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:10px;display:flex}.print-counter-bar{align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.pcount{white-space:nowrap}.pcount--imp{color:#15803d}.pcount--pend{color:var(--muted)}.pcount-sep{color:var(--line)}.pcount-bar{background:var(--line);border-radius:999px;flex-shrink:0;width:80px;height:5px;overflow:hidden}.pcount-fill{background:#15803d;border-radius:999px;height:100%;transition:width .4s}.export-details{position:relative}.export-details>summary{list-style:none}.export-details>summary::-webkit-details-marker{display:none}.export-dropdown{z-index:50;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);min-width:210px;padding:6px 0;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 32px #0000001f}.dd-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:8px 14px 4px;font-size:10px;font-weight:700}.dd-item{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:9px 14px;font-size:13px;transition:background .1s;display:flex}.dd-item:hover{background:var(--soft);color:var(--blue)}.dd-item--disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.dd-sep{border:0;border-top:1px solid var(--line);margin:4px 0}.filters-toolbar{align-items:center;gap:10px;margin-bottom:6px;display:flex}.btn-filters-toggle{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);height:38px;color:var(--muted);flex-shrink:0;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:600;transition:all .15s;display:none}.btn-filters-toggle.active{border-color:var(--blue);color:var(--blue)}.batch-bar{background:var(--blue);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:10px 16px;animation:.15s slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.batch-count{color:var(--white);flex-shrink:0;margin-right:4px;font-size:13px;font-weight:700}.batch-actions{flex-wrap:wrap;gap:6px;display:flex}.batch-btn{height:32px;color:var(--white);white-space:nowrap;background:#ffffff1f;border:1px solid #ffffff4d;border-radius:8px;padding:0 14px;font-size:12px;font-weight:600;transition:background .15s}.batch-btn:hover{background:#ffffff38}.batch-btn--export{border-color:#ffffff80}.batch-btn--clear{color:#ffffffb3;background:0 0;border-color:#fff3}.batch-btn--clear:hover{color:var(--white);background:#ffffff1a}.check-col{width:40px;padding:0 0 0 12px!important}.row-check,.select-all-check{cursor:pointer;width:15px;height:15px;accent-color:var(--blue)}.row-selected td{background:#2453880f!important}.mobile-cards{display:none}.mobile-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:10px;padding:14px;transition:border-color .15s,box-shadow .15s}.mobile-card--selected{border-color:var(--blue);box-shadow:0 0 0 3px #2453881a}.mc-top{align-items:center;gap:10px;margin-bottom:10px;display:flex}.mc-check{flex-shrink:0}.mc-pedido{color:var(--muted);flex:1;font-size:12px;font-weight:600}.mc-valor{color:var(--ink);font-size:14px;font-weight:700}.mc-body{flex-direction:column;gap:2px;margin-bottom:12px;display:flex}.mc-nome{color:var(--ink);font-size:15px;font-weight:700}.mc-email{color:var(--muted);font-size:12px}.mc-meta{color:var(--muted);flex-wrap:wrap;gap:12px;margin-top:4px;font-size:12px;display:flex}.mc-bottom{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mc-bottom .status-select{flex:1;min-width:130px}.mc-action-btn{border:1px solid var(--line);background:var(--white);border-radius:8px;justify-content:center;align-items:center;min-width:44px;height:44px;font-size:16px;transition:all .15s;display:inline-flex}.mc-action-btn:hover{border-color:var(--blue);background:var(--soft)}@media (width<=767px){.page-head{flex-direction:column;align-items:flex-start;gap:12px}.page-head-right{align-items:flex-start;width:100%}.print-counter-bar{flex-wrap:wrap}.pcount-bar{width:100%;margin-top:4px}.stats-bar{grid-template-columns:repeat(2,1fr)}.btn-filters-toggle{display:inline-flex}.filters-bar{flex-direction:column;align-items:stretch;display:none}.filters-bar.filters-open{display:flex}.filter-select,.filters-bar .filter-wrap{width:100%}.filter-wrap--grow{min-width:unset}.table-wrap{display:none}.mobile-cards{display:block}.mc-bottom .impresso-btn{min-height:44px}.batch-bar{padding:10px 12px}.batch-actions{gap:6px;width:100%}.batch-btn{text-align:center;flex:1;justify-content:center;min-height:44px}}@media (width<=480px){.stats-bar{grid-template-columns:1fr 1fr}.export-dropdown,.curso-menu-dropdown{left:0;right:auto}}.row-inativo{opacity:.58}.row-inativo td{background:#fafafa!important}.td-nome-inativo,.nome-inativo{color:var(--muted);text-decoration:line-through}.mobile-card--inactive{opacity:.58;border-style:dashed}.status-inactive-badge{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border:1px solid;border-radius:6px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-block}.status-expirado{color:#c2410c;background:#fff7ed;border-color:#fed7aa}.status-pendente{color:#d97706;background:#fffbeb;border-color:#fde68a}.status-autorizado{color:#0369a1;background:#f0f9ff;border-color:#bae6fd}.status-anulado{color:#374151;background:#f9fafb;border-color:#d1d5db}.status-parcialmente-reembolsado{color:#7e22ce;background:#fdf4ff;border-color:#e9d5ff}.stat-card--expirado .stat-icon,.stat-card--expirado .stat-value{color:#c2410c}.stat-card--pendente .stat-icon,.stat-card--pendente .stat-value{color:#d97706}.stat-card--autorizado .stat-icon,.stat-card--autorizado .stat-value{color:#0369a1}.stat-card--anulado .stat-icon,.stat-card--anulado .stat-value{color:#374151}.stat-card--parcialmente-reembolsado .stat-icon,.stat-card--parcialmente-reembolsado .stat-value{color:#7e22ce}
