/* Estilos específicos para a ferramenta Semana do Ano */
:root {
--semana-ano-bg:#fff;
--semana-ano-text:#495057;
--semana-ano-input-bg:linear-gradient(135deg,#f8f9fa,#e9ecef);
--semana-ano-input-border:#e9ecef;
--semana-ano-info-bg:linear-gradient(135deg,#fff3cd,#fff8e1);
--semana-ano-info-border:#ffc107;
--semana-ano-info-text:#495057;
--semana-ano-info-strong:#00a651;
--semana-ano-barra-bg:linear-gradient(135deg,#e9ecef,#dee2e6);
--semana-ano-barra-border:#f8f9fa;
--semana-ano-progresso:linear-gradient(135deg,#00a651,#28a745,#20c997);
--semana-ano-progresso-shadow:rgba(0,166,81,0.4);
--semana-ano-shadow:0 8px 32px rgba(0,0,0,0.08);
}
[data-theme="dark"] {
--semana-ano-bg:#2d2d2d;
--semana-ano-text:#adb5bd;
--semana-ano-input-bg:linear-gradient(135deg,#495057,#343a40);
--semana-ano-input-border:#495057;
--semana-ano-info-bg:linear-gradient(135deg,#3d3300,#2d2600);
--semana-ano-info-border:#b89c1f;
--semana-ano-info-text:#e5e7eb;
--semana-ano-info-strong:#34d399;
--semana-ano-barra-bg:linear-gradient(135deg,#495057,#343a40);
--semana-ano-barra-border:#495057;
--semana-ano-progresso:linear-gradient(135deg,#10b981,#34d399,#6ee7b7);
--semana-ano-progresso-shadow:rgba(16,185,129,0.4);
--semana-ano-shadow:0 8px 32px rgba(0,0,0,0.3);
}
.semana-ano-container{display:flex;flex-direction:column;gap:1.5rem;max-width:520px;margin:0 auto;padding:2.5rem;background:var(--semana-ano-bg);border-radius:16px;box-shadow:var(--semana-ano-shadow);position:relative;overflow:hidden;}
.semana-ano-input{width:100%;padding:1rem 1.25rem;font-size:1.1rem;font-weight:600;color:var(--semana-ano-text);background:var(--semana-ano-input-bg);border:2px solid var(--semana-ano-input-border);border-radius:12px;transition:all 0.3s ease;text-align:center;box-shadow:0 3px 12px rgba(0,0,0,0.06);appearance:none;-webkit-appearance:none;-moz-appearance:textfield;}
.semana-ano-input:focus{outline:none;border-color:#00a651;background:var(--semana-ano-input-bg);box-shadow:0 0 0 0.2rem rgba(0,166,81,0.25);transform:translateY(-2px);}
.semana-ano-input::-webkit-calendar-picker-indicator{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2300a651' stroke-width='2'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E");background-size:20px 20px;cursor:pointer;padding:5px;}
.semana-ano-info{font-size:1.25rem;font-weight:600;color:var(--semana-ano-info-text);text-align:center;background:var(--semana-ano-info-bg);padding:1.5rem;border-radius:12px;border-left:4px solid var(--semana-ano-info-border);box-shadow:0 3px 12px rgba(255,193,7,0.15);line-height:1.6;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.5rem;}
.semana-ano-info::before{content:'';display:inline-block;width:24px;height:24px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ffc107' stroke-width='2'%3E%3Cpath d='M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z'/%3E%3Cline x1='4' y1='22' x2='4' y2='15'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain;margin-bottom:0.5rem;}
[data-theme="dark"] .semana-ano-info::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23fbbf24' stroke-width='2'%3E%3Cpath d='M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z'/%3E%3Cline x1='4' y1='22' x2='4' y2='15'/%3E%3C/svg%3E");}
.semana-ano-info strong{color:var(--semana-ano-info-strong);font-weight:700;}
.semana-ano-barra{position:relative;width:100%;height:28px;background:var(--semana-ano-barra-bg);border-radius:14px;overflow:hidden;box-shadow:inset 0 3px 6px rgba(0,0,0,0.1);border:2px solid var(--semana-ano-barra-border);}
.semana-ano-barra::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,rgba(255,255,255,0.1) 0%,rgba(255,255,255,0.3) 50%,rgba(255,255,255,0.1) 100%);animation:shimmer 2.5s infinite linear;z-index:1;}
@keyframes shimmer{0%{transform:translateX(-100%);}100%{transform:translateX(100%);}}
.progresso{height:100%;width:0;background:var(--semana-ano-progresso);transition:width 2.5s cubic-bezier(0.4,0,0.2,1);position:relative;border-radius:14px;box-shadow:0 0 15px var(--semana-ano-progresso-shadow);z-index:2;}
.progresso::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(255,255,255,0.3) 0%,rgba(255,255,255,0) 100%);border-radius:14px;}
.semana-ano-copiar{align-self:center;min-width:180px;display:flex;justify-content:center;align-items:center;}
.semana-ano-copiar svg{flex-shrink:0;}
.semana-ano-calcular{align-self:center;min-width:180px;}
.semana-ano-calcular svg{flex-shrink:0;margin-right:0.5rem;}
@media (max-width:768px){
.semana-ano-container{padding:2rem;margin:1rem;gap:1.75rem;max-width:480px;}
.semana-ano-input{font-size:1rem;padding:0.9rem 1rem;}
.semana-ano-info{font-size:1.15rem;padding:1.25rem;}
.semana-ano-barra{height:24px;}
.semana-ano-copiar{min-width:160px;}
.semana-ano-calcular{min-width:160px;}
}
@media (max-width:576px){
.semana-ano-container{padding:1.5rem;margin:0.75rem;gap:1.5rem;max-width:440px;}
.semana-ano-input{font-size:0.95rem;padding:0.8rem 0.9rem;}
.semana-ano-info{font-size:1.1rem;padding:1rem;gap:0.25rem;}
.semana-ano-info::before{width:20px;height:20px;margin-bottom:0.25rem;}
.semana-ano-barra{height:20px;}
.semana-ano-copiar{min-width:140px;}
.semana-ano-calcular{min-width:140px;}
}
/* Animação de pulse para destacar atualizações */
@keyframes pulseInfo{0%{transform:scale(1);box-shadow:0 3px 12px rgba(255,193,7,0.15);}50%{transform:scale(1.02);box-shadow:0 5px 20px rgba(255,193,7,0.3);}100%{transform:scale(1);box-shadow:0 3px 12px rgba(255,193,7,0.15);}}
.semana-ano-info.updated{animation:pulseInfo 0.6s ease-out;}