@keyframes pulse-attention{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(var(--primary-rgb, 16, 185, 129),.6)}30%{transform:scale(1.05);box-shadow:0 0 0 8px rgba(var(--primary-rgb, 16, 185, 129),0)}60%{transform:scale(1);box-shadow:0 0 0 0 rgba(var(--primary-rgb, 16, 185, 129),.3)}80%{transform:scale(1.03);box-shadow:0 0 0 4px rgba(var(--primary-rgb, 16, 185, 129),0)}to{transform:scale(1);box-shadow:none}}@keyframes flashBannerIn{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes flashBannerOut{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}@keyframes flashToastIn{0%{transform:translateX(110%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes flashToastOut{0%{transform:translateX(0);opacity:1}to{transform:translateX(110%);opacity:0}}.admin-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);transition:background-color var(--transition),border-color var(--transition)}.admin-card-header{padding:1.5rem 1.5rem 0}.admin-card-content{padding:1.5rem}.admin-card-title{font-size:1rem;font-weight:500;color:var(--text)}.admin-btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;background-color:var(--primary);color:var(--primary-contrast);font-size:.875rem;font-weight:500;border-radius:var(--radius-sm);border:0;cursor:pointer;transition:background-color var(--transition-fast)}.admin-btn-primary:hover{background-color:var(--primary-hover)}.animate-pulse-once{animation:pulse-attention 1.2s ease-out}.admin-btn-outline{padding:.5rem 1rem;background-color:var(--surface);color:var(--text-2);font-size:.875rem;font-weight:500;border-radius:var(--radius-sm);border:1px solid var(--border-2)}.admin-btn-ghost:hover,.admin-btn-outline:hover{background-color:var(--bg-2);color:var(--text)}.admin-btn-ghost,.admin-btn-outline,.btn{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.admin-btn-ghost{padding:.5rem;background-color:transparent;color:var(--muted);border-radius:var(--radius-sm);border:0}.btn{gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;line-height:1.5;border-radius:var(--radius);border:1px solid transparent;text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--primary-contrast);border-color:var(--primary)}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn-outline,.btn-secondary{color:var(--text);border-color:var(--border-2)}.btn-secondary{background:var(--surface)}.btn-outline:hover,.btn-secondary:hover{background:var(--bg-2)}.btn-outline{background:0 0}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger:hover{background:#dc2626;border-color:#dc2626}.btn-ghost{background:0 0;color:var(--muted);border-color:transparent}.btn-ghost:hover{background:var(--bg-2);color:var(--text)}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.btn-lg{padding:.875rem 1.5rem;font-size:1rem}.btn-block{display:flex;width:100%}.admin-input,.admin-select,.admin-textarea{display:block;width:100%;padding:.5rem .75rem;font-size:.875rem;color:var(--text);background-color:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition)}[data-theme=dark] .admin-input,[data-theme=dark] .admin-select,[data-theme=dark] .admin-textarea{background-color:var(--bg);border-color:var(--border)}.admin-input:focus,.admin-select:focus,.admin-textarea:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus)}[data-theme=dark] .admin-input:focus,[data-theme=dark] .admin-select:focus,[data-theme=dark] .admin-textarea:focus{background-color:var(--bg)}.admin-input::placeholder,.admin-textarea::placeholder{color:var(--muted)}.admin-textarea{min-height:6rem;resize:vertical}.admin-table{width:100%;border-collapse:collapse}.admin-badge,.admin-table th{font-size:.75rem;font-weight:500}.admin-table td,.admin-table th{border-bottom:1px solid var(--border)}.admin-table th{padding:.75rem 1rem;text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.admin-table td{padding:1rem;font-size:.875rem;color:var(--text-2)}.admin-table tbody tr{transition:background-color var(--transition-fast)}.admin-table tbody tr:hover{background-color:var(--surface-2)}.admin-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:var(--radius-sm);transition:background-color var(--transition),color var(--transition)}.admin-badge-green{background-color:var(--badge-green-bg);color:var(--badge-green-text)}.admin-badge-blue{background-color:var(--badge-blue-bg);color:var(--badge-blue-text)}.admin-badge-red{background-color:var(--badge-red-bg);color:var(--badge-red-text)}.admin-badge-yellow{background-color:var(--badge-yellow-bg);color:var(--badge-yellow-text)}.admin-badge-purple{background-color:var(--badge-purple-bg);color:var(--badge-purple-text)}.admin-badge-teal{background-color:var(--badge-teal-bg);color:var(--badge-teal-text)}.admin-badge-orange{background-color:var(--badge-orange-bg);color:var(--badge-orange-text)}.admin-badge-gray{background-color:var(--badge-gray-bg);color:var(--badge-gray-text)}.admin-progress{width:100%;height:.5rem;background-color:var(--border);border-radius:var(--radius-full);overflow:hidden}.admin-progress-bar{height:100%;border-radius:var(--radius-full);transition:width .3s ease,background-color var(--transition)}.admin-progress-teal{background-color:var(--primary)}.admin-progress-green{background-color:var(--success)}.admin-progress-blue{background-color:var(--info)}.admin-progress-yellow{background-color:var(--warning)}.admin-progress-red{background-color:var(--danger)}.admin-dropdown{position:relative;display:inline-block}.admin-dropdown-content{display:none;position:absolute;right:0;top:100%;min-width:200px;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:100;padding:.5rem 0}.admin-dropdown.open .admin-dropdown-content{display:block}.admin-dropdown-item{display:flex;align-items:center;width:100%;padding:.5rem 1rem;font-size:.875rem;color:var(--text-2);text-decoration:none;transition:background-color var(--transition-fast)}.admin-dropdown-item:hover{background-color:var(--bg-2);color:var(--text)}.admin-dropdown-item svg{width:1rem;height:1rem;margin-right:.5rem}.admin-dropdown-divider{height:1px;background-color:var(--border);margin:.5rem 0}.flash-banner{width:100%;padding:.875rem 1.5rem;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#059669 0,#10b981 50%,#34d399 100%);color:#fff;box-shadow:0 4px 16px rgba(5,150,105,.35),inset 0 1px 0 rgba(255,255,255,.15);z-index:50;position:relative;animation:flashBannerIn .4s cubic-bezier(.16,1,.3,1)}.flash-banner-inner{display:flex;align-items:center;gap:.75rem;font-weight:600;font-size:.95rem;letter-spacing:.01em}.flash-banner-icon{width:1.35rem;height:1.35rem;flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.15))}.flash-banner.flash-hiding{animation:flashBannerOut .35s ease-in forwards}.flash-toast{position:fixed;top:1.25rem;right:1.25rem;padding:.875rem 1.25rem;border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:9999;display:flex;align-items:center;gap:.625rem;max-width:420px;min-width:280px;font-weight:500;font-size:.9rem;animation:flashToastIn .35s cubic-bezier(.16,1,.3,1)}.flash-toast-icon{width:1.25rem;height:1.25rem;flex-shrink:0}.flash-toast-text{flex:1}.flash-toast.flash-hiding{animation:flashToastOut .3s ease-in forwards}.flash-toast-erro{background-color:var(--danger-bg);color:var(--danger-text);border-left:4px solid var(--danger)}.flash-toast-info{background-color:var(--info-bg);color:var(--info-text);border-left:4px solid var(--info)}.flash-toast-aviso{background-color:var(--warning-bg);color:var(--warning-text);border-left:4px solid var(--warning)}.flash-close{background:0 0;border:0;color:inherit;font-size:1.3rem;line-height:1;cursor:pointer;opacity:.6;padding:.125rem .25rem;margin-left:.75rem;flex-shrink:0;transition:opacity .15s}.flash-close:hover{opacity:1}.admin-stat-icon{width:3rem;height:3rem;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;transition:background-color var(--transition)}.theme-toggle{position:relative;padding:.5rem;color:var(--muted);background:0 0;border:0;border-radius:var(--radius);cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast)}.theme-toggle:hover{color:var(--text);background-color:var(--bg-2)}.theme-toggle svg{width:1.25rem;height:1.25rem;display:block}.theme-toggle .icon-sun{display:none}.theme-toggle .icon-moon,[data-theme=dark] .theme-toggle .icon-sun{display:block}[data-theme=dark] .theme-toggle .icon-moon{display:none}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;font-size:.75rem;font-weight:500;border-radius:var(--radius-full)}.badge-primary{background-color:var(--info-bg);color:var(--info-text)}.badge-secondary{background-color:var(--badge-gray-bg);color:var(--badge-gray-text)}.badge-success{background-color:var(--success-bg);color:var(--success-text)}.badge-danger{background-color:var(--danger-bg);color:var(--danger-text)}.badge-warning{background-color:var(--warning-bg);color:var(--warning-text)}.badge-info{background-color:var(--info-bg);color:var(--info-text)}.t-text{color:var(--text)}.t-text-2{color:var(--text-2)}.t-muted{color:var(--muted)}.t-text-inverse{color:var(--text-inverse)}.t-bg{background-color:var(--bg)}.t-bg-2,.t-hover-bg:hover{background-color:var(--bg-2)}.t-surface{background-color:var(--surface)}.t-surface-2{background-color:var(--surface-2)}.t-border{border-color:var(--border)}.t-border-2{border-color:var(--border-2)}.t-hover-text:hover{color:var(--text)}.aluno-curso-aula-row:hover,.aluno-curso-modulo-summary:hover{background-color:var(--bg-2)}.aluno-curso-aula-row{border-color:var(--border)}.aluno-curso-aula-titulo:hover{color:var(--primary)}.admin-header-title{font-size:1.125rem;font-weight:600;color:var(--text)}.admin-header-subtitle{font-size:.875rem;color:var(--muted)}.admin-header-btn{position:relative;padding:.5rem;color:var(--muted);background:0 0;border:0;border-radius:var(--radius);cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast)}.admin-header-btn:hover{color:var(--text);background-color:var(--bg-2)}.carrinho-badge{position:relative}.carrinho-badge .contador{position:absolute;top:-6px;right:-6px;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;min-width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0 4px;box-shadow:0 0 0 2px var(--surface);z-index:10}.carrinho-badge .contador:empty{display:none}.admin-avatar{width:2rem;height:2rem;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;background-color:var(--primary-light);color:var(--primary);font-size:.875rem;font-weight:500}.admin-avatar-lg{width:2.5rem;height:2.5rem}.admin-user-name{font-size:.875rem;font-weight:500;color:var(--text)}.admin-user-role{font-size:.75rem;color:var(--muted)}.admin-user-dropdown{position:absolute;right:0;top:100%;margin-top:.5rem;min-width:14rem;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:.25rem 0;z-index:50}.admin-user-dropdown-item{display:flex;align-items:center;padding:.5rem 1rem;font-size:.875rem;color:var(--text-2);text-decoration:none;transition:background-color var(--transition-fast)}.admin-user-dropdown-item:hover{background-color:var(--bg-2);color:var(--text)}.admin-user-dropdown-item svg{width:1rem;height:1rem;margin-right:.75rem;color:var(--muted)}.admin-user-dropdown-item--danger{color:var(--danger)}.admin-user-dropdown-item--danger:hover{background-color:var(--danger-bg);color:var(--danger-text)}.admin-user-dropdown-divider{height:1px;background-color:var(--border);margin:.25rem 0}.studio-breadcrumb{height:calc(var(--menu-groups-width, 112px) - 1px)}.studio-steps{display:flex;align-items:center;gap:0;padding:.5rem 0}.studio-step,.studio-step-num{align-items:center;color:var(--muted);transition:all .15s ease}.studio-step{display:flex;gap:.5rem;padding:.5rem 1rem;border-radius:var(--radius);text-decoration:none;white-space:nowrap}.studio-step:hover{text-decoration:none;color:var(--text);background:var(--bg-2)}.studio-step-num{display:inline-flex;justify-content:center;width:24px;height:24px;border-radius:50%;border:2px solid var(--border);font-size:.75rem;font-weight:700;flex-shrink:0}.studio-step-label{font-size:.875rem;font-weight:500}.meu-curso-titulo a:hover,.studio-step.active{color:var(--primary)}.studio-step.active .studio-step-num{background:var(--primary);border-color:var(--primary);color:var(--primary-contrast)}.studio-step.active .studio-step-label{font-weight:600}.studio-step.active:hover{color:var(--primary);background:var(--primary-light)}.studio-step-divider{width:24px;height:2px;background:var(--border);flex-shrink:0}@media (max-width:640px){.studio-step{padding:.375rem .5rem;gap:.375rem}.studio-step-label{font-size:.75rem}.studio-step-num{width:20px;height:20px;font-size:.625rem}.studio-step-divider{width:12px}}.meus-cursos-filtros{display:flex;flex-wrap:wrap;gap:.5rem}.meus-cursos-filtro{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border-radius:9999px;background:var(--bg-2);color:var(--muted);font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s ease;border:1px solid transparent}.meus-cursos-filtro:hover{background:var(--surface);border-color:var(--border);color:var(--text)}.meus-cursos-filtro.ativo{background:var(--primary);color:var(--primary-contrast);border-color:var(--primary)}.meus-cursos-filtro svg{width:1rem;height:1rem}.meus-cursos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}@media (max-width:1024px){.meus-cursos-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.meus-cursos-grid{grid-template-columns:1fr}}.meu-curso-card{background:var(--surface);border-radius:16px;overflow:hidden;border:1px solid var(--border);display:flex;flex-direction:column;transition:all .3s ease}.meu-curso-card:hover{transform:translateY(-6px);box-shadow:0 12px 40px rgba(0,0,0,.12);border-color:var(--primary)}.meu-curso-card-imagem-link{display:block;text-decoration:none}.meu-curso-card-imagem{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--bg-2)}.meu-curso-card-imagem img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.meu-curso-card:hover .meu-curso-card-imagem img{transform:scale(1.08)}.meu-curso-card-imagem.imagem-legada{background-size:cover;background-position:center;background-repeat:no-repeat}.meu-curso-card-imagem.imagem-legada::before{content:"";position:absolute;inset:0;background:inherit;filter:blur(18px) saturate(1.4) brightness(.55);transform:scale(1.15);z-index:0}.meu-curso-card-imagem.imagem-legada img{object-fit:contain;position:relative;z-index:1;padding:.5rem;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.meu-curso-badges{position:absolute;top:.75rem;left:.75rem;right:.75rem;display:flex;flex-wrap:wrap;gap:.5rem;z-index:2}.meu-curso-badges .badge{font-size:.7rem;padding:.25rem .625rem;border-radius:9999px;font-weight:600;letter-spacing:.3px}.meu-curso-card-conteudo{padding:1.25rem;flex:1;display:flex;flex-direction:column}.meu-curso-categoria{font-size:.7rem;color:var(--primary);font-weight:600;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.meu-curso-titulo{font-size:1rem;font-weight:700;margin:0 0 .5rem;line-height:1.4;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.meu-curso-titulo a{color:inherit;text-decoration:none}.meu-curso-instrutor,.meu-curso-meta .meta-item{display:flex;align-items:center;font-size:.8rem;color:var(--muted)}.meu-curso-instrutor{gap:.35rem;margin:0 0 .75rem}.meu-curso-instrutor svg,.meu-curso-meta .meta-item svg{opacity:.7;width:.875rem;height:.875rem;flex-shrink:0}.meu-curso-meta{display:flex;gap:1rem;margin-bottom:.75rem}.meu-curso-meta .meta-item{gap:.3rem}.meu-curso-meta .meta-item svg{opacity:.6}.meu-curso-progresso{margin-top:auto;padding-top:.75rem}.meu-curso-progresso .progresso-info{display:flex;justify-content:space-between;font-size:.8rem;color:var(--muted);margin-bottom:.375rem}.meu-curso-progresso .progresso-barra{width:100%;height:6px;background:var(--bg-2);border-radius:9999px;overflow:hidden}.meu-curso-progresso .progresso-preenchido{height:100%;background:var(--primary);border-radius:9999px;transition:width .3s ease}.meu-curso-progresso .progresso-preenchido.concluido{background:var(--success)}.meu-curso-card-footer{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-top:1px solid var(--border)}.meu-curso-card-footer .form-inline{margin:0;padding:0}.meu-curso-card-footer .btn-primary{flex:1;margin-right:.5rem;text-align:center}.meu-curso-card-footer .btn-ghost,.status-dot{flex-shrink:0}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.status-dot-green{background-color:#22c55e}.status-dot-red{background-color:#ef4444}.status-dot-yellow{background-color:#eab308}.status-dot-gray{background-color:#9ca3af}.status-dot-blue{background-color:#3b82f6}
.btn-arquivar-mobile{display:none}
.modal-arquivar-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem}
.modal-arquivar{background:var(--surface);border-radius:16px;padding:2rem 1.5rem 1.5rem;width:100%;max-width:400px;text-align:center;box-shadow:0 8px 30px rgba(0,0,0,.15)}
.modal-arquivar-icone{width:3.5rem;height:3.5rem;border-radius:50%;background:var(--bg-2);display:flex;align-items:center;justify-content:center;margin:0 auto .75rem;color:var(--muted)}
.modal-arquivar-icone svg{width:1.5rem;height:1.5rem}
.modal-arquivar-titulo{font-size:1.1rem;font-weight:600;color:var(--text);margin:0 0 .25rem}
.modal-arquivar-nome{font-size:.875rem;color:var(--muted);margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.modal-arquivar-desc{font-size:.8rem;color:var(--muted);margin:0 0 1.25rem;line-height:1.4}
.modal-arquivar-acoes{display:flex;gap:.75rem;justify-content:center}
.modal-arquivar-acoes .btn{flex:1;justify-content:center}
.modal-arquivar-acoes form{flex:1;margin:0}
.modal-arquivar-acoes form .btn{width:100%}