:root{--bg-color:#f4f4f9;--card-bg:#fff;--primary-blue:#0056b3;--primary-yellow:#ffc107;--text-dark:#333;--text-light:#777}body{background-color:var(--bg-color);justify-content:center;align-items:center;height:100vh;margin:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;display:flex}.login-card{background-color:var(--card-bg);border-radius:8px;width:350px;overflow:hidden;box-shadow:0 8px 16px #0000001a}.brand-bar{background:linear-gradient(90deg, var(--primary-blue) 70%, var(--primary-yellow) 70%);height:5px}.card-body{padding:30px}.icon-container{text-align:center;color:var(--primary-blue);margin-bottom:15px;font-size:2.5rem}.login-card h2{text-align:center;color:var(--primary-blue);margin-top:0;margin-bottom:25px;font-weight:600}.input-group{margin-bottom:18px}.input-group label{color:var(--text-dark);margin-bottom:6px;font-weight:500;display:block}.input-group input{box-sizing:border-box;border:2px solid #e1e1e1;border-radius:4px;width:100%;padding:12px;transition:border-color .3s}.input-group input:focus{border-color:var(--primary-blue);outline:none}.login-card button{background-color:var(--primary-yellow);width:100%;color:var(--text-dark);cursor:pointer;text-transform:uppercase;border:none;border-radius:4px;padding:12px;font-size:16px;font-weight:700;transition:background-color .3s}.login-card button:hover{background-color:#e0a800}#message{text-align:center;min-height:1.2em;margin-top:15px;font-weight:700}.footer-links{text-align:center;margin-top:20px;font-size:.9rem}.footer-links a{color:var(--text-light);text-decoration:none}.footer-links a:hover{color:var(--primary-blue);text-decoration:underline}.logo-container{text-align:center;margin-bottom:15px}.logo-img{object-fit:contain;max-width:80px;height:auto}:root{--primary-blue:#0056b3;--primary-yellow:#fed353;--hover-yellow:#ffc10740;--dark-blue:#003d80;--bg-light:#f8f9fa;--sidebar-bg:#fff;--text-dark:#333;--text-white:#fff;--sidebar-width:200px}body{background-color:var(--bg-light);margin:0;font-family:Segoe UI,sans-serif;display:flex}.sidebar{width:var(--sidebar-width);background-color:var(--sidebar-bg);height:100dvh;color:var(--text-dark);border-right:1px solid #e1e1e1;flex-direction:column;display:flex;position:fixed;top:0;bottom:0}.sidebar-header{text-align:center;background-color:#eaf5ff;border-bottom:1px solid #f0f0f0;padding:15px}.logo-small{max-width:30px}.menu{flex-grow:1;padding:20px 0;overflow:hidden auto}.menu-item{width:97%;color:var(--text-dark);text-align:left;cursor:pointer;box-sizing:border-box;background:0 0;border:none;border-radius:0 7px 7px 0;align-items:center;gap:15px;margin-top:5px;padding:15px 25px;font-size:16px;text-decoration:none;transition:all .3s;display:flex}.menu-item i{width:20px;color:var(--primary-blue)}.menu-item:hover,.menu-item.active{background-color:var(--hover-yellow);color:var(--primary-blue);font-weight:500}.logout-btn{color:#c0392b;cursor:pointer;background-color:#0000;border:none;border-top:1px solid #f0f0f0;padding:20px;font-weight:700;transition:all .3s}.logout-btn:hover{background-color:#ff19005d}.main-layout{margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width))}.top-bar{background:#fff;justify-content:space-between;align-items:center;padding:15px 40px;display:flex;box-shadow:0 2px 5px #0000000d}.top-bar h1{color:var(--text-dark);font-size:20px}.user-info{align-items:center;gap:15px;display:flex}.avatar-circle{background-color:var(--primary-yellow);color:#333;border-radius:50%;justify-content:center;align-items:center;width:35px;height:35px;font-weight:700;display:flex}#content-area{padding:40px}.admin-only{display:none}.welcome-banner{background-color:var(--primary-blue);color:#fff;border-radius:12px;margin-bottom:30px;padding:30px;box-shadow:0 4px 10px #0056b333}.welcome-banner h2{color:#fff;text-align:left;margin:0;font-size:28px}.welcome-banner p{color:#fff;text-align:left;opacity:.9;margin:10px 0 0}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px;display:grid}.stat-card{background:#fff;border:1px solid #f0f0f0;border-radius:10px;align-items:center;gap:20px;padding:20px;display:flex;box-shadow:0 2px 5px #0000000d}.stat-icon{width:60px;height:60px;color:var(--primary-blue);background-color:#f0f7ff;border-radius:50%;justify-content:center;align-items:center;font-size:24px;display:flex}.stat-icon.yellow{color:#d4a017;background-color:#fff9e6}.stat-icon.blue{color:var(--primary-blue);background-color:#eaf5ff}.stat-data h3{color:var(--text-dark);margin:0;font-size:24px}.stat-data p{color:var(--text-light);margin:0;font-size:14px}.info-card{border-left:5px solid var(--primary-yellow);background:#fff;border-radius:10px;padding:25px;box-shadow:0 2px 5px #0000000d}.info-card h3{color:var(--text-dark);align-items:center;gap:10px;margin-top:0;display:flex}.info-card ul{color:var(--text-light);margin-bottom:0;padding-left:20px}.info-card li{margin-bottom:10px}.profile-header{background:#fff;border-radius:10px;align-items:center;gap:20px;margin-bottom:30px;padding:20px 30px;display:flex;box-shadow:0 2px 5px #0000000d}.avatar-large{background-color:var(--primary-yellow);width:80px;height:80px;color:var(--text-dark);border-radius:50%;justify-content:center;align-items:center;font-size:32px;font-weight:700;display:flex}.profile-title h2{color:var(--primary-blue);margin:0 0 5px}.badge-role{color:var(--primary-blue);background-color:#eaf5ff;border-radius:15px;padding:5px 12px;font-size:14px;font-weight:700;display:inline-block}.profile-content{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;display:grid}.profile-card{border-top:4px solid var(--primary-blue);background:#fff;border-radius:10px;padding:25px;box-shadow:0 2px 5px #0000000d}.profile-card h3{color:var(--text-dark);border-bottom:1px solid #f0f0f0;align-items:center;gap:10px;margin-top:0;margin-bottom:20px;padding-bottom:15px;display:flex}.profile-card .input-group{margin-bottom:15px}.profile-card label{color:var(--text-dark);margin-bottom:5px;font-size:14px;font-weight:500;display:block}.profile-card input{box-sizing:border-box;border:1px solid #ccc;border-radius:5px;width:100%;padding:10px}.profile-card input:focus{border-color:var(--primary-blue);outline:none}.profile-card input:disabled{color:#6c757d;cursor:not-allowed;background-color:#f8f9fa}.btn-primary{background-color:var(--primary-blue);color:#fff;cursor:pointer;border:none;border-radius:5px;width:100%;padding:10px 20px;font-weight:700;transition:all .3s}.btn-primary:hover{background-color:var(--dark-blue)}.btn-warning{background-color:var(--primary-yellow);color:var(--text-dark);cursor:pointer;border:none;border-radius:5px;width:100%;padding:10px 20px;font-weight:700;transition:all .3s}.btn-warning:hover{background-color:#e0a800}.page-header{margin-bottom:25px}.page-header h2{color:var(--primary-blue);margin-top:0}.page-header p{color:var(--text-light)}.filters-bar{flex-wrap:wrap;align-items:center;gap:15px;margin-bottom:25px;display:flex}.input-select{min-width:200px;color:var(--text-dark);border:1px solid #ccc;border-radius:5px;padding:10px}.mass-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:25px;margin-bottom:90px;display:grid}.mass-card{background:#fff;border:1px solid #e1e1e1;border-radius:8px;flex-direction:column;transition:transform .2s,border-color .2s;display:flex;overflow:hidden;box-shadow:0 2px 4px #0000000d}.mass-card:hover{transform:translateY(-3px);box-shadow:0 5px 15px #0000001a}.mass-header{background-color:#f8f9fa;border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:15px;display:flex}.mass-header h4{color:var(--primary-blue);margin:0}.badge-week{background-color:var(--primary-yellow);color:#333;border-radius:12px;padding:3px 8px;font-size:12px;font-weight:700}.mass-body{flex-grow:1;padding:15px}.mass-body p{color:var(--text-dark);align-items:center;gap:8px;margin:5px 0;display:flex}.mass-footer{background-color:#fafafa;border-top:1px solid #eee;justify-content:space-between;align-items:center;padding:15px;display:flex}.vacancy-info{flex-direction:column;display:flex}.vacancy-count{font-size:14px;font-weight:700}.vacancy-count.good{color:#27ae60}.vacancy-count.alert{color:#e67e22}.vacancy-count.closed{color:#c0392b}.vacancy-info small{color:#999;font-size:12px}.btn-select-wrapper input[type=checkbox]{display:none}.btn-select{border:2px solid var(--primary-blue);color:var(--primary-blue);cursor:pointer;border-radius:5px;padding:8px 15px;font-weight:700;transition:all .3s;display:inline-block}.btn-select-wrapper input[type=checkbox]:checked+.btn-select{background-color:var(--primary-blue);color:#fff}.btn-select.disabled{color:#999;cursor:not-allowed;background-color:#f4f4f4;border-color:#ccc}.confirmation-bar{bottom:0;left:var(--sidebar-width);z-index:100;background-color:#fff;justify-content:space-between;align-items:center;padding:15px 40px;display:flex;position:fixed;right:0;box-shadow:0 -2px 10px #0000001a}.confirmation-text{color:var(--text-dark);font-size:18px}#selected-count{color:var(--primary-blue);font-size:22px;font-weight:700}.confirmation-container{border-top:4px solid var(--primary-yellow);background:#fff;border-radius:8px;padding:30px;box-shadow:0 2px 10px #0000000d}.confirmation-list{margin-bottom:30px}.confirmation-item{border-bottom:1px solid #eee;align-items:center;gap:20px;padding:15px 0;display:flex}.confirmation-item:last-child{border-bottom:none}.item-icon{width:50px;height:50px;color:var(--primary-blue);background-color:#f0f7ff;border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:flex}.item-details{flex-grow:1}.item-details h4{color:var(--primary-blue);align-items:center;gap:10px;margin:0 0 5px;display:flex}.item-details p{color:var(--text-dark);margin:0;font-size:15px}.btn-remove-item{color:#e74c3c;cursor:pointer;background:0 0;border:none;border-radius:50%;padding:10px;font-size:18px;transition:all .3s}.btn-remove-item:hover{background-color:#fceae8}.confirmation-summary{border-top:2px dashed #eee;justify-content:space-between;align-items:center;padding-top:20px;display:flex}.confirmation-summary h3{color:var(--text-dark);margin:0}.action-buttons{gap:15px;display:flex}.btn-secondary{color:var(--text-dark);cursor:pointer;background-color:#f8f9fa;border:1px solid #ccc;border-radius:5px;padding:10px 20px;font-weight:700;transition:all .3s}.btn-secondary:hover{background-color:#e2e6ea}.btn-success{color:#fff;cursor:pointer;background-color:#27ae60;border:none;border-radius:5px;padding:10px 20px;font-weight:700;transition:all .3s}.btn-success:hover{background-color:#219150}.agenda-container{background:#fff;border-top:4px solid #27ae60;border-radius:8px;padding:30px;box-shadow:0 2px 10px #0000000d}.agenda-month{color:var(--text-dark);border-bottom:2px solid #f0f0f0;margin-top:0;margin-bottom:20px;padding-bottom:10px;font-size:18px}.item-icon.success-icon{color:#27ae60;background-color:#eafaf1}.confirmed-status:hover{background-color:#fcfcfc}.status-label{margin-top:5px;font-size:13px;font-weight:700;display:block}.text-success{color:#27ae60}.text-warning{color:#e67e22}.pending-status{background-color:#fffaf0;border-left:4px solid #e67e22;padding-left:15px}.item-icon.warning-icon{color:#e67e22;background-color:#fdf2e9}.modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background-color:#fff;border-radius:8px;width:400px;overflow:hidden;box-shadow:0 5px 15px #0000004d}.modal-header{background-color:var(--primary-blue);color:#fff;justify-content:space-between;align-items:center;padding:15px 20px;display:flex}.modal-header h3{margin:0;font-size:18px}.close-modal{color:#fff;cursor:pointer;background:0 0;border:none;font-size:20px}.modal-body{color:var(--text-dark);padding:20px;line-height:1.5}.modal-footer{background-color:#f8f9fa;border-top:1px solid #eee;justify-content:flex-end;gap:10px;padding:15px 20px;display:flex}button:disabled{color:#666!important;cursor:not-allowed!important;box-shadow:none!important;background-color:#ccc!important;transform:none!important}input:disabled,select:disabled{color:#888!important;cursor:not-allowed!important;background-color:#f5f5f5!important;border-color:#ddd!important}.mode-selector-container{border-bottom:2px solid #eee;gap:10px;margin-bottom:25px;padding-bottom:10px;display:flex}.btn-mode{cursor:pointer;color:#666;text-transform:none;background:0 0;border:none;border-radius:5px;align-items:center;gap:8px;width:auto;padding:10px 20px;font-size:14px;font-weight:600;transition:all .3s;display:inline-flex}.btn-mode:hover{background-color:#f0f0f0}.btn-mode.active{background-color:var(--primary-blue);color:#fff}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=768px){.form-row{grid-template-columns:1fr}}.input-group label{color:var(--text-dark);margin-bottom:5px;font-size:14px;font-weight:500;display:block}.input-group input,.input-group select{box-sizing:border-box;border:1px solid #ccc;border-radius:5px;width:100%;padding:10px;font-family:inherit}.input-group input:focus,.input-group select:focus{border-color:var(--primary-blue);outline:none}.input-search{border:1px solid #ccc;border-radius:5px;width:100%;max-width:400px;padding:10px 15px;font-family:inherit}.admin-actions{justify-content:flex-end;gap:10px;width:100%;display:flex}.btn-edit{color:var(--text-dark);cursor:pointer;background-color:#f8f9fa;border:1px solid #ccc;border-radius:5px;padding:8px 15px;font-size:13px;font-weight:700;transition:all .3s}.btn-edit:hover{background-color:#e2e6ea}.btn-delete{color:#c0392b;cursor:pointer;background-color:#fceae8;border:1px solid #fad2ce;border-radius:5px;padding:8px 15px;font-size:13px;font-weight:700;transition:all .3s}.btn-delete:hover{background-color:#f5b7b1}@media print{.sidebar,.top-bar,.no-print,.mode-selector-container,.admin-actions{display:none!important}.main-layout{width:100%!important;margin-left:0!important}#content-area{padding:0!important}.print-header{display:block!important}.report-mass-block{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.rel-titulo-principal{text-transform:uppercase;border-bottom:2px solid #000;margin-top:30pt;margin-bottom:10pt;font-size:20pt}.rel-subtitulo{color:#333;margin-top:15pt;margin-bottom:5pt;font-size:14pt;font-style:italic}@media print{.rel-titulo-principal:first-child{margin-top:0}table{page-break-inside:auto}tr{page-break-inside:avoid;page-break-after:auto}}.mobile-menu-btn{color:var(--primary-blue);cursor:pointer;background:0 0;border:none;font-size:24px;display:none}.sidebar-overlay{z-index:999;background:#00000080;display:none;position:fixed;inset:0}@media (width<=768px){.sidebar{z-index:1000;transition:transform .3s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-layout{width:100%;margin-left:0}.mobile-menu-btn,.sidebar-overlay.active{display:block}.top-bar{padding:15px 20px}.top-bar h1{font-size:18px}#content-area{padding:20px}.confirmation-bar{text-align:center;flex-direction:column;gap:12px;padding:15px 20px;left:0}.confirmation-bar button{width:100%;padding:15px}.mass-grid{margin-bottom:120px}}html,body{background-color:var(--bg-light,#f8f9fa);width:100%;min-height:100vh;margin:0;padding:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;align-items:initial!important;justify-content:initial!important;height:auto!important;display:block!important}#root{width:100%;min-height:100vh;margin:0;padding:0;display:block}.dashboard-container{width:100%;min-height:100vh;display:flex;position:relative}.login-page-container{background-color:var(--bg-color,#f4f4f9);justify-content:center;align-items:center;width:100%;min-height:100vh;display:flex}
